var ajaxerror = '';

function makeRequest(url,iddiv, onLoad) {
	ajaxerror = '';
    var httpRequest = false;
	var ele = parent.document.getElementById(iddiv);
	
	if(ele == null){
		ele = document.getElementById? document.getElementById(iddiv): document.all[iddiv];
	}

	if(ele == null){
		ajaxerror = 'div '+iddiv+' non trouvee';
		return false;
	}
	
	var dh = ele.offsetHeight;
	var dw = ele.offsetWidth - 2;
	
	
	ele.innerHTML = "<div style='width:"+dw+"px;height:"+dh+"px;'><center><img src=/img/chargement.gif></center></div>";
	
	
	if (window.XMLHttpRequest) { 
		httpRequest = new XMLHttpRequest();
		if (httpRequest.overrideMimeType) {
			httpRequest.overrideMimeType('text/xml');
		}
	}
	else if (window.ActiveXObject) { // IE
		try {
			httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			try {
				httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {}
		}
	}

	if (!httpRequest) {
		ele.innerHTML = 'Page non charg&eacute;e : Impossible de crer une instance XMLHTTP';
		return false;
	}
	httpRequest.onreadystatechange = function() { alertContents(httpRequest,iddiv); if($ != null && $.mmcAnim)$.mmcAnim.reload(); };
	httpRequest.open('GET', url, true);
	httpRequest.send(null);
	
	//return true;
}
function postForm(form, url,iddiv, onLoad){
	var query = serialize_form(form);
	return makeRequest(url + '?' + query ,iddiv, onLoad);
}
function alertContents(httpRequest,iddiv) {
	if (httpRequest.readyState == 4) {
		if (httpRequest.status == 200) {
			parent.document.getElementById(iddiv).innerHTML = httpRequest.responseText;
		} else {
			//parent.document.getElementById(iddiv).innerHTML = 'Page non charg&eacute;e : Un probleme est survenu avec la requete';
			parent.document.getElementById(iddiv).innerHTML = '';
		}
	}
}
function serialize_form(theform) {
   var els = theform.elements;
   var len = els.length;
   var queryString = "";
   this.addField =
      function(name,value) {
         if (queryString.length>0) {
            queryString += "&";
         }
         queryString += encodeURIComponent(name) + "=" + encodeURIComponent(value);
      };
   for (var i=0; i<len; i++) {
      var el = els[i];
      if ((!el.disabled) && (el.name!='')){
         switch(el.type) {
            case 'text': case 'password': case 'hidden': case 'textarea':
               this.addField(el.name,el.value);
               break;
            case 'select-one':
               if (el.selectedIndex>=0) {
                  this.addField(el.name,el.options[el.selectedIndex].value);
               }
               break;
            case 'select-multiple':
               for (var j=0; j<el.options.length; j++) {
                  if (el.options[j].selected) {
                     this.addField(el.name,el.options[j].value);
                  }
               }
               break;
            case 'checkbox': case 'radio':
               if (el.checked) {
                  this.addField(el.name,el.value);
               }
               break;
         }
      }
   }
   return queryString;
}
