function hidestatus()
{
  window.status = "";
  return true;
}

//permet d'afficher une zone 
//@author : Moussa Cisse 
function showPanel(pid,formid,diverror)
{
   document.getElementById(pid).className='visible';
   if(arguments.length >1)
   {
   		document.getElementById(formid).reset();
   	
	   if(arguments.length=2)
	   {
	      diverror = "diverror";
	   }
	   
	      document.getElementById(diverror).innerHTML = "";
   }
	   
}

// permet de cacher une zone  zone
//@author : Moussa Cisse 
function hidePanel(pid)
{
document.getElementById(pid).className='invisible';
}

// renvoit la valeur de l'élément choisi dans une zone de liste
function getListvalue(el)
{
    var lid = document.getElementById(el).selectedIndex;
 	var val  = document.getElementById(el).options[lid].value;
 	return val;
}

function getValidate(el,id)
{
	var lid = document.getElementById(el).selectedIndex;
 	var val  = document.getElementById(el).options[lid].value;
 	
 	switch(val)
 	{
 	}
}


function blurEmail()
{
   var txtTab = ["nom","prenom","aemail","objet","message"];
   var active = false;
   for(var i=0;i<txtTab.length;i++)
    {
        var pname = txtTab[i];
        
        var pvalue = document.getElementById(pname).value;
               
        if(pvalue=="")
        {
        	
        	document.getElementById("btenvoi").disabled=true;
        	return true;
        }
    }
    document.getElementById("btenvoi").disabled=false;
}

// cet fonction sert à activer ou desactiver un bouton selon que tous les chapms sont renseingés ou pas 
function blurEvent(strtxt,btnid)
{
   var txtTab =strtxt.split(":");
   var active = false;
   for(var i=0;i<txtTab.length;i++)
    {
        var pname = txtTab[i];
        
        var pvalue = document.getElementById(pname).value;
               
        if(pvalue=="")
        {
        	
        	document.getElementById(btnid).disabled=true;
        	return true;
        }
    }
    document.getElementById(btnid).disabled=false;
}

/*
cette fonction permet de traiter la réponse du serveur 
@param conn :  l'objet XmlHttprequest 
@param idrefresh :  la zone ) raffraichir aprés le traitement
@param iderror :  la zone d'erreur à raffraichir aprés le traitement
@param url :  l'url de redirection
*/

function makeProcess(conn,idrefresh,iderror,url)
{

   var res = conn.responseText;
  
    if(res=="")
    {
        if(url.length > 0)
        {
       		  if(idrefresh.length > 0)
       		  {
       		    gmopen(url,idrefresh);
       		  }
       		  else
       		  {
       		   gmopen(url);
       		  }
       	}
    }
    else
    {
        if(iderror.length>0)
        {
        	document.getElementById(iderror).innerHTML = res;
        }
      
    }
    
}

function makeProcess2(conn,idrefresh,idform,successmsg)
{

   var res = conn.responseText;
  
    if(res=="")
    {
        	document.getElementById(idrefresh).innerHTML = "Traitement effectuée avec succés ";
        	document.getElementById(idform).reset();
        	document.getElementById("btnvalider").disabled=true;
    }
    else
    {
        	document.getElementById(idrefresh).innerHTML = res;
           
    }
    
}

function addFormsData(xhr,txtTab,sltTab)
{
    // les champs de type texte
    for(var i=0;i<txtTab.length;i++)
    {
        var pname = txtTab[i];
        
        var pvalue = document.getElementById(pname).value;
                
        xhr.appendData(pname,pvalue);
    }
    if(sltTab)
    {
	   
	    //les champs de type list
	    for(var i=0;i<sltTab.length;i++)
	    {
	      
	        var pname = sltTab[i];
	
	        var pvalue = getListvalue(pname);
	                
	        xhr.appendData(pname,pvalue);
	    }
	 }
}




function progressbar(id)
{
	document.getElementById(id).innerHTML = "Patienter...Traitement de votre requête";
}


//permet d'ouvrir un fichier 
//@param : param le paramétre 
//@param : id identificateur du conteneur 
//@param : 
function gmopen(param,id)
{
     var xhr =  new XHRConnection();
	 if(arguments.length!=2)
	 {
	      id = "column2";
	 }
	 xhr.setRefreshArea(id);
	 xhr.appendData('id',param);
	 xhr.sendAndLoad('rubrique.php',"GET",'',makewait);
}

function agmopen(keys,values,id)
{
	
	  var xhr =  new XHRConnection();
	 var strkeys = new String(keys);
	 var strvalues = new String(values);
	 var tabkeys = strkeys.split(":");
	 var tabvalues = strvalues.split(":");
	 xhr.setRefreshArea(id);
	 for(var i=0;i<tabkeys.length;i++)
	 {
	    var  pname = tabkeys[i];
	    var  pvalue = tabvalues[i];
	 	xhr.appendData(pname,pvalue);
	 }
	 xhr.sendAndLoad('rubrique.php',"GET",'',makewait);
}

function refreshnews(delay)
{
	var XHR = new XHRConnection();

	XHR.setRefreshArea("newsdiv");

	XHR.sendAndLoad("lastnews.php", "GET");
	timer = setTimeout('refreshnews()',1000*delay);

	return true;
}

//creation d'un nouveau utilisateur
//@author : Moussa Cisse
//@date : 
function processUser()
{
   
   	var xhr =  new XHRConnection();
   	xhr.setUrlRedirect('lmembre');
   	xhr.setRefreshArea('column2');
   	xhr.setErrorArea('diverror');
    xhr.resetData();
    var txtTab = ["id_membre","nom","prenom","login","pwd","email"];
    var sltTab =["bureau"];
    addFormsData(xhr,txtTab,sltTab)
   	var actioner = "users/requestuser.php";
	xhr.processForm(actioner,makeProcess);
}
// cette fonction permet de traiter n'importe quel formulaire
/*
@author : MOUSSA CISSE
@param : txtstr la chaine de caractéres pour tous les champs de type texte
@param : sltstr la chaine de caractére pour tous les champs de type liste
@param : redirecturl le lien de rdirection aprés le traitement du formuliare
@param : refreshid la zone a raffraichir pour le traitement
@param : errorid la zone a raffraichir en cas d'erreur
@param : actioner le script serveur qui traite les données du formulaire

*/

function processItem(txtstr,sltstr,redirecturl,refreshid,errorid,item)
{
    var xhr =  new XHRConnection();
   	xhr.setUrlRedirect(redirecturl);
   	xhr.setRefreshArea(refreshid);
   	xhr.setErrorArea(errorid);
    xhr.resetData();
    var txtTab = [];
    var sltTab = [];

  var txtTab = txtstr.split(':');
  
    if(sltstr!="")
    {
       
    	var sltTab = sltstr.split(':');
    }
    addFormsData(xhr,txtTab,sltTab)
    		 
	xhr.processForm("requestitem.php?item="+item,makeProcess,progressbar);
}

function processItem2(txtstr,sltstr,refreshid,formid,msg,item)
{
    var xhr =  new XHRConnection();
   	xhr.setRefreshArea(refreshid);
   	xhr.setSuccessMessage(msg);
    xhr.setFormToReset(formid);
    xhr.resetData();
    var txtTab = [];
    var sltTab = [];
    var txtTab = txtstr.split(':');
  
    if(sltstr!="")
    {
    	var sltTab = sltstr.split(':');
    }
    addFormsData(xhr,txtTab,sltTab)
    		 
	xhr.processForm("requestitem.php?item="+item,makeProcess2);
}



function processLogin()
{
    var xhr =  new XHRConnection();
    xhr.resetData();
	var login = document.getElementById('login').value;
	var pwd =   document.getElementById('pwd').value;
	var espace = document.getElementById('espace').value;
	xhr.resetData();
	xhr.appendData('login',login);
	xhr.appendData('pwd',pwd);
	xhr.appendData('espace',espace);
	xhr.sendAndLoad('auth/requestlogin.php',"POST",canLog,LogenCour);
}

function LogenCour(id)
{
 document.getElementById(id).innerHTML = "Connexion en cours...";
}
// Redirection selon les droits de connexion de dl'utilisateur
function canLog(conn)
{
    var res = conn.responseText;
    if(res=="")
    {
       var espace = document.getElementById('espace').value;
        HearderJS(espace +'/index.php');
    }
    else
    {
       document.getElementById("errorlog").innerHTML = "<p style='color:red'>Echec de connexion</p>";
       
    }
}


function processEmail()
{
   
  	 var xhr =  new XHRConnection();
  	 xhr.setRefreshArea('emailarea');
	 var txtTab = ["nom","prenom","aemail","objet","message"];
     var sltTab =[];
     xhr.resetData();
     addFormsData(xhr,txtTab,sltTab);
	 xhr.sendAndLoad('public/mailto.php',"POST",canEmail,makewait);
}


function canEmail(conn)
{
    var res = conn.responseText;
    if(res=="")
    {
        document.getElementById("emailarea").innerHTML ="Votre mail a été envoyé succés";
         document.getElementById("emailfrm").reset();
    }
    else
    {
    	document.getElementById("emailarea").innerHTML =res;
    }
}


//Insertion Contribuion Individuelle
function processIndContrib(id)
{
    var  ret = verifIndivContrib();
    if(ret)
    {
	    var xhr =  new XHRConnection();
	    xhr.setRefreshArea(id);
	    xhr.resetData();
	    
	   var txtTab = ["nom","prenom","localite","nationalite","montant","designation","quantite","montantestime","commentaire","date_contribution"];
	   var sltTab = ["pays","titre","profession","nature","sexe"]; 
	    
	    addFormsData(xhr,txtTab,sltTab)
	   	var actioner = "public/contributions/indiv/inscontrib.php";
		xhr.sendAndLoad(actioner,"POST",insContrib,progressbar);
	}
}


//Insertion Contribution Institution
function processInstContrib(id)
{
    var ret = verifInstContrib();
    if(ret)
    {
    var xhr =  new XHRConnection();
    xhr.setRefreshArea(id);
    xhr.resetData();
    var txtTab = ["nom","telephone","localite","fax","bp","montant","designation","quantite","montantestime","commentaire","date_contribution"];
    var sltTab = ["pays","nature"]; 
    addFormsData(xhr,txtTab,sltTab)
   	var actioner = "public/contributions/inst/inscontrib.php";
	xhr.sendAndLoad(actioner,"POST",insContrib,progressbar);
	}
}

//Insertion Contribuion de groupe
//@author Moussa Cissé
function processGrpContrib(id)
{
   
    var ret = verifInstContrib();
    if(ret)
    {

    var xhr =  new XHRConnection();
    xhr.setRefreshArea(id);
    xhr.resetData();
    
     var txtTab = ["nom","montant","telephone","localite","fax","bp","designation","quantite","montantestime","commentaire","date_contribution"];
    var sltTab = ["pays","nature"]; 
    addFormsData(xhr,txtTab,sltTab)
   	var actioner = "public/contributions/grp/inscontrib.php";
	xhr.sendAndLoad(actioner,"POST",insContrib,progressbar);
	}
}

// Insertion contribution Individuelle
function insContrib(conn)
{
    var res = conn.responseText;
    var id="requestresult";
    if(res=="1")
    {
       document.getElementById(id).innerHTML = "Traitement effectué avec succés";
        document.getElementById("frmcontrib").reset();
    }
    else
    {
    }
  
}
// fonction de mise en attente de l'utilisateur
function makewait(id)
{
   document.getElementById(id).innerHTML = "Patienter...<br>Chargement de la page";
}






