function submitFormRech()
{

	var SEP_ITEM = "[xx]";
	var SEP_ITEMS= "[xy]";
	
	var Formulaire = document.forms["f_search"];
	if(Formulaire.elements["ValueSearch1st"] != null && Formulaire.elements["ValueSearch1st"].value.length > 0){
    	//--- Builds SR-Sources coplet attribute (list of selected sources) ---
    	// Resets list of selected Sources
    	var ResourcesList = Formulaire.elements["SearchCatalog"].value;
    	var SelectedSC = Formulaire.elements["SearchCatalog"].value;
    	
    	// Assigns the 4th Parameter ('SR-Sources', corresponding to the list of selected sources) of SearchResult-1 coplet
    	Formulaire.elements["SR-Sources"].value = ResourcesList;
    	
    	//--- Builds SR-Request coplet attribute (Request) ---
    	// Resets list of Query items
    	var QuerySearch = "";
    	var QueryFilter = "";
    	
    	// Gets the keyed-in values
    	var firstquery = Formulaire.elements["ValueSearch1st"].value;
    	var criteriaSearch = Formulaire.elements["CriteriaSearch1st"].value;
    	
    	if (QuerySearch.length > 0)
    	{
    		QuerySearch += "ET" + SEP_ITEM;
    	}
    	
    	QuerySearch += criteriaSearch + SEP_ITEM + firstquery + SEP_ITEM;
    	QueryFilter += "ValueSearch1st=" + firstquery + ",CriteriaSearch1st=" + criteriaSearch + ",";
    	
    	// Assigns the 3rd Parameter ('SR-Request', corresponding to the query) of SearchResult-1 coplet
    	Formulaire.elements["SR-Request"].value = QuerySearch;
    	// bug fix about character encoding
    	Formulaire.elements["DetailRequest"].value = QuerySearch;
    	Formulaire.elements["SR-SelectedSources"].value = ResourcesList;
    	Formulaire.elements["SR-Mode"].value = "SimpleSearch";
    	
    	Formulaire.elements["SearchInitSC"].value = "false";
    	Formulaire.elements["SearchFilterSC"].value = QueryFilter;
    	Formulaire.elements["SR-Filter"].value = QueryFilter;
    	Formulaire.elements["SearchSelectedSC"].value = SelectedSC;
    	
    	StartMessage();
    }
}

/*
 * build search criteria when selecting sources
 */
function checkSelectedSources()
{
	var searchForm = document.forms["f_search"];
	var sources = searchForm.elements["SearchCatalog"].value.split("[xy]");
	var allCriteria = new Array();
	for (var i = 0; i < sources.length; i++)
	{
		var sourceType = sources[i].split("[xx]")[0];
		
		if (sourceType != '')
		{
			for (var j = 0; j < criteria[sourceType].length; j++)
			{
				allCriteria.push(criteria[sourceType][j]);
			}
		}
	}
	if (sources.length > 2)
	{
		buildCriteriaSearch(commonItems(allCriteria, sources.length));
	}
	else
	{
		buildCriteriaSearch(allCriteria);
	}
}

/*
 * build a set of common items from the current list
 * @param items lists of items
 * @param numberOfSources number of sources used for building items
 * @return list of common items
 */
function commonItems(items, numberOfSources)
{
	var results = new Array();
	var availablesItems = items.join();
	var searchForm = document.forms["f_search"];
	
	for (var i = 0; i < items.length; i++)
	{
		var duplicateItems = availablesItems.split(items[i]);
		if (duplicateItems.length == numberOfSources)
		{
			results.push(items[i]);
			availablesItems = duplicateItems.join();
		}
	}
	
	return results;
}

/*
 * build dynamic criteria
 * @param criteriaSet list of criteria
 */
function buildCriteriaSearch(criteriaSet)
{
	var searchForm = document.forms["f_search"];
	
	var criteriaSearch1st = searchForm.elements["CriteriaSearch1st"];
	var selectedValue1 = "";
	if (criteriaSearch1st.options.length > 0 && criteriaSearch1st.selectedIndex!=-1)
	{
		selectedValue1 = criteriaSearch1st.options[criteriaSearch1st.selectedIndex].text;
	}
	criteriaSearch1st.options.length = 0;
	
	for (var i = 0; i < criteriaSet.length; i++)
	{
		var option = new Option(attributes[criteriaSet[i]], criteriaSet[i]);
		criteriaSearch1st.options[i] = option;
		
		if (selectedValue1 == criteriaSet[i])
		{
			criteriaSearch1st.options[i].selected = true;
		}
	}
}

function StartMessage() 
{
	 var msgDiv = document.getElementById("Msg");
	 if (msgDiv.style.display = 'none') 
     {
        msgDiv.style.display = '';
     }
     var buttonStopMsg = document.getElementById("StopMsg");
     buttonStopMsg.focus();
     Defilement();
}

var actifDfl;
var dfl="..... ";
function Defilement()
{
	 var dflSpan = document.getElementById("Dfl");
	 dfl = dfl.substring(1,dfl.length) + dfl.substring(0,1);	 
	 dflSpan.firstChild.nodeValue = dfl;
	 actifDfl = window.setTimeout("Defilement()", 200);
}

function StopMessage()
{
	window.clearTimeout(actifDfl);
	var msgDiv = document.getElementById("Msg");
	msgDiv.style.display = 'none';
	
	var NS = (navigator.appName == "Netscape");
	if(NS)
	{
		window.stop();
	}
	else
	{
		document.execCommand('Stop');
	}
}
