/*********************************************************
Fonctions Javascript pour sélectionner 
les utilisateurs pour une rencontre
 
Pour le site Cleec.com

Utilisation et Reproduction interdites sans accord écrit
de la part des sociétés Cleec ou LMC France

Auteur : Alexandre et Loïc pour LMC (www.lmcfrance.com)
Création : 08 Septembre 2006

@Copyright 2006 - Cleec - Réalisé par LMC France
**********************************************************/

var t_util = new Array();

/****************************************************************
* Fonction qui charge le XML extérieur dans t_util
*/
//function remplit_t_util(id_user, id_loisir){
function remplit_t_util(){

	// On déclare l'objet XmlHttpRequest
	var xhr = creer_xhr();

	// Actions lorsqu'on obtient réponse (état = 4)
	xhr.onreadystatechange = function()
  {
	    // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
	    if(xhr.readyState == 4 && xhr.status == 200){
	        //alert(xhr.responseText);
		    var reponse = nettoieXML(xhr.responseXML.documentElement);

                for (i=0;i<reponse.getElementsByTagName("user").length;i++)
                {
	                util(reponse.getElementsByTagName("user")[i].getAttribute("id"),
					reponse.getElementsByTagName("user")[i].getAttribute("nom"),
					reponse.getElementsByTagName("user")[i].getAttribute("urlphoto"),
					reponse.getElementsByTagName("user")[i].getAttribute("ami_niveau"),
					reponse.getElementsByTagName("user")[i].getAttribute("age"),
					reponse.getElementsByTagName("user")[i].getAttribute("cp"),
					reponse.getElementsByTagName("user")[i].getAttribute("sexe"),
					reponse.getElementsByTagName("user")[i].getAttribute("selection"),
					reponse.getElementsByTagName("user")[i].getAttribute("tabloisir"),
					reponse.getElementsByTagName("user")[i].getAttribute("situe"));
            }
            aff_rech();
	        aff_choix_util();
	    }
	    //charge_util = false;

    }

	//En GET
	//xhr.open("GET",charger_users.aspx+"?user="+id_user+"&loisir="+id_loisir,true);
	//xhr.open("GET","test.xml",true);
	var user_directory_in_cache = document.getElementById('hd_user_id').innerHTML ;
	
	xhr.open("GET","/fichiers_users/"+user_directory_in_cache+"/cache/user_rencontre.xml",true);
	//xhr.open("GET","../fichiers_users/559/cache/charger_users.xml",true);
	//xhr.open("GET","charger_users.xml",true);
	xhr.send(null);
	
}


/********************************************************************
* Création d'un tableau d'objet des utilisateurs
*/
//Classe utilisateur
		function clUtilisateur(id,nom,urlphoto,ami_niveau,age,cp,sexe,selection,tabloisir,situe) 
		{
 				this.id = id;
 				this.nom=nom;
				this.urlphoto=urlphoto;
				this.ami_niveau=ami_niveau;
				this.age=age;
				this.cp=cp;
				this.sexe=sexe;
				this.selection=selection;
				this.tabloisir=tabloisir;
				this.situe=situe;
		}
		
//Méthodes de la classe utilisateur
			
		//Afficher
		clUtilisateur.prototype= {
       aff_id: function() {return this.id;},
       aff_nom: function() {return this.nom;},
	   aff_urlphoto:function() {return this.urlphoto;},
	   aff_ami_niveau:function() {return this.ami_niveau;},
	   aff_age:function() {return this.age;},
	   aff_cp:function() {return this.cp;},
	   aff_sexe:function() {return this.sexe;},
	   aff_selection:function() {return this.selection;},
	   aff_tabloisir:function(){return this.tabloisir;},
	   aff_situe:function(){return this.situe;}
		};
		
//Selectionner ou deselectionner
		function clUtilisateur_set_selection() {
            this.selection=1;
        }
        clUtilisateur.prototype.set_selection = clUtilisateur_set_selection;
        
        function clUtilisateur_unset_selection() {
            this.selection=0;
        }
        clUtilisateur.prototype.unset_selection = clUtilisateur_unset_selection;

//Fonction pour créer et ajouter un utilisateur au tableau
		
		function util(id,nom,urlphoto,ami_niveau,age,cp,sexe,selection,tabloisir,situe) 
		{
			 t_util[t_util.length] = new clUtilisateur(id,nom,urlphoto,ami_niveau,age,cp,sexe,selection,tabloisir,situe);
		}
/**Exemple
*
* 	util(id,nom,urlphoto,ami_niveau,age,cp,sexe,selection);
*	util(1,"loac","/fichiers_users/40/photo.jpg",1,20,75010,masculin,0);
*
*/


/********************************************************************
* Fonction
*/

//Afficher les utilisateurs selon la recherche
        function listing_util() 
        {
            document.getElementById('profils_choix_titre').innerHTML ="<p class=\"titre\">Profils correspondants</p>";

            if (t_util.length == 0)
            {
                //alert("starting loading XML");
                //alert("Vous allez pouvoir choisir les membres voulus");
                remplit_t_util();
                //alert("End loading XML");
            }
            
            //document.getElementById('profils_choix').innerHTML="<p>Rechercher les profils</p>";

            switch (document.getElementById('s_sexe').selectedIndex) 
            {
	            case 0: 
	            test_amis="0";
	            break;
	            case 1: 
	            test_amis="1";
	            break;
	            case 2: 
	            test_amis="2";
	            break;
            }
            
            switch (document.getElementById('amy').selectedIndex) 
            {
	            case 0: 
	            test_amis="0";
	            break;
	            case 1: 
	            test_amis="1";
	            break;
	            case 2: 
	            test_amis="2";
	            break;
            }
            
            switch (document.getElementById('s_sexe').selectedIndex) 
            {
	            case 0: 
	            test_sexe="0";
	            break;
	            case 1: 
	            test_sexe="Masculin";
	            break;
	            case 2: 
	            test_sexe="Feminin";
	            break;
            }

            switch (document.getElementById('ctl00_pageContenu_s_loisir').selectedIndex)
            {
                case 0:
                test_loisir = "0";
                break;
                case 1:
                test_loisir = "1";
                break;
            }
            //**********************
            //Le code pour ne selectionner que les amis qui correspondent aux loisirs

            //********************
            
//alert(t_util.length);
  //        var nbre = t_util.length;
            if (t_util.length > 0) {
                aff_rech();
                aff_choix_util();
            }
            
        }

//******************
    function aff_rech() {
    //alert ("affiche rech");
         var sup = document.getElementById('t_nom').value.length;
                  
         var reponse;
         var val;
         var i;
         
         var u_dist;
         var u_selected_choice = document.getElementById('ctl00_pageContenu_s_situe').value;
         var contenuDiv = "";
  
     
         for (i=0;i<t_util.length;i++)
            {
                //alert("alert " + i);
                val =t_util[i].aff_nom().toUpperCase();
                u_dist = parseInt(t_util[i].aff_situe());
             
                //if((val.substr(0,sup)==document.getElementById('t_nom').value.toUpperCase())&&(t_util[i].aff_selection()==0)&&(test_amis==t_util[i].aff_ami_niveau()||test_amis=="0")&&(test_sexe==t_util[i].aff_sexe()||test_sexe=="0")&&(document.getElementById('t_cp').value==t_util[i].aff_cp()||document.getElementById('t_cp').value=="")&&(document.getElementById('t_age_inf').value<=t_util[i].aff_age()||document.getElementById('t_age_inf').value=="")&&(document.getElementById('t_age_sup').value>=t_util[i].aff_age()||document.getElementById('t_age_sup').value=="")&&(test_loisir==t_util[i].aff_tabloisir()||test_loisir=="0")&&(document.getElementById('ctl00_pageContenu_s_situe').value<=t_util[i].aff_situe()||document.getElementById('ctl00_pageContenu_s_situe').value=="0"))
                if((val.substr(0,sup)==document.getElementById('t_nom').value.toUpperCase())&&(t_util[i].aff_selection()==0)&&(test_amis==t_util[i].aff_ami_niveau()||test_amis=="0")&&(test_sexe==t_util[i].aff_sexe()||test_sexe=="0")&&(document.getElementById('t_cp').value==t_util[i].aff_cp()||document.getElementById('t_cp').value=="")&&(document.getElementById('t_age_inf').value<=t_util[i].aff_age()||document.getElementById('t_age_inf').value=="")&&(document.getElementById('t_age_sup').value>=t_util[i].aff_age()||document.getElementById('t_age_sup').value=="")&&(test_loisir==t_util[i].aff_tabloisir()||test_loisir=="0")&& (u_selected_choice >= u_dist || u_selected_choice=="0") )
                {
                    reponse ="<div class=\"aff_contact\">";
                    reponse+="<p><a href=\"javascript:add_util("+i+")\">";
                    
                //si l'utilisateur n'a pas de photos;
                if ((t_util[i].aff_urlphoto() == "/fichiers_users/Homme.jpg") || (t_util[i].aff_urlphoto() == "/fichiers_users/Femme.jpg"))
                    reponse+="<img src=\"" + t_util[i].aff_urlphoto() + "\" />";
                else
                    reponse+="<img src=\"/fichiers_users/" + t_util[i].aff_urlphoto() + "\" />";
                    
                    reponse+="<br/>"+t_util[i].aff_nom();
                    reponse+= "<br/>[ + ]</a>";

                    reponse+="</p>";
                    reponse+="</div>";
                    contenuDiv+=reponse;                   
                }
         }
        

        if ( t_util.length == 0 )
        {
            contenuDiv+= "<p>Vous n'avez pas encore ajout&eacute; d'ami et vous devez vous constituer un r&eacute;seau d'amis pour s'&eacute;lectionner des participants.</p>";
            contenuDiv+= "<p><a class=\"lien_puce\" href=\"/membres/inviter_ami.aspx\">Invitez vos amis &agrave; vous rejoindre sur le site</a></p>";
            contenuDiv+= "<p><a class=\"lien_puce\" href=\"/membres/membres.aspx\">Recherchez des membres</a></p>";
            contenuDiv+= "<p><a class=\"lien_puce\" href=\"/organiser/nouvelle.aspx\">Proposez une rencontre &agrave; tous les membres du site</a></p>";
        }
        document.getElementById('profils_choix').innerHTML = contenuDiv;    
    }

//Afficher les utilisateurs sélectionner
        function aff_choix_util() {
            //alert ("affiche choix");
            //document.getElementById('profils_select').innerHTML="<h1>Ma s&eacute;lection d'invit&eacute;s</h1>";
            document.getElementById('profils_select_titre').innerHTML ="<p class=\"titre\" >Ma s&eacute;lection d'invit&eacute;s</p>";
            var contenuDiv = "";
            var reponse;    
            var i;
        
            for (i=0;i<t_util.length;i++)
                {
                    if(t_util[i].aff_selection()==1)
                    {
                        reponse ="<div class=\"aff_contact\">";
                        reponse+="<p>";
                        //si l'utilisateur n'a pas de photos;
                        if ((t_util[i].aff_urlphoto() == "/fichiers_users/Homme.jpg") || (t_util[i].aff_urlphoto() == "/fichiers_users/Femme.jpg"))
                            reponse+="<img src='" + t_util[i].aff_urlphoto() + "'/><br/>";
                        else
                            reponse+="<img src='/fichiers_users/" + t_util[i].aff_urlphoto() + "'/><br/>";

                        reponse+=t_util[i].aff_nom();
                        reponse+="<br/><a href=\"javascript:remove_util("+i+")\">[ - ]</a>";
                        reponse+="</p>";
                        reponse+="</div>";

                        contenuDiv += reponse;
                    }
                }
                document.getElementById('profils_select').innerHTML = contenuDiv ;
        }


//Selectionner ou deselectionner un utilisateur
        function add_util(index)
        {
  //alert (" start add util");
            t_util[index].set_selection();
            
            //aff_choix_util();
            listing_util();
            //aff_rech() ;
            
            var les_id;
            var j=1;
            for (var i=0;i<t_util.length;i++)
            {
                if(t_util[i].aff_selection()==1)
                {
                    if(j==1)
                        les_id = t_util[i].aff_id();
                    else
                        les_id += ";"+t_util[i].aff_id();
                  j++;
                }
            }
            document.getElementById('ctl00_pageContenu_users').value = les_id;
            
  //alert (" End add util");

        }

        function remove_util(index)
        {
            t_util[index].unset_selection();
            
            //aff_choix_util();
            listing_util();
            //aff_rech() ;
            
            var les_id;
            var j=1;
            for (var i=0;i<t_util.length;i++)
            {
                if(t_util[i].aff_selection()==1)
                {
                    if(j==1)
                        les_id = t_util[i].aff_id();
                    else
                        les_id += ";"+t_util[i].aff_id();
                  j++;
                }
            }
            document.getElementById('ctl00_pageContenu_users').value = les_id;
            

        }
        
//Validation de la page

        function valider()
        {

            var j=1;
            var param;
            for (var i=0;i<t_util.length;i++)
            {
                if(t_util[i].aff_selection()==1)
                {
                    if(j==1)
                    {
                        param="id"+j+"="+t_util[i].aff_id()+"&index"+j+"="+i;
                    }
                    else
                    {
                        param+="&id"+j+"="+t_util[i].aff_id()+"&index"+j+"="+i;
                    }
                  j++;
                }
            }
            var lien;
            if(document.getElementById('ctl00_pageContenu_choix').value!=""){
            lien="/membres/groupe_detail.aspx?"+param+"&groupe="+document.getElementById('ctl00_pageContenu_choix').value;
            }
            else if(document.getElementById('ctl00_pageContenu_choix_rencontre').value!="")
            {
            lien="/organiser/rencontre.aspx?"+param+"&id="+document.getElementById('ctl00_pageContenu_choix_rencontre').value;
            }
            else
            {
                if (j < 2)
                lien = "?retour=1";
                    //lien = "/organiser/nouvelle.aspx?retour=1";
                else
                    lien = "?"+param+"&retour=1";
                    //lien = "/organiser/nouvelle.aspx?"+param+"&retour=1";
            }
            location.href=lien;
        }
        function valider_rencontre(page_param)
        {

            document.getElementById('ctl00_pageContenu_selection').innerHTML +="<div class=\"heritage\">";
            
            for (var i=0;i<t_util.length;i++)
                {
                    if(t_util[i].aff_selection()==1)
                    {
                        var reponse;
                       
                        reponse = "<div class='aff_contact'><center><p><a href=\"/membres/M_profil.aspx?choix=" + t_util[i].aff_id() + "\">";
                        reponse += "<img src='../fichiers_users/" + t_util[i].aff_urlphoto() + "'/><br/>";
                        reponse += t_util[i].aff_nom();
                        reponse += "</a><p></center></div>";

                        document.getElementById('ctl00_pageContenu_selection').innerHTML += reponse;
                    }
                }

                document.getElementById('ctl00_pageContenu_selection').innerHTML +="<div class='spacer'></div>";
                document.getElementById('ctl00_pageContenu_R_selec').checked = true;
                //   document.getElementById('ctl00_pageContenu_btnViewDetails').innerHTML = "Editer liste";
                    
        }
        
        function valider_invite_groupe()
        {
        
            var les_id;
            var j=1;
            var param;
            for (var i=0;i<t_util.length;i++)
            {
                if(t_util[i].aff_selection()==1)
                {
                    if(j==1)
                    {
                        les_id = t_util[i].aff_id();
                        param="id"+j+"="+t_util[i].aff_id();
                    }
                    else
                    {
                        les_id += ";"+t_util[i].aff_id();
                        param+="&id"+j+"="+t_util[i].aff_id();
                    }
                  j++;
                }
            }
            document.getElementById('ctl00_pageContenu_users').value = les_id;
                       
            var lien;
            lien="/membres/groupe_detail.aspx?"+param+"&groupe="+document.getElementById('ctl00_pageContenu_choix').value;
            location.href=lien;

        }
        
        function vali(userid,rencontreid)
        {
            var symp=document.getElementById('sympathie_'+userid).value;
            var fiab=document.getElementById('fiabilite_'+userid).value;
            var tech=document.getElementById('technique_'+userid).value;

            //window.opener.
            //location.href="/organiser/organiser.aspx?id="+rencontreid+"&choix="+userid+"&symp="+symp+"&fiab="+fiab+"&tech="+tech;
            location.href="?id="+rencontreid+"&choix="+userid+"&symp="+symp+"&fiab="+fiab+"&tech="+tech;
            //window.close();
        }
        
        function valid(userid,rencontreid)
        {
            var symp=document.getElementById('sympathie_'+userid).value;
            var fiab=document.getElementById('fiabilite_'+userid).value;

            //window.opener.
            //location.href="/organiser/organiser.aspx?id="+rencontreid+"&choix="+userid+"&symp="+symp+"&fiab="+fiab;
            location.href="?id="+rencontreid+"&choix="+userid+"&symp="+symp+"&fiab="+fiab;
            //window.close();
        }
                
