// --------------------------- AJAX --------------------------------------
	var xmlHttp; 
	var is_ie = (navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0; 
	var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!=-1) ? 1 : 0; 
	var is_opera = ((navigator.userAgent.indexOf("Opera 6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)) ? 1 : 0; 
	
	//netscape, safari, mozilla behave the same??? 
	var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0; 

    function show_data(strName,strLanguage, strMethod){ 
        if (strName.length > 0){ 
            //Append the name to search for to the requestURL 
            var url = ajaxUrl + '?m=' + strMethod + '&q=' + strName + '&ilng=' + strLanguage; 

			xmlHttp = GetXmlHttpObject(stateChangeHandler);
	        
			//Send the xmlHttp get to the specified url 
			xmlHttp_Get(xmlHttp, url);
			
        } 
        else 
        { 
            //Textbox blanked out, clear the results 
            document.getElementById(SELECT_Destination).innerHTML = ''; 
        } 
    } 

    //stateChangeHandler will fire when the state has changed, i.e. data is received back 
    // This is non-blocking (asynchronous) 
    function stateChangeHandler() 
    { 
        //readyState of 4 or 'complete' represents that data has been returned 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
            //Gather the results from the callback 
            var str = xmlHttp.responseText;  
            
            //Populate the innerHTML of the div with the results 
            document.getElementById(SELECT_Destination).innerHTML = ''; 
            
            var sSelect = new Array();
			sSelect = str.split(';');
			
			var intSizeSelect = 2;
			if(sSelect.length<=1)
			{
				document.getElementById(DIV_Destination).style.display	= "none";
				document.getElementById(SELECT_Destination).style.display		= "none";
			}
			else if(sSelect.length==2)
			{
				document.getElementById(DIV_Destination).style.display	= "";
				document.getElementById(SELECT_Destination).style.display	= "";
			}
			else
			{
				intSizeSelect = sSelect.length-1;
				document.getElementById(DIV_Destination).style.display	= "";
				document.getElementById(SELECT_Destination).style.display	= "";
			}
			
			
			if(sSelect.length>20)
				intSizeSelect = 20;			
				
			document.getElementById(SELECT_Destination).size = intSizeSelect;
						
			for(i=0;i<sSelect.length-1;i++)
			{
				var sValue = new Array();
				sValue = sSelect[i].split('*');
				try{
					var opt = new Option(trim(sValue[1]), trim(sValue[0]));
					opt.style.color = "graytext";
					document.getElementById(SELECT_Destination).add(opt, null) //add new option to end of "sample"
				}
				catch(e){ //in IE, try the below version instead of add()
					var opt = new Option(trim(sValue[1]), trim(sValue[0]));
					opt.style.color = "graytext";
					document.getElementById(SELECT_Destination).add(opt) //add new option to end of "sample"
				}
			}
			
			if(sSelect.length==2)
			{
				var obj	 = document.getElementById(SELECT_Destination);
				
				obj.selectedIndex=0;
				setValue(SELECT_Destination,HIDDEN_Destination,TEXT_Destination);
				
				document.getElementById(DIV_Destination).style.display	= "none";
				obj.style.display	= "none";
			}	
			
        } 
    } 
    
    // XMLHttp send GET request 
    function xmlHttp_Get(xmlhttp, url) { 
        xmlhttp.open('GET', url, true); 
        xmlhttp.send(null); 
    } 

   function GetXmlHttpObject(handler) { 
	var objXmlHttp = null;    //Holds the local xmlHTTP object instance 

	//Depending on the browser, try to create the xmlHttp object 
	if (is_ie){ 
		//The object to create depends on version of IE 
		//If it isn't ie5, then default to the Msxml2.XMLHTTP object 
		var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'MSXML2.XMLHTTP.3.0'; 
	        
		//Attempt to create the object 
		try{ 
			objXmlHttp = new ActiveXObject(strObjName); 
			objXmlHttp.onreadystatechange = handler; 
		} 
		catch(e){ 
		//Object creation errored 
			alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled'); 
			return; 
		} 
	} 
	else if (is_opera){ 
		//Opera has some issues with xmlHttp object functionality 
		alert('Opera detected. The page may not behave as expected.'); 
		return; 
	} 
	else{ 
		// Mozilla | Netscape | Safari 
		objXmlHttp = new XMLHttpRequest(); 
		objXmlHttp.onload = handler; 
		objXmlHttp.onerror = handler; 
	} 
	    
	//Return the instantiated object 
	return objXmlHttp; 
} 

function setValue(cltsouce, cltcode,cltvalue)
{
	var obj	 = document.getElementById(cltsouce);
	var obj0 = document.getElementById(cltcode);
	var obj1 = document.getElementById(cltvalue);

	if(obj1!=null & obj.selectedIndex >-1)
		obj1.value = obj[obj.selectedIndex].text;
		
	if(obj0!=null & obj.selectedIndex >-1)
		obj0.value = obj.value;
}

    function Send(strurl,strMail,strPass,blnRm){ 
        var url = strurl + "/ui/crm/signin.aspx";

        xmlHttp = GetXmlHttpObject(stateChangeHandler1); 
	        
		//Send the xmlHttp get to the specified url 
		xmlHttp_POST(xmlHttp, url,strMail,strPass,blnRm);
    } 

    //stateChangeHandler will fire when the state has changed, i.e. data is received back 
    // This is non-blocking (asynchronous) 
    function stateChangeHandler1() 
    { 
        //readyState of 4 or 'complete' represents that data has been returned 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
            //Gather the results from the callback 
            location.href = xmlHttp.responseText+defaultparam;              
         }
    } 

    // XMLHttp send POST request 
    function xmlHttp_POST(xmlhttp, url,strMail,strPass,blnRm) { 
		var params = defaultparam+'&l='+strMail+'&p='+strPass;
		if (blnRm)
			params = params + '&rm=on';
        xmlhttp.open('POST', url, true); 
        xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.setRequestHeader("Content-length", params.length);
		xmlhttp.setRequestHeader("Connection", "close");
        xmlhttp.send(params); 
    } 
