//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject()
{
   if (window.XMLHttpRequest)
   {
      return new XMLHttpRequest();
   }
   else if(window.ActiveXObject)
   {
      return new ActiveXObject("Microsoft.XMLHTTP");
   }
   else
   {
      return null;
   }
}

//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();

function getAssistant(gamme)
{
   if (searchReq.readyState == 4 || searchReq.readyState == 0)
   {
      searchReq.open("GET", '/tests/assistant-reponse.php?gamme='+gamme, true);
      searchReq.onreadystatechange = handleAssistant;
      searchReq.send(null);
   }
}

function downloadCommunes(codepostal)
{
   while (document.formulaire.loc.options.length>0)
      document.formulaire.loc.options[0] = null;
   document.formulaire.loc.value="";
   if( codepostal.length==5 )
   {
      if (searchReq.readyState == 4 || searchReq.readyState == 0)
      {
         searchReq.open("GET", '/communes.php?codepostal=' + codepostal, true);
         searchReq.onreadystatechange = handleDownloadCommunes;
         searchReq.send(null);
      }
   }
}

function handleDownloadCommunes()
{
	if (searchReq.readyState == 4 )
        {
   if(!searchReq.responseText.length)
   {
         document.formulaire.loc.value="";
   }
   else
   {
                var str = searchReq.responseText.split("\n");
		for(i=0; i < str.length - 1; i++) {
                        var suggest = '<input value=0>'+str[i];
			//alert(suggest);
			//document.formulaire.loc.value += suggest;
			var opt1 = document.createElement("option" );
			opt1.setAttribute("value",str[i] );
			document.formulaire.loc.options[i] = new Option(str[i], str[i]);
		}
   }
	}
}

//Called from keyup on the search textbox.
//Starts the AJAX request.
function searchSuggest()
{
   if (searchReq.readyState == 4 || searchReq.readyState == 0)
   {
      var str = escape(document.getElementById('suggest').value);
      if( str.length )
      {
         //searchReq.open("GET", 'http://www.raccords-services.fr/suggest.php?search=' + str, true);
         searchReq.open("GET", '/suggest.php?search=' + str, true);
         searchReq.onreadystatechange = handleSearchSuggest;
         searchReq.send(null);
      }
      else
      {
         //document.getElementById('search_suggest').style.display = "none";
         document.getElementById('search_suggest').innerHTML = 'Je suis la pour vous assister pendant votre visite ...';
      }
   }
}

//Called when the AJAX response is returned.
function handleSearchSuggest()
{
   if (searchReq.readyState == 4 )
   {
      if(!searchReq.responseText.length)
      {
         //document.getElementById('search_suggest').style.display = "none";
         document.getElementById('search_suggest').innerHTML = 'Je suis la pour vous assister pendant votre visite ...';
      }
      else
      {
         //var ss = document.getElementById('search_suggest')
         //ss.innerHTML = '';
         //document.getElementById('search_suggest').style.display = "inline";
         //document.getElementById('search_suggest').innerHTML = '&nbsp;<i>Voici quelques suggestions à cliquer ...</i><br><br>\n';
         var suggest = "<i>Vous pouvez cliquer sur ...</i><br><br>";
         var str = searchReq.responseText.split("\n");
         for(i=0; i < str.length - 1; i++)
         {
            //Build our element string.  This is cleaner using the DOM, but
            //IE doesn't support dynamically added attributes.
            //var suggest = '<div onmouseover="javascript:suggestOver(this);" ';
            suggest += '<div onmouseover="javascript:suggestOver(this);" ';
            suggest += 'onmouseout="javascript:suggestOut(this);" ';
            suggest += 'onclick="javascript:setSearch(this.innerHTML);" ';
            //suggest += 'class="suggest_link">' + str[i] + '</div>';
            suggest += 'style="padding: 1px 1px 1px 1px;cursor:hand;">' + str[i] + '</div>';

            //ss.innerHTML += suggest;
            //document.getElementById('search_suggest').innerHTML += suggest;
         }
         document.getElementById('search_suggest').innerHTML = suggest;
      }
   }
}

//Called when the AJAX response is returned.
function handleAssistant()
{
   if (searchReq.readyState == 4 )
   {
      if(!searchReq.responseText.length)
      {
         document.getElementById('assistant').style.display = "none";
         document.getElementById('assistant').innerHTML = '';
         document.getElementById('assistanttable').background = '/tests/assistant.jpg';
      }
      else
      {
         var str = searchReq.responseText;
         document.getElementById('assistant').style.display = "inline";
         document.getElementById('assistant').innerHTML = str;
         document.getElementById('assistanttable').background = '/tests/assistant2.jpg';
      }
   }
}

//Mouse over function
function suggestOver(div_value)
{
   //div_value.className = 'suggest_link_over';
   div_value.style.background = '#F8EFA0';
}

//Mouse out function
function suggestOut(div_value)
{
   //div_value.className = 'suggest_link';
   div_value.style.background = '#FFFFFF';
}

//Click function
function setSearch(value)
{
   document.getElementById('suggest').value = value;
   //document.getElementById('search_suggest').innerHTML = 'Je suis la pour vous assister pendant votre visite ...';
   //document.getElementById('search_suggest').style.display = "none";
   //document.formrecherche.submit();
   document.formsuggest.submit();
}
