var base_url = "http://www.renault-merchandising.com";
/*var base_url = "http://192.168.21.35/renault-merchandising";*/
var xhr = null; 
function getXhr()
{
     if(window.XMLHttpRequest)xhr = new XMLHttpRequest(); 
else if(window.ActiveXObject)
  { 
  try{
     xhr = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (e) { 
		try {
			xhr = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e1) {
        xhr = null;
		}
	}
  }
else 
  {
  alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
  xhr = false; 
  } 
}

function afficherdiv(lequel, param2)
{
getXhr();
xhr.onreadystatechange = function()
    {
     if(xhr.readyState == 4 && xhr.status == 200)
     {
			document.getElementById('infoplus'+lequel).innerHTML=xhr.responseText;
	 }
    }
if (param2)
	{
	xhr.open("GET", base_url+"/index.php/client/div"+lequel+"/"+param2,true);
	}
else
	{
	xhr.open("GET", base_url+"/index.php/client/div"+lequel,true);
	}

xhr.send(null);
}

function interetjs()
{
if (document.getElementById('interet').options[document.getElementById('interet').selectedIndex].value == 'Licenses')
	{
	document.getElementById('infoplus1').innerHTML='';
	document.getElementById('infoplus2').innerHTML='';
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	afficherdiv('5', '1');
	}
else if(document.getElementById('interet').options[document.getElementById('interet').selectedIndex].value == 'Produits')
	{
	document.getElementById('infoplus5').innerHTML='';
	document.getElementById('infoplus2').innerHTML='';
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	afficherdiv('1');
	}
else 
	{
	document.getElementById('infoplus1').innerHTML='';
	document.getElementById('infoplus2').innerHTML='';
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus5').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	}
}

function societairejs(param)
{
if (param == '1')
	{
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus5').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	afficherdiv('2');
	}
else if(param == '2')
	{
	document.getElementById('infoplus2').innerHTML='';
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	afficherdiv('5', '7');
	}
}

function f1teamjs(param)
{
if (param == '1')
	{
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	afficherdiv('5', '6');
	}
else if((param == '2') && (document.getElementById('pays').options[document.getElementById('pays').selectedIndex].value == 'France'))
	{
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus5').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	afficherdiv('3');
	}
else if((param == '2') && (document.getElementById('pays').options[document.getElementById('pays').selectedIndex].value != 'France'))
	{
	document.getElementById('infoplus3').innerHTML='';
	document.getElementById('infoplus4').innerHTML='';
	document.getElementById('infoplus5').innerHTML='';
	document.getElementById('infoplus6').innerHTML='';
	afficherdiv('5', '5');
	}
}

function div4()
{
	afficherdiv('4');
}
function div5()
{
	if (document.getElementById('appartenance').options[document.getElementById('appartenance').selectedIndex].value == 'Concessionnaire')
	{
	afficherdiv('5', '2');
	}
	else if (document.getElementById('appartenance').options[document.getElementById('appartenance').selectedIndex].value == 'Agent')
	{
	afficherdiv('5', '3');
	}
	else if (document.getElementById('appartenance').options[document.getElementById('appartenance').selectedIndex].value == 'Siege')
	{
	afficherdiv('5', '4');
	}
	else
	{
	afficherdiv('5', '3');
	}

}

function div6()
{
	if	(document.getElementById('fonction').options[document.getElementById('fonction').selectedIndex].value == 'Autre')
	{
		afficherdiv('6');
	}
}

function rechercher_acces(id, recherche)
{
	if (id != '' && id > 0)
	{
		getXhr();
		xhr.onreadystatechange = function()
		    {
		     if(xhr.readyState == 4 && xhr.status == 200)
		     {
				document.getElementById('contenu_acces').innerHTML=xhr.responseText;
				//alert(recherche);
				//document.getElementById('inputString').value = recherche;
			 }
		    }
		xhr.open("GET", base_url+"/index.php/admin/detail_acces/"+id+"/"+recherche,true);
		xhr.send(null);
	}
}

function rechercher_factures(id)
{
	if (id != '' && id > 0)
	{
		getXhr();
		xhr.onreadystatechange = function()
		    {
		     if(xhr.readyState == 4 && xhr.status == 200)
		     {
				document.getElementById('contenu_acces').innerHTML=xhr.responseText;
				detail_client(id);
			 }
		    }
		xhr.open("GET", base_url+"/index.php/logistic/facture_client/"+id,true);
		xhr.send(null);
	}
}

function detail_client(id)
{
	if (id != '' && id > 0)
	{
		getXhr();
		xhr.onreadystatechange = function()
		    {
		     if(xhr.readyState == 4 && xhr.status == 200)
		     {
				document.getElementById('coord').innerHTML=xhr.responseText;
			 }
		    }
		xhr.open("GET", base_url+"/index.php/logistic/detail_client/"+id,true);
		xhr.send(null);
	}
}

/****************************************************/
/*							                        */
/*			CALENDRIER POUR CHAMPS DATES			*/
/*					                                */
/****************************************************/
	
	moisX=["","Janvier","Fevrier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre"];
	JourM=["Di","Lu","Ma","Me","Je","Ve","Sa"];
	
	var fermable_microcal=true;
	var select_old= null;
	var select_old2= null;
	var startWeek=0;//debut de la semaine 0=dim,1=lun,...
	var jourPause={0:true,6:true}; //jour de pause de la semaine
	var jourFeriee={"1-1":"jour an","1-5":"fête du travail","8-5":"armistice","14-7":"fête nationale","15-8":"ascencion","1-11":"armistice","11-11":"toussain","25-12":"noel"};
	
	//structure la date
	function strucDate(dateX)
	{return {"pos":dateX.getDay(),"jour":dateX.getDate(),"mois":dateX.getMonth()+1,"annee":dateX.getFullYear()};}
	
	
	var dateS= strucDate(new Date());//date Selectionné
	var dnow= strucDate(new Date());//date actuelle

	
	//retourne le ième jour du 1er du mois
	function premJourMois(mois,annee)
	{return (new Date(annee,mois-1,1).getDay());}
	//retourne le jour max du mois
	function JmaxMois(mois,annee)
	{return (new Date(annee,mois,0).getDate());}
	
	
	/* Test une date si elle est correct...spécial killer*/
	function testTypeDate(dateEntree)
	{
	tst=false;
	try
	{rc=dateEntree.split("/");nd=new Date(rc[2],(rc[1]-1),rc[0]);
	tst=(rc[2]>1800&&rc[2]<2200&&rc[2]==nd.getFullYear()&&rc[1]==(nd.getMonth()+1)&&rc[0]==nd.getDate());
	} catch(e) {}
	return tst;
	}
	
	//selection de la zone avec la souris
	function choix(koi,code)
	{
	if (code)
	{ select_old= koi.style.background;
	select_old2= koi.style.color;
	   koi.style.background ='#fdb515';
		koi.style.color = '#ffffff';
	}
	else
	{
	koi.style.background =select_old;
	koi.style.color =select_old2;
	}
	}
	
	
	function testTravail(oldX,xx,jj,mm,aa)
	{
	var dnow= strucDate(new Date());
	styleX="font-family:Tahoma;font-size:10px;text-align:center;";
	styleX+=(oldX)?"":"color:#e0e0e0;";
	styleX+="cursor:pointer;border-right:1px #e0e0e0 solid;border-bottom:1px #e0e0e0 solid;";
	if (jourPause[xx]||jourFeriee[jj+"-"+mm]!=null) styleX+="background:#f0f0f0;";
	if (jj==dnow.jour&&mm==dnow.mois&&aa==dnow.annee) styleX+="border:2px red solid;";
	return styleX;
	}
	
	//test si année bissextile
	function bissextile(annee) {
	return (annee%4==0 && annee %100!=0 || annee%400==0);
	}
	
	//Retourne le nombre de jour depuis le 1er janvier (num de semaine)
	function nbJAnnee(dateX){
	var nb_mois=[,0,31,59,90,120,151,181,212,243,273,304,334];
	j=dateX.jour ; m=dateX.mois ; a=dateX.annee;
	nb=nb_mois[m]+j-1 ;
	if (bissextile(a) && m>2) nb++;
	return nb;
	}
	
	//affiche le calendrier
	function view_microcal(actif,ki,source,mxS,axS)
	{
	if (actif)
	{
	//decalage du mois su on clique sur -/+
	if (mxS!=-1)
	{
	clearTimeout(cc);
	document.getElementById(ki).focus();
	fermable_microcal=true;
	dateS.mois=mxS;
	dateS.annee=axS;
	if (dateS.mois<1) {dateS.annee--;dateS.mois+=12;}
	if (dateS.mois>12) {dateS.annee++;dateS.mois-=12;}
	}
	//init
	Dstart=(premJourMois(dateS.mois,dateS.annee)+7-startWeek)%7;
	jmaxi=JmaxMois(dateS.mois,dateS.annee);
	jmaxiAvant=JmaxMois((dateS.mois-1),dateS.annee);
	//si on veux ajouter le numero de la semaine ...
	//idxWeek=parseInt(nbJAnnee(strucDate(new Date(dateS.mois+'-01-'+dateS.annee)))/7,10)+1;
	
	ymaxi=parseInt((jmaxi+Dstart+1)/7,10);
	
	//generation du tableau
	//--entête
	htm="<table style=\"background-color:#fff;\"><tr style='font-size:10px;font-family:Tahoma;text-align:center;'>";
	htm+="<td style='cursor:pointer;' onclick=\"view_microcal(true,'"+ki+"','"+source+"',"+(dateS.mois-1)+","+dateS.annee+");\"><<</td>";
	htm+="<td colspan='5'> <b> "+moisX[dateS.mois]+"</b>&nbsp;"+dateS.annee+"</td>";
	htm+="<td style='cursor:pointer;' onclick=\"view_microcal(true,'"+ki+"','"+source+"',"+(dateS.mois+1)+","+dateS.annee+")\">>></td></tr>";
	//--corps
	htm+="<tr>";
	//affichage des jours DLMMJVS
	for (x=0;x<7;x++)
	htm+="<td style='font-size:10px;font-family:Tahoma;'><b>"+JourM[(x+startWeek)%7]+"</b></td>";
	htm+="</tr>"
	
	
	//------------------------
	for (y=0;y<=ymaxi;y++)
	{
	htm+="<tr>";
	for (x=0;x<7;x++)
	{
	idxP=y*7+x-Dstart+1; //numero du jour
	aa=dateS.annee;
	xx=(x+startWeek)%7;
	//jour du mois précedent
	if (idxP<=0)
	{
	jj=idxP+jmaxiAvant;mm=dateS.mois-1;
	if (mm==0)
	{mm=12;aa--;}
	htm+="<td style='"+testTravail(false,xx,jj,mm,aa)+"' onmouseover='choix(this,true)' onmouseout='choix(this,false)' onclick=\""+ki+".value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';"+ki+".style.color='black';\">"+jj+"</td>";
	}
	else if (idxP>jmaxi) //jour du mois suivant
	{
	jj=idxP-jmaxi;mm=dateS.mois+1;
	if (mm==13)
	{mm=1;aa++;}
	
	htm+="<td style='"+testTravail(false,xx,jj,mm,aa)+"' onmouseover='choix(this,true)' onmouseout='choix(this,false)' onclick=\"document.getElementById('"+ki+"').value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';document.getElementById('"+ki+"').style.color='black';\">"+jj+"</td>";}
	else //jour du mois en cours
	{
	jj=idxP;mm=dateS.mois;
	htm+="<td style='"+testTravail(true,xx,jj,mm,aa)+"' onmouseover='choix(this,true)' onmouseout='choix(this,false)' onclick=\"document.getElementById('"+ki+"').value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';document.getElementById('"+ki+"').style.color='black';\">"+jj+"</td>";}
	}
	htm+="</tr>"
	}//-------------------------
	htm+="</table>"
	//affiche le tableau
	document.getElementById(source).innerHTML=htm;
	document.getElementById(source).style.visibility="";
	//document.getElementById(source).style.display="block";
	
	} else
	{
	//ferme le calendrier
	if (fermable_microcal)
	   cc=setTimeout("document.getElementById('"+source+"').style.visibility='hidden'",500);
		//cc=setTimeout("document.getElementById('"+source+"').style.display='none'",500);
	}
	}


		
/* GESTION DU FORMAT NUMERIC <=> FONCTION PHP */
function number_format (number, decimals, dec_point, thousands_sep) 
	{
    // Formats a number with grouped thousands
    //
    // version: 906.1806
    // discuss at: http://phpjs.org/functions/number_format    // +   original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     bugfix by: Michael White (http://getsprink.com)
    // +     bugfix by: Benjamin Lupton
    // +     bugfix by: Allan Jensen (http://www.winternet.no)    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +     bugfix by: Howard Yeend
    // +    revised by: Luke Smith (http://lucassmith.name)
    // +     bugfix by: Diogo Resende
    // +     bugfix by: Rival    // +     input by: Kheang Hok Chin (http://www.distantia.ca/)
    // +     improved by: davook
    // +     improved by: Brett Zamir (http://brett-zamir.me)
    // +     input by: Jay Klehr
    // +     improved by: Brett Zamir (http://brett-zamir.me)    // +     input by: Amir Habibi (http://www.residence-mixte.com/)
    // +     bugfix by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: number_format(1234.56);
    // *     returns 1: '1,235'
    // *     example 2: number_format(1234.56, 2, ',', ' ');    // *     returns 2: '1 234,56'
    // *     example 3: number_format(1234.5678, 2, '.', '');
    // *     returns 3: '1234.57'
    // *     example 4: number_format(67, 2, ',', '.');
    // *     returns 4: '67,00'    // *     example 5: number_format(1000);
    // *     returns 5: '1,000'
    // *     example 6: number_format(67.311, 2);
    // *     returns 6: '67.31'
    // *     example 7: number_format(1000.55, 1);    // *     returns 7: '1,000.6'
    // *     example 8: number_format(67000, 5, ',', '.');
    // *     returns 8: '67.000,00000'
    // *     example 9: number_format(0.9, 0);
    // *     returns 9: '1'    // *     example 10: number_format('1.20', 2);
    // *     returns 10: '1.20'
    // *     example 11: number_format('1.20', 4);
    // *     returns 11: '1.2000'
    // *     example 12: number_format('1.2000', 3);    // *     returns 12: '1.200'
    var n = number, prec = decimals;
 
    var toFixedFix = function (n,prec) {
        var k = Math.pow(10,prec);        return (Math.round(n*k)/k).toString();
    };
 
    n = !isFinite(+n) ? 0 : +n;
    prec = !isFinite(+prec) ? 0 : Math.abs(prec);    var sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep;
    var dec = (typeof dec_point === 'undefined') ? '.' : dec_point;
 
    var s = (prec > 0) ? toFixedFix(n, prec) : toFixedFix(Math.round(n), prec); //fix for IE parseFloat(0.55).toFixed(0) = 0;
     var abs = toFixedFix(Math.abs(n), prec);
    var _, i;
 
    if (abs >= 1000) {
        _ = abs.split(/\D/);        i = _[0].length % 3 || 3;
 
        _[0] = s.slice(0,i + (n < 0)) +
              _[0].slice(i).replace(/(\d{3})/g, sep+'$1');
        s = _.join(dec);    } else {
        s = s.replace('.', dec);
    }
 
    var decPos = s.indexOf(dec);    if (prec >= 1 && decPos !== -1 && (s.length-decPos-1) < prec) {
        s += new Array(prec-(s.length-decPos-1)).join(0)+'0';
    }
    else if (prec >= 1 && decPos === -1) {
        s += dec+new Array(prec).join(0)+'0';    }
    return s;
}