/**
 * Gestion de l'ajax dans profile et search
 *
 * @author Etienne PHELIPON - Virtua SA <etienne@virtua.ch>
 * @copyright Copyright © Virtua web solutions
 * @name: $Source: /vhosts/swissfriends8/www/public/js/ajax_CL_pulldown.js,v $
 * @version $Revision: 1.1 $ $Date: 2008/08/05 12:38:00 $ $Author: raphael $
 */

//----------------------------------------------------------------------------
function ajax_createRequestObject() {
	var req = false;
  // branch for native XMLHttpRequest object
  if(window.XMLHttpRequest) {
  	try {req = new XMLHttpRequest();} 
  	catch(e) {req = false;}
  // branch for IE/Windows ActiveX version
  }
  else if (window.ActiveXObject) {
    try {req = new ActiveXObject("Msxml2.XMLHTTP");} 
    catch(e) {
     	try {req = new ActiveXObject("Microsoft.XMLHTTP");} 
     	catch(e) {req = false;}
		  }
  }
  return req;
}
//----------------------------------------------------------------------------
function ajax_sndReq(req, name,url) {
//  alert(name);
	req.open("GET", url, true);
	req.onreadystatechange = name;
	req.send(null);
}
//----------------------------------------------------------------------------
function ajax_handleResponse(req) {
  if (req.readyState == 4) {// only if req shows "loaded"
    if (req.status == 200) {// only if "OK"
			// getting the cities list from the request
	    var field_values = req.responseXML.getElementsByTagName('option') ;
	    var name = req.responseXML.getElementsByTagName('name') ;
	    var field_name=name[0].childNodes[0].nodeValue;
    	select = document.getElementById(field_name) ;
      
      clearSelect(select);// clearing and filling the select
			fillSelect(select, field_values) ;
    } else {
      alert("There was a problem retrieving the XML data:\n" +req.statusText);
    }
  }
}
//----------------------------------------------------------------------------
function clearSelect(select)	{
  try {
  	while (select.length)	{
	   	select.remove(0) ;
	  }
  }
  catch(e) {alert('select inexistant!');}
}
//----------------------------------------------------------------------------
function fillSelect(select, values)	{
	var opt;
	for (var i = 0; i < values.length; i++) { 
		opt = document.createElement("option");
		select.appendChild(opt);
//		opt.value = values[i].childNodes[0].nodeValue ;
		opt.text = values[i].childNodes[0].nodeValue ;
    opt.setAttribute('value', values[i].getAttribute('value'));
//		alert(values[i].childNodes[0].nodeValue);
		if (values[i].getAttribute('selected') == 'true')	{
			opt.selected = true ;
		}
	}
}
//----------------------------------------------------------------------------
function SelectOnlyOneValue(select)	{
  var ret=0;
  var nbValueSelected=0;
  for(var i=0;i<select.options.length;i++) {
    if (select.options[i].selected) {
      nbValueSelected+=1;
      ret=select.options[i].value;    
    }
  }
  if (nbValueSelected>1) {
    ret=0;
  }
  return ret;
}
//----------------------------------------------------------------------------
/*
          DO NOT WORK
          
function ajax_sndReqPOST(req, name,url,param) {
//  alert(url+param);
	req.open("POST", url, true);
	req.onreadystatechange = name;
	req.send(param);

//  objHTTP = new ActiveXObject('Microsoft.XMLHTTP');
//  objHTTP.Open('POST',"OtherPage.asp",false);
//  objHTTP.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
//  objHTTP.send("id=1&user="+txtUser.value+"&password="+txtPassword.value);

}
*/
