

function fill_input ()
{
	//alert("oooo");
	
	var ldatedeb_input = document.getElementById('ldatedeb');
	var ldatefin_input = document.getElementById('ldatefin');
	var ldatedate_input = document.getElementById('ldatedate');
	
	ldatefin = null;
	//var lselectduree_select = document.getElementById('lselectduree');
	var ldatedeb = ldatedeb_input.value;
	//var lselectduree = lselectduree_select.value;
	var lselectduree =7
	var ldatefin = null;
				
	//if(lselectduree && ldatedeb)
	if(ldatedeb)
	{
		tab_date = ldatedeb.split('/');
		if(tab_date.length == 3)
		{
			var jour = parseInt(tab_date[0], 10);
			var mois = parseInt(tab_date[1], 10)-1;
			var an = parseInt(tab_date[2], 10);
			an = ((an < 100)? 2000+an: an);
						
			var date_obj = new Date(an, mois, jour);
						
			//conversion de la date en ms
			var dateInMs = date_obj.getTime()
			//ajout du nombre de semaines
			if(parseInt(lselectduree,10) != 0)
			{
			dateInMs += parseInt(lselectduree, 10) * oneDay;
			//maj de date_obj
			date_obj.setTime(dateInMs)
						
			jour = date_obj.getDate();
			mois = date_obj.getMonth() + 1;
			an = date_obj.getFullYear();
						
			ldatefin = (jour>9? '': '0') + jour + '/' + (mois>9? '': '0') + mois + '/' + an;
						
			ldatefin_input.value = ldatefin;
			ldatedate_input.value = ldatedeb;			
			//alert ("oooo");
			}//if
		}//if
	}//if
}//fill_input

function resago(){
	
	document.formresa.datedeb.value = document.formresa.ldatedeb.value ;
	document.formresa.datefin.value = document.formresa.ldatefin.value ;
	//eval ("window.document.formresa.datefin.value='" + apAddDays(window.document.formresa.datedeb.value,7) + "';");
	if (document.formresa.datedeb.value == '') {
	alert (' veuillez préciser votre date d\'arrivée');
	}
	else
	{
	document.formresa.submit();
	}
	}
	
function apAddDays(pdate,nbdays){

	var arraydate=pdate.split("/");
	var decaldate= new Date(arraydate[2],arraydate[1]-1,arraydate[0])
	var datedecalee = new Date(decaldate.getTime() + nbdays*24*60*60*1000);
	var tmpmois= datedecalee.getMonth()+1
	var pmois = (tmpmois < 9) ? "0" + tmpmois.toString() : tmpmois.toString();
	var temppjour = datedecalee.getDate()
	var pjour = (temppjour.toString().length < 2) ? "0" + temppjour.toString() : temppjour.toString();
	var pannee = datedecalee.getYear().toString();
	if (isNav){pannee= 1900 + datedecalee.getYear()};
	return (pjour+ '/' + pmois + '/' + pannee);
}


function addDays(myDate,days) {
    return new Date(myDate.getTime() + days*24*60*60*1000);
}
function majd(nfield,valuedate) {
	eval ("window.document."+ nfield +".value='" + valuedate + "';");
	if (nfield=='formresa.ldatedeb') {
		if (window.document.formresa.lselectheb.value=='10'){
			eval ("window.document.formresa.ldatefin.value='" + apAddDays(window.document.formresa.ldatedeb.value,1) + "';");		
		}
		else
		{
			eval ("window.document.formresa.ldatefin.value='" + apAddDays(window.document.formresa.ldatedeb.value,7) + "';");		
		}
	}
}



function apAddDays(pdate,nbdays){

	var arraydate=pdate.split("/");
	var decaldate= new Date(arraydate[2],arraydate[1]-1,arraydate[0])
	var datedecalee = new Date(decaldate.getTime() + nbdays*24*60*60*1000);
	var tmpmois= datedecalee.getMonth()+1
	var pmois = (tmpmois < 9) ? "0" + tmpmois.toString() : tmpmois.toString();
	var temppjour = datedecalee.getDate()
	var pjour = (temppjour.toString().length < 2) ? "0" + temppjour.toString() : temppjour.toString();
	var pannee = datedecalee.getYear().toString();
	if (isNav){pannee= 1900 + datedecalee.getYear()};
	return (pjour+ '/' + pmois + '/' + pannee);
}


function addDays(myDate,days) {
    return new Date(myDate.getTime() + days*24*60*60*1000);
}
function majd(nfield,valuedate) {
	eval ("window.document."+ nfield +".value='" + valuedate + "';");
	if (nfield=='formresa.ldatedeb') {
		if (window.document.formresa.lselectheb.value=='10'){
			eval ("window.document.formresa.ldatefin.value='" + apAddDays(window.document.formresa.ldatedeb.value,1) + "';");		
		}
		else
		{
			eval ("window.document.formresa.ldatefin.value='" + apAddDays(window.document.formresa.ldatedeb.value,7) + "';");		
		}
	}
}





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 startWeek=1;//debut de la semaine 0=dim,1=lun,...
var jourPause={6:true}; //Variable qui sert ensuite a coloriser les cases du Samedi
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_color_old= koi.style.color;
   koi.style.background ='#090';
   koi.style.color ='#fff';
}
else 
{
koi.style.background =select_old;
koi.style.color =select_color_old;
}
}

function choixcoc(koi,code)
{
if (code) 
{  select_old= koi.style.background;
	select_color_old= koi.style.color;
   koi.style.background ='#FFF';
   koi.style.color ='#fff';
   
}
else 
{
koi.style.background =select_old;
koi.style.color =select_color_old;
}
}

function testTravail(oldX,xx,jj,mm,aa)
{
styleX="font-family:Verdana;font-size:12px;text-align:center;cursor:pointer;";
styleX+=(oldX)?"":"color:#bbbbbb;cursor:text;";
//styleX+="cursor:pointer;border-right:1px #e0e0e0 solid;border-bottom:1px #e0e0e0 solid;";
//jour férié
//if (jourFeriee[jj+"-"+mm]!=null) styleX+="background:#f0f0f0;";
//if (jourPause[xx] && !oldX) styleX+="color:#ffffff;border-right:1px #e0e0e0 solid;border-bottom:1px #e0e0e0 solid;";

if (jourPause[xx])
{
if((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee))
// jours bons
styleX+="color:#390;cursor:pointer;border:2px #390 solid;";
else
//jours bons mais avant aujourdhui
styleX+="color:#888;cursor:not-allowed;text-decoration:line-through;";

// jours mois suivant (bons mais pas afficher si color FFF)
if (!oldX &&(jj!=dnow.jour||mm!=dnow.mois||aa!=dnow.annee)) styleX+="color:#fff;border:0px #fff solid;cursor:not-allowed;";
}
// Aujourd'hui
if (jj==dnow.jour&&mm==dnow.mois&&aa==dnow.annee) styleX+="background:#CCC;color: #fff;cursor:not-allowed;";
// jours mois suivant (pas bons)
if (!oldX && !jourPause[xx]&& (jj!=dnow.jour||mm!=dnow.mois||aa!=dnow.annee)) styleX+="color:#fff;cursor:not-allowed;";
//jour semaine (pas bons)
if (oldX && !jourPause[xx]&& (jj!=dnow.jour||mm!=dnow.mois||aa!=dnow.annee)) styleX+="color:#888;cursor:not-allowed;text-decoration:line-through;";
return styleX;

}//testTravail

function testTravailBis(oldX,xx,jj,mm,aa)
{
styleX="font-family:Verdana;font-size:12px;text-align:center;cursor:pointer;";
styleX+=(oldX)?"":"color:#bbb;cursor:not-allowed;";
//styleX+="cursor:pointer;border-right:1px #e0e0e0 solid;border-bottom:1px #e0e0e0 solid;";
//jour férié
//if (jourFeriee[jj+"-"+mm]!=null) styleX+="background:#f0f0f0;";
//if (jourPause[xx] && !oldX) styleX+="color:#ffffff;border-right:1px #e0e0e0 solid;border-bottom:1px #e0e0e0 solid;";
//if(jj==1) styleX+="color:#fff;background:#bbb;border:1px #000 solid;";

if((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee))
styleX+="color:#390;cursor:pointer;border:1px #390 solid;";
else
styleX+="color:#bbb;cursor:not-allowed;";


if (jj==dnow.jour&&mm==dnow.mois&&aa==dnow.annee) styleX+="background:#CCC;color: #fff;cursor:not-allowed;";
if (!oldX && (jj!=dnow.jour||mm!=dnow.mois||aa!=dnow.annee)) styleX+="color:#fff;border:0px #fff solid;cursor:not-allowed;";
return styleX;
}//testTravailBis

//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;
}

var oneMinute = 60 * 1000
var oneHour = oneMinute * 60
var oneDay = oneHour * 24
var oneWeek = oneDay * 7
			


	
//affiche le calendrier

function view_microcal(actif,ki,source,mxS,axS,vonlysatsat)
{

var Nomnav = navigator.appName;
var disp='visibility:';
var cacher='hidden';
var voir='visible';

if (Nomnav == 'Netscape') { 
	disp='display:'; //display ???
	cacher='none';
	voir='block';
}




if (actif)
{
//decalage du mois su on clique sur -/+
if (mxS!=-1) 
{
clearTimeout(cc);
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><tr style='font-size:12px;font-family:Arial;text-align:center;background-color: #E95D0E;color: #FFFFFF;'>";
htm+="<td style='cursor:pointer;' onclick=\"view_microcal(true,"+ki.id+","+source.id+","+(dateS.mois-1)+","+dateS.annee+","+vonlysatsat+");\"><img src='new_picts/calendrier/mois_precedent.jpg' /></td>";
htm+="<td colspan='5'><b> "+moisX[dateS.mois]+"</b>&nbsp;"+dateS.annee+"</td>";
htm+="<td  style='cursor:pointer;' onclick=\"view_microcal(true,"+ki.id+","+source.id+","+(dateS.mois+1)+","+dateS.annee+","+vonlysatsat+")\"><img src='new_picts/calendrier/mois_suivant.jpg' /></td></tr>";

for (x=0;x<7;x++) 
htm+="<td  style='font-size:12px;font-family:Arial;'><b>"+JourM[(x+startWeek)%7]+"</b></td>";
htm+="</tr>"


//--corps
/*htm+="<tr style='font-family:Tahoma;font-size:10px;text-align:center;'>";

for(i=0;i<=6;i++)
{
	htm+= "<td>"
	htm+= JourM[i];
	htm+= '</td>';
} 
htm+="</tr>";*/
htm+="<tr>";
//affichage des jours DLMMJVS
		
		
	if (vonlysatsat) {
	
		
		
		
		for (y=0;y<=ymaxi;y++) //y<=ymaxi
		{
			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--;
					}
					var onclick = 'return false;'
					if(xx == 6&&((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee)))
					onclick = ki.id+".value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';"+(ki.id)+".style.color='black'; "+(ki.id)+".onchange();"
					htm+="<td style='"+testTravail(false,xx,jj,mm,aa)+"' onmouseover='choixcoc(this,true)' onmouseout='choixcoc(this,false);' onclick=\"" + onclick + "\">"+jj+"</td>";
				}
				
				else if (idxP>jmaxi) //jour du mois suivant
				{
					jj=idxP-jmaxi;
					mm=dateS.mois+1;
					if (mm==13)
					{
						mm=1;
						aa++;
					}
					var onclick = 'return false;'
					if(xx == 6&&((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee)))
						onclick = ki.id+".value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';"+(ki.id)+".style.color='black'; "+(ki.id)+".onchange();"
					htm+="<td style='"+testTravail(false,xx,jj,mm,aa)+"' onmouseover='choixcoc(this,true)' onmouseout='choixcoc(this,false)' onclick=\""+onclick+"\">"+jj+"</td>";
				}
				else //jour du mois en cours
				{
					jj=idxP;mm=dateS.mois;
					var onclick = 'return false;'
					//remplacer les "dnow.*" dans le commentaire pour donner accés à des dates supplémentaires
					//par exemple jj==1&&mm==1&&aa==2008 donne le droit au clic sur le 1er janvier 2008
					if(xx == 6&&((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee)) /*|| (jj==dnow.jour&&mm==dnow.mois&&aa==dnow.annee)*/)
		// onmouseover fond vert			
						onclick = ki.id+".value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';"+(ki.id)+".style.color='black'; "+(ki.id)+".onchange();"
					htm+="<td style='"+testTravail(true,xx,jj,mm,aa)+"' onmouseover='choix(this,true)' onmouseout='choix(this,false)' onclick=\""+onclick+"\">"+jj+"</td>";
				}
			}
			htm+="</tr>"
		}//-------------------------
		
		}      /// fin onlysatsat
		else   /// si pas onlysatsat
		{     /// début si pas onlysatsat 
		
		
		
		
		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--;
					}
					var onclick = 'return false;'
					if((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee))
						onclick = ki.id+".value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';"+(ki.id)+".style.color='black'; "+(ki.id)+".onchange();"
					htm+="<td style='"+testTravailBis(false,xx,jj,mm,aa)+"' onmouseover='choixcoc(this,true)' onmouseout='choixcoc(this,false);' onclick=\"" + onclick + "\">"+jj+"</td>";
				}
				else if (idxP>jmaxi) //jour du mois suivant
				{
					jj=idxP-jmaxi;
					mm=dateS.mois+1;
					if (mm==13)
					{
						mm=1;
						aa++;
					}
					var onclick = 'return false;'
					if((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee))
						onclick = ki.id+".value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';"+(ki.id)+".style.color='black'; "+(ki.id)+".onchange();"
					htm+="<td style='"+testTravailBis(false,xx,jj,mm,aa)+"' onmouseover='choixcoc(this,true)' onmouseout='choixcoc(this,false)' onclick=\""+onclick+"\">"+jj+"</td>";
				}
				else //jour du mois en cours
				{
					jj=idxP;mm=dateS.mois;
					var onclick = 'return false;'
					//remplacer les "dnow.*" dans le commentaire pour donner accés à des dates supplémentaires
					//par exemple jj==1&&mm==1&&aa==2008 donne le droit au clic sur le 1er janvier 2008
					if((jj>=dnow.jour&&mm==dnow.mois&&aa==dnow.annee)||(mm>dnow.mois&&aa==dnow.annee)||(aa>dnow.annee))
					
						onclick = ki.id+".value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';"+(ki.id)+".style.color='black'; "+(ki.id)+".onchange();"
					htm+="<td style='"+testTravailBis(true,xx,jj,mm,aa)+"' onmouseover='choix(this,true)' onmouseout='choix(this,false)' onclick=\""+onclick+"\">"+jj+"</td>";
				}
			}
			htm+="</tr>"
		}//-------------------------
		
		
		} /// fin si pas onlysatsat 
		
		
		htm+="</table>"
		//affiche le tableau
		source.innerHTML=htm;
//source.style.display='block';
		source.style.display='block';

		//source.onMouseOut = "document.getElementById('"+source.id+"').style.visibility='hidden';";
		
		
	}
	else
	{
		
		//ferme le calendrier
		if (fermable_microcal)
		 cc = setTimeout("document.getElementById('"+source.id+"').style.display='none';", 250);
		

	}

			}



function divblanck() {
document.getElementById('package').innerHTML  = '';
}

function testTypeDate1(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;
}

function apAddDays1(pdate,nbdays){

	var arraydate=pdate.split("/");
	var decaldate= new Date(arraydate[2],arraydate[1]-1,arraydate[0])
	var datedecalee = new Date(decaldate.getTime() + nbdays*24*60*60*1000);
	var tmpmois= datedecalee.getMonth()+1
	var pmois = (tmpmois < 9) ? "0" + tmpmois.toString() : tmpmois.toString();
	var temppjour = datedecalee.getDate()
	var pjour = (temppjour.toString().length < 2) ? "0" + temppjour.toString() : temppjour.toString();
	var pannee = datedecalee.getYear().toString();
	if (isNav){pannee= 1900 + datedecalee.getYear()};
	return (pjour+ '/' + pmois + '/' + pannee);
}

function touspackage() {
document.pack_form_filtre.date.value = '';
requetedispo();
}


function divblanck() {
document.getElementById('package').innerHTML  = '';
}