function bissextile1(annee,who)
{
	if(who == "web")
		annee = parseInt(annee,10)+2008;

   return (annee%4 ==0) && ( (annee%100 !=0) || (annee%400 ==0) );
}

function manage_days1(who)
{
	var biss_start;
	var biss_end;

	if(who == "web")
	{
		biss_start = bissextile1(document.getElementById('syear1').value,who);
		biss_end = bissextile1(document.getElementById('eyear1').value,who);
	}
	else
	{
		var mydate=new Date();
		var year=mydate.getYear();
		if(year < 1900) year += 1900;
		biss_start = bissextile1(year,who);
		biss_end = bissextile1(year,who);
	}

	var smonth = document.getElementById('smonth1').value;
	var emonth = document.getElementById('emonth1').value;
	var i;
	var last = 28;
	if(biss_start == true) last = 29;
	
	if(smonth == "02")
	{
		for(i = 31 ; i > last ; i--)
		{
			if(document.getElementById('sday1').options[i] !=null) document.getElementById('sday1').options[i] = null;
		}
	}
	else
	if( (smonth == "04") || (smonth == "06") || (smonth == "09") || (smonth == "11") )
	{
		if(document.getElementById('sday1').options[31] !=null)
			document.getElementById('sday1').options[31] = null;
		else
		{
			for(i = last ; i < 31 ; i++)
			{
				if(document.getElementById('sday1').options[i] ==null) document.getElementById('sday1').options[i] =  new Option(i, i);
			}
		}
	}
	else
	{
		for(i = last ; i < 32 ; i++)
		{
			if(document.getElementById('sday1').options[i] ==null) document.getElementById('sday1').options[i] =  new Option(i, i);
		}
	}

	last = 28;
	if(biss_end == true) last = 29;

	if(emonth == "02")
	{
		for(i = 31 ; i > last ; i--)
		{
			if(document.getElementById('eday1').options[i] !=null) document.getElementById('eday1').options[i] = null;
		}
	}
	else
	if( (emonth == "04") || (emonth == "06") || (emonth == "09") || (emonth == "11") )
	{
		if(document.getElementById('eday1').options[31] !=null)
			document.getElementById('eday1').options[31] = null;
		else
		{
			for(i = last ; i < 31 ; i++)
			{
				if(document.getElementById('eday1').options[i] ==null) document.getElementById('eday1').options[i] =  new Option(i, i);
			}
		}
	}
	else
	{
		for(i = last ; i < 32 ; i++)
		{
			if(document.getElementById('eday1').options[i] ==null) document.getElementById('eday1').options[i] =  new Option(i, i);
		}
	}
}

function verify_allowed1(date1,date2,heure1,heure2)
{
	var year;
	var month;
	var day;
	var heure;
	var minute;
	
	var debut = date1.split("-");
	var fin = date2.split("-");

	var heuredeb = heure1.split(":");
	var heurefin = heure2.split(":");

	var date_start = new Date(parseInt(debut[0],10),parseInt(debut[1],10)-1,parseInt(debut[2],10),parseInt(heuredeb[0],10),parseInt(heuredeb[1],10));
	var date_end = new Date(parseInt(fin[0],10),parseInt(fin[1],10)-1,parseInt(fin[2],10),parseInt(heurefin[0],10),parseInt(heurefin[1],10));

	var nbdays = Math.round((date_end-date_start)/86400000);
	var nbdaysmore = (date_end-date_start)/86400000;

	var diff = nbdaysmore - nbdays;

	if(diff > 0) nbdays += 1;


	document.getElementById('nbdays1').value = nbdays;	

	if(nbdays < document.getElementById('allowed_hidden1').value)
		return false;
	else 
		return true;
}

function today_date1(who)
{
	var datedujour;

	var mydate=new Date();
	var year=mydate.getYear();
	if(year < 1900) year += 1900;
	var month=mydate.getMonth();
	var day=mydate.getDate();
	month += 1;
	var yearind;

	yearind = parseInt(year,10) - 2008;

	datedujour = year+"-";
	if(month < 10) datedujour += "0"+month+"-"; else datedujour += month+"-";
	if(day < 10) datedujour += "0"+day; else datedujour += day;
	
	document.getElementById('sday1').selectedIndex = day;
	document.getElementById('smonth1').selectedIndex = month;
	if(who == "web") document.getElementById('syear1').selectedIndex = yearind;
	document.getElementById('eday1').selectedIndex = day;
	document.getElementById('emonth1').selectedIndex = month;
	if(who == "web") document.getElementById('eyear1').selectedIndex = yearind;
	
	if(who == "web") document.getElementById('startdate1').value = year+"-";
	if(month < 10)
		document.getElementById('startdate1').value+= "0"+month+"-";
	else
		document.getElementById('startdate1').value+= month+"-";
	if(day < 10)
		document.getElementById('startdate1').value+= "0"+day;
	else
		document.getElementById('startdate1').value+= day;

	document.getElementById('startdatetpn1').value = document.getElementById('startdate1').value;

	if(who == "web") document.getElementById('enddate1').value = year+"-";
	if(month < 10)
		document.getElementById('enddate1').value+= "0"+month+"-";
	else
		document.getElementById('enddate1').value+= month+"-";
	if(day < 10)
		document.getElementById('enddate1').value+= "0"+day;
	else
		document.getElementById('enddate1').value+= day;

	document.getElementById('enddatetpn1').value = document.getElementById('enddate1').value;

	manage_days1(who);

	if(who == "admin") create_label1();
	if(who == "web") test_date1("web");
}

function update_dropdown1(who)
{
	debut = document.getElementById('startdate1').value.split("-");

	if(who == "web")
	{
		document.getElementById('syear1').selectedIndex = parseInt(debut[0],10)-2008;
		document.getElementById('smonth1').selectedIndex = debut[1];
		document.getElementById('sday1').selectedIndex = debut[2];
	}
	else
	{
		document.getElementById('smonth1').selectedIndex = debut[0];
		manage_days1(who);
		document.getElementById('sday1').selectedIndex = debut[1];
	}
	
	debut = document.getElementById('enddate1').value.split("-");

	if(who == "web")
	{
		document.getElementById('eyear1').selectedIndex = parseInt(debut[0],10)-2008;
		document.getElementById('emonth1').selectedIndex = debut[1];
		document.getElementById('eday1').selectedIndex = debut[2];
	}
	else
	{
		document.getElementById('emonth1').selectedIndex = debut[0];
		manage_days1(who);
		document.getElementById('eday1').selectedIndex = debut[1];
	}
	
}

function create_date1(who)
{

	manage_days(who);
	
	if( (document.getElementById('sday1').value == 0) || (document.getElementById('smonth1').value == 0) || (document.getElementById('syear1').value == 0))
	{
		document.getElementById('startdate1').value = "";
		document.getElementById('startdatetpn1').value = "";
	}
	else
	{
		var realyear;
		if(who == "admin1") realyear = parseInt(document.getElementById('syear1').value,10)+ 2007;
		else realyear = parseInt(document.getElementById('syear1').value,10)+ 2008;
		document.getElementById('startdate1').value = realyear+"-"+document.getElementById('smonth1').value+"-"+document.getElementById('sday1').value;
		document.getElementById('startdatetpn1').value = document.getElementById('startdate1').value;
	}
	if( (document.getElementById('eday1').value == 0) || (document.getElementById('emonth1').value == 0) || (document.getElementById('eyear1').value == 0))
	{
		document.getElementById('enddate1').value = "";
		document.getElementById('enddatetpn1').value = "";
	}
	else
	{
		var realyear;
		if(who == "admin1") realyear = parseInt(document.getElementById('eyear1').value,10)+ 2007;
		else realyear = parseInt(document.getElementById('eyear1').value,10)+ 2008;
		document.getElementById('enddate1').value = realyear+"-"+document.getElementById('emonth1').value+"-"+document.getElementById('eday1').value;
		document.getElementById('enddatetpn1').value = document.getElementById('enddate1').value;
	}

	if(who == "admin") create_label1();
	if(who == "web") test_date1("web");
}

function start_date1(ladate)
{
	var erreur = false;
	var debut;
	var datedujour;
	var mydate=new Date();
	var year=mydate.getYear();
	if(year < 1900) year += 1900;
	var month=mydate.getMonth();
	var day=mydate.getDate();
	month += 1;
	datedujour = year+"-";
	if(month < 10) datedujour += "0"+month+"-"; else datedujour += month+"-";
	if(day < 10) datedujour += "0"+day; else datedujour += day;

	debut = ladate.split("-");

	if(debut[0] < year) erreur = true;
	else
	if(( debut[0] == year)&&( debut[1] < month) ) erreur = true;
	else
	if(( debut[0] == year)&&( debut[1] == month)&&( debut[2] < day) )
	{
		debut[1] = parseInt(debut[1],10)+1;
		if(debut[1] > 12)
		{
			debut[1] = "01";
			debut[0] = parseInt(debut[0],10)+1;
		}
		if(debut[1] < 10) debut[1] = "0"+parseInt(debut[1],10);
		if(debut[2] < 10) debut[2] = "0"+parseInt(debut[2],10);

		ladate = debut[0]+"-"+debut[1]+"-"+debut[2];

		document.getElementById('sday1').selectedIndex = debut[2];
		document.getElementById('smonth1').selectedIndex = debut[1];
		document.getElementById('syear1').selectedIndex = parseInt(debut[0],10)-2008;
		document.getElementById('startdate1').value = ladate;
		document.getElementById('startdatetpn1').value = ladate;
		manage_days1("web");
		erreur = false;
	}

	if(erreur == true)
	{
		document.getElementById('sday1').selectedIndex = day;
		document.getElementById('smonth1').selectedIndex = month;
		document.getElementById('syear1').selectedIndex = parseInt(year,10)-2008;
		document.getElementById('startdate1').value = datedujour;
		document.getElementById('startdatetpn1').value = datedujour;

	}
}

function test_date1(who)
{
	var nberror = 0;
	var starting = document.getElementById('startdate1').value;
	var ending = document.getElementById('enddate1').value;
	
	if( (document.getElementById('startdate1').value == "") && (document.getElementById('enddate1').value == "") )
	{
		return false;
	}
	else
	{
		if(starting != "")
		{

			if(who == "web") starting = verify_start_date1(starting);

			if(ending == "")
			{
				document.getElementById('enddate1').value = document.getElementById('startdate1').value;
				document.getElementById('enddatetpn1').value = document.getElementById('enddate1').value;
				document.getElementById('startdatetpn1').value = document.getElementById('startdate1').value;
				document.getElementById('eday1').selectedIndex = document.getElementById('sday1').value;
				document.getElementById('emonth1').selectedIndex = document.getElementById('smonth1').value;
				if(who == "web") document.getElementById('eyear1').selectedIndex = document.getElementById('syear1').value;
			}
		}
		
		if(ending != "")
		{
			if(who == "web")
			{
				var comp = ComparerDates1(starting,ending);
		
				if(comp == 1)
				{
					document.getElementById('enddate1').value = document.getElementById('startdate1').value;
					document.getElementById('enddatetpn1').value = document.getElementById('enddate1').value;
					document.getElementById('startdatetpn1').value = document.getElementById('startdate1').value;

					var dat = document.getElementById('enddate1').value.split("-");
					
					document.getElementById('eday1').selectedIndex = dat[2];
					document.getElementById('emonth1').selectedIndex = dat[1];
					document.getElementById('eyear1').selectedIndex = parseInt(dat[0],10)-2008;
					manage_days1(who);
				}
			}
		}
	}

	if(who == "webvalide")
	{
		if( (document.getElementById('stime1').value == 0) || (document.getElementById('etime1').value == 0) )
		{
			alert("Please select the delivery and return time.");
			return false;
		}

		var allrent = test_max_rent1(document.getElementById('startdate1').value,document.getElementById('enddate1').value,document.getElementById('stime1').value,document.getElementById('etime1').value);
		
		if(allrent == false)
		{
			alert("Maximum rent allowed is 30 days, please contact us by clicking on CONTACT.");
			document.getElementById('enddate1').value = document.getElementById('startdate1').value;
			document.getElementById('enddatetpn1').value = document.getElementById('enddate1').value;
			document.getElementById('startdatetpn1').value = document.getElementById('startdate1').value;
			document.getElementById('eday1').selectedIndex = document.getElementById('sday1').value;
			document.getElementById('emonth1').selectedIndex = document.getElementById('smonth1').value;
			document.getElementById('eyear1').selectedIndex = document.getElementById('syear1').value;

			return false;
		}

		var allowed = verify_allowed1(document.getElementById('startdate1').value,document.getElementById('enddate1').value,document.getElementById('stime1').value,document.getElementById('etime1').value);
		
		if(allowed == false)
		{
			alert("Minimum allowed rent is "+document.getElementById('allowed_hidden1').value+" days.");

			return false;
		}
	}
	
	return true;
}

function verify_start_date1(ladate)
{
	var erreur = false;
	var debut;
	var datedujour;
	var mydate=new Date();
	var year=mydate.getYear();
	if(year < 1900) year += 1900;
	var month=mydate.getMonth();
	var day=mydate.getDate();
	month += 1;
	datedujour = year+"-";
	if(month < 10) datedujour += "0"+month+"-"; else datedujour += month+"-";
	if(day < 10) datedujour += "0"+day; else datedujour += day;

	debut = ladate.split("-");
	
	if(debut[0] < year) erreur = true;
	else
	if(( debut[0] == year)&&( debut[1] < month) ) erreur = true;
	else
	if(( debut[0] == year)&&( debut[1] == month)&&( debut[2] < day) )
	{

		debut[1] = parseInt(debut[1],10)+1;
		if(debut[1] > 12)
		{
			debut[1] = "01";
			debut[0] = parseInt(debut[0],10)+1;
		}
		if(debut[1] < 10) debut[1] = "0"+parseInt(debut[1],10);
		if(debut[2] < 10) debut[2] = "0"+parseInt(debut[2],10);

		ladate = debut[0]+"-"+debut[1]+"-"+debut[2];

		document.getElementById('sday1').selectedIndex = debut[2];
		document.getElementById('smonth1').selectedIndex = debut[1];
		document.getElementById('syear1').selectedIndex = parseInt(debut[0],10)-2008;
		document.getElementById('startdate1').value = ladate;
		document.getElementById('startdatetpn1').value = ladate;
		manage_days1("web");
		erreur = false;
	}
	
	if(erreur == false)
		return ladate;
	else
	{
		document.getElementById('sday1').selectedIndex = day;
		document.getElementById('smonth1').selectedIndex = month;
		document.getElementById('syear1').selectedIndex = parseInt(year,10)-2008;
		document.getElementById('startdate1').value = datedujour;
		document.getElementById('startdatetpn1').value = datedujour;
		return datedujour;
	}
}

function ComparerDates1(LeParam1,LeParam2)
{
	var debut;
	var fin;
	var ladate;
	
	debut = LeParam1.split("-");
	fin = LeParam2.split("-");

	if(fin[0] < debut[0]) return 1;
	if( (fin[0] == debut[0]) && (fin[1] < debut[1])) return 1;
	if( (fin[0] == debut[0]) && (fin[1] == debut[1]) && (fin[2] < debut[2]))
	{
		fin[1] = parseInt(fin[1],10)+1;
		if(fin[1] > 12)
		{
			fin[1] = "01";
			fin[0] = parseInt(fin[0],10)+1;
		}
		if(fin[1] < 10) fin[1] = "0"+parseInt(fin[1],10);
		if(fin[2] < 10) fin[2] = "0"+parseInt(fin[2],10);

		ladate = fin[0]+"-"+fin[1]+"-"+fin[2];

		document.getElementById('eday1').selectedIndex = fin[2];
		document.getElementById('emonth1').selectedIndex = fin[1];
		document.getElementById('eyear1').selectedIndex = parseInt(fin[0],10)-2008;
		document.getElementById('enddate1').value = ladate;
		document.getElementById('enddatetpn1').value = ladate;
		manage_days1("web");
	}

	return 0;
}

function test_max_rent1(date1,date2,heure1,heure2)
{
	var year;
	var month;
	var day;
	
	var debut = date1.split("-");
	var fin = date2.split("-");

	var heuredeb = heure1.split(":");
	var heurefin = heure2.split(":");

	var d = new Date(parseInt(debut[0],10),parseInt(debut[1],10)-1,parseInt(debut[2],10),parseInt(heuredeb[0],10),parseInt(heuredeb[1],10));
	var f = new Date(parseInt(fin[0],10),parseInt(fin[1],10)-1,parseInt(fin[2],10),parseInt(heurefin[0],10),parseInt(heurefin[1],10));

	var nbdays = Math.round((f-d)/86400000)+1;

	if(nbdays < 31)
		return true;
	else 
		return false;
}

