
function monthname(language,index) {
  	var monthtext_en=['January','February','March','April','May','June','July','August','September','October','November','December'];
	var monthtext_fr=['Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Decembre'];
	var monthtext_nl=['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December'];
  	switch(language){
	case 1:	/* English */
		return monthtext_en[index]; break;
	case 2:	/* French */
		return monthtext_fr[index]; break;
	case 3:	/* Dutch */
		return monthtext_nl[index]; break;
		}
	}

function dayname(language,index) {
  	var daytext_en=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
	var daytext_fr=["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"];
	var daytext_nl=["Zondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrijdag","Zaterdag"];
  	switch(language){
	case 1:	/* English */
		return daytext_en[index]; break;
	case 2:	/* French */
		return daytext_fr[index]; break;
	case 3:	/* Dutch */
		return daytext_nl[index]; break;
		}
	}


var daysinmonthlist = [31,28,31,30,31,30,31,31,30,31,30,31];

function isleapyear(year) {
	if(year%400==0||(year%4==0&&year%100!=0)) return true;
	return false;	
	}

function daysofmonth(month,year) {
	if (month==1 && isleapyear(year)) return 29;
	return daysinmonthlist[month];
	}

function populatedate(language,day,month,year,dayfield,monthfield,yearfield,daynamefield){
	var selecteddate=new Date()
	var daynamefield=document.getElementById(daynamefield)
	var dayselectfield=document.getElementById(dayfield)
	var monthselectfield=document.getElementById(monthfield)
	var yearselectfield=document.getElementById(yearfield)
	selecteddate.setFullYear(year)
	selecteddate.setMonth(month-1)
	selecteddate.setDate(day)
	dayselectfield.options.length=0;
	monthselectfield.options.length=0;
	yearselectfield.options.length=0;
	thisday=selecteddate.getDay()
	daynamefield.innerHTML=dayname(language,thisday)
	for (var i=0; i<daysofmonth(selecteddate.getMonth(),selecteddate.getYear()); i++)
		dayselectfield.options[i]=new Option(i+1, i+1)
	dayselectfield.options[selecteddate.getDate()-1]=new Option(selecteddate.getDate(), selecteddate.getDate(), true, true)
	for (var m=0; m<12; m++)
		monthselectfield.options[m]=new Option(monthname(language,m),m+1)
	monthselectfield.options[selecteddate.getMonth()]=new Option(monthname(language,selecteddate.getMonth()), selecteddate.getMonth()+1, true, true)
	var today= new Date()
	thisyear=today.getFullYear()
	if (thisyear==selecteddate.getFullYear()) {
		yearselectfield.options[0]=new Option(selecteddate.getFullYear(), selecteddate.getFullYear(), true, true)
		yearselectfield.options[1]=new Option(thisyear+1, thisyear+1)
		}
	else {
		yearselectfield.options[0]=new Option(thisyear, thisyear)
		yearselectfield.options[1]=new Option(selecteddate.getFullYear(), selecteddate.getFullYear(), true, true)
		}
	}


function update (language,day,month,year,dayfield,monthfield,yearfield,daynamefield){
	var selecteddate=new Date()
	var currentdate=new Date()
	var dayselectfield=document.getElementById(dayfield)
	var monthselectfield=document.getElementById(monthfield)
	var yearselectfield=document.getElementById(yearfield)
	var selectedday=dayselectfield.options[dayselectfield.selectedIndex].value
	var selectedmonth=monthselectfield.options[monthselectfield.selectedIndex].value;
	var selectedyear=yearselectfield.options[yearselectfield.selectedIndex].value
	selecteddate.setFullYear(selectedyear)
	selecteddate.setMonth(selectedmonth-1)
	selecteddate.setDate(selectedday)
	currentdate.setFullYear(year)
	currentdate.setMonth(month-1)
	currentdate.setDate(day)
	if (datetostring(currentdate)>datetostring(selecteddate)) {
/*
		selectedday=day
		selectedmonth=month
		selectedyear=year
*/
		selectedyear=year+1
		}
	olddays=dayselectfield.options.length;
	newdays=daysofmonth(selectedmonth-1,selectedyear);
	if (olddays<newdays) { 
		for (var i=olddays-1; i<newdays; i++)
			dayselectfield.options[i]=new Option(i+1, i+1)
		dayselectfield.options[selectedday-1]=new Option(selectedday, selectedday, true, true) 
		}
	else {
		if (olddays>newdays)  
		    dayselectfield.options.length=newdays
		if (selectedday>newdays) {
			selectedday=newdays
			dayselectfield.options[selectedday-1]=new Option(selectedday, selectedday, true, true) 
			} 
		}	
	selecteddate.setFullYear(selectedyear)
	selecteddate.setMonth(selectedmonth-1)
	selecteddate.setDate(selectedday)
	dayselectfield.options[selecteddate.getDate()-1]=new Option(selecteddate.getDate(), selecteddate.getDate(), true, true)
	monthselectfield.options[selecteddate.getMonth()]=new Option(monthname(language,selecteddate.getMonth()), selecteddate.getMonth()+1, true, true)
	yearselectfield.options[selecteddate.getFullYear()-currentdate.getFullYear()]=new Option(selecteddate.getFullYear(), selecteddate.getFullYear(), true, true)
	document.getElementById(daynamefield).innerHTML=dayname(language,selecteddate.getDay())	
	}


function datetostring(adate) {
	if (Number(adate.getMonth())<=9) 
		if (Number(adate.getDate())<=9) 
			return adate.getFullYear()+"-0"+adate.getMonth()+"-0"+adate.getDate()
		else
			return adate.getFullYear()+"-0"+adate.getMonth()+"-"+adate.getDate()
	else
		if (Number(adate.getDate())<=9) 
			return adate.getFullYear()+"-"+adate.getMonth()+"-0"+adate.getDate()
		else
			return adate.getFullYear()+"-"+adate.getMonth()+"-"+adate.getDate()
	}
		

