window.onload = init_rsvnNewForm;

function init_rsvnNewForm() {
	document.getElementById("years").selectedIndex = 0;
	document.getElementById("months").selectedIndex = 0;
	document.getElementById("months").disabled = true;
	document.getElementById("days").disabled = true;
	
	document.getElementById("years").onchange = yearIsSet;
	document.getElementById("months").onchange = populateDays;
	document.getElementById("days").onchange = getDayOfWeek; //function to show the Day of Week
	
	document.getElementById("guest_title").selectedIndex = 0; //Guest title 0 index
	document.getElementById("reseller").selectedIndex = 0; //Reseller 0 index
}
function init_rsvnEditForm() {
	document.getElementById("rsvn_type").disabled=true;
	document.getElementById("years").disabled=true;
	document.getElementById("months").disabled=true;
	document.getElementById("days").disabled=true;
}

function yearIsSet() {
	if (this.options.selectedIndex != 0) {
		document.getElementById("months").disabled = false;
		populateDays();
		getDayOfWeek();
	} else {
		document.getElementById("months").selectedIndex = 0;
		document.getElementById("days").selectedIndex = 0;
		document.getElementById("months").disabled = true;
		document.getElementById("days").disabled = true;
		document.getElementById("dayOfWeek").innerHTML = 'Sélectionner une date';
	}
}

function populateDays() {
	if (document.getElementById("months").selectedIndex != 0) {
		var year = document.getElementById("years").value;
		if (isLeapYear(year) == true) {
			var monthDays = new Array('',31,29,31,30,31,30,31,31,30,31,30,31);
		} else {
			var monthDays = new Array('',31,28,31,30,31,30,31,31,30,31,30,31);
		}
		
		var monthStr = document.getElementById("months").value;
		if (monthStr != "") {
			var theMonth = parseInt(monthStr);
			
			document.getElementById("days").options.length = 0;
			document.getElementById("days").options[0] = new Option('Jour');
			for (var i=0; i<monthDays[theMonth]; i++) {
				document.getElementById("days").options[i+1] = new Option(i+1);
			}
		}
		
		document.getElementById("days").disabled = false;
		getDayOfWeek();
	} else {
		document.getElementById("days").selectedIndex = 0;
		document.getElementById("days").disabled = true;
		document.getElementById("dayOfWeek").innerHTML = 'Sélectionner une date';
	}
}

function isLeapYear(year) {
	if ((year % 4) == 0 && (year % 100) != 0 || (year % 400) == 0) {
		return true;
	} else {
		return false;
	}
}

function getDayOfWeek() {
	if (document.getElementById("days").selectedIndex != 0) {
		var dayName = new Array("Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi");
		
		var rsvnYear = document.getElementById("years").value;
		var rsvnMonth = document.getElementById("months").value;
		var rsvnDay = document.getElementById("days").value;
		
		var rsvnDate = new Date(rsvnMonth + "/" + rsvnDay + "/" + rsvnYear);
		//alert(dayName[rsvnDate.getDay()]);
		
		document.getElementById("dayOfWeek").innerHTML = dayName[rsvnDate.getDay()];
	} else {
		document.getElementById("dayOfWeek").innerHTML = 'Sélectionner une date';
	}
}
