//show Date Time Year

var 	dayArray = new Array();
var 	selDay1;
var 	selDay2;
var	selDay3;
var	selDay4;
var 	month;
var 	dYear;
	
allMonths = new Array(	"01;1","02;2","03;3","04;4","05;5","06;6","07;7","08;8","09;9","10;10",
			"11;11","12;12","13;13","14;14","15;15","16;16","17;17","18;18","19;19","20;20",
			"21;21","22;22","23;23","24;24","25;25","26;26","27;27","28;28","29;29","30;30","31;31");
			
allMonth = new Array(	"01;1","02;2","03;3","04;4","05;5","06;6","07;7","08;8","09;9","10;10",
			"11;11","12;12");

function setDefaultDate(dfYear, dfMonth, dfDay, DBYear, DBMonth, DBDay, act, fieldNo)
{
	var current = new Date();
	var currentYear = current.getFullYear();
	var currentMonth = current.getMonth();
	var currentDay = current.getDate();
	
	if( act == 1 )
	dfYear.value = DBYear;
	else if (act == 0)
	{
		dfYear.value = currentYear;
	}
	
	dfMonth.length = 1;
	var j = 1;
	if( act == 1)
	{
		for(var n=0; n< allMonth.length; n++)
	 	{
		        newOpt=new Option;
			i = allMonth[n].search(';');
		        newOpt.value = allMonth[n].slice(i+1);
		        newOpt.text = allMonth[n].slice(0,i);
			dfMonth.options[j] = newOpt;
			if( n == DBMonth - 1)
			newOpt.selected = true;
			j = j + 1;
	  	}
	  	
	  	if ( (DBYear%4 == 0 && DBYear%100 != 0) || DBYear%400 == 0)
			dYear = 1;
		else	
			dYear = 0;
		
		month = DBMonth;
  	}
  	else if(act == 0)
  	{
  		for(var n=0; n< allMonth.length; n++)
	 	{
		        newOpt=new Option;
			i = allMonth[n].search(';');
		        newOpt.value = allMonth[n].slice(i+1);
		        newOpt.text = allMonth[n].slice(0,i);
			dfMonth.options[j] = newOpt;
			if( n == currentMonth)
			newOpt.selected = true;
			j = j + 1;
	  	}
	  	
	  	if ( (currentYear%4 == 0 && currentYear%100 != 0) || currentYear%400 == 0)
			dYear = 1;
		else	
			dYear = 0;
		
		month = currentMonth+1;
  	}
  		
  	dfDay.length = 1;
	var m = 1;
	if( act == 1)
	{
		var arr = getDay(DBMonth);
		for(var n=0; n< arr.length; n++)
	 	{
		        newOpt=new Option;
			i = arr[n].search(';');
		        newOpt.value = arr[n].slice(i+1);
		        newOpt.text = arr[n].slice(0,i);
			dfDay.options[m] = newOpt;
			if( n == DBDay - 1)
			newOpt.selected = true;
			m = m + 1;
	  	}
	  	if( fieldNo == 1)
    			selDay1 = DBDay;
    		else if( fieldNo == 2)
    			selDay2 = DBDay;
    		else if( fieldNo == 3)
    			selDay3 = DBDay;
    		else if( fieldNo == 4)
    			selDay4 = DBDay;
	}
	else if (act == 0)
	{
		var arr = getDay(currentMonth+1);
		for(var n=0; n< arr.length; n++)
	 	{
		        newOpt=new Option;
			i = arr[n].search(';');
		        newOpt.value = arr[n].slice(i+1);
		        newOpt.text = arr[n].slice(0,i);
			dfDay.options[m] = newOpt;
			if( n == currentDay - 1)
			newOpt.selected = true;
			m = m + 1;
		}
		selDay1 = currentDay;
		selDay2 = currentDay;
		selDay3 = currentDay;
		selDay4 = currentDay;
	}
}

function getYear(x)
{
	var inputYear;
	inputYear = x.value;
	if ( (inputYear%4 == 0 &&inputYear%100 != 0) || inputYear%400 == 0)
		dYear = 1;
	else	
		dYear = 0;
}
	
function setMonth(input, selField, fieldNum)
{
	month = getSelectedMonth(input);
	if(month != '')
  	{
  		loadDay(month, selField, fieldNum);
  	}
}

function setDay(input, fieldNum)
{
	day = getSelectedMonth(input);
	if(day != '')
  	{
    		if( fieldNum == 1)
    			selDay1 = day;
    		else if( fieldNum == 2)
    			selDay2 = day;
    		else if( fieldNum == 3)
    			selDay3 = day;
    		else if( fieldNum == 4)
    			selDay4 = day;
    	}
}

function getSelectedMonth(userInput)
{
	var selectedMonth;
	
	for(var i=0; i< userInput.options.length; i++)
  	{
   		if(userInput.options[i].selected && userInput.options[i].value != '')
   		{
      			selectedMonth = userInput.options[i].value;
		}
	}
	return selectedMonth;
}

function loadDay(inputMonth, dayField, fieldNo)
{
	dayField.length = 1;
	var arr = getDay(inputMonth);
	var j = 1;
	if( fieldNo == 1)
	{
		for(var n=0; n< arr.length; n++)
	 	{
		        newOpt=new Option;
			i = arr[n].search(';');
		        newOpt.value = arr[n].slice(i+1);
		        newOpt.text = arr[n].slice(0,i);
			dayField.options[j] = newOpt;
			if( n == (selDay1 - 1))
				newOpt.selected = true;
			j = j + 1;
	  	}
  	}
  	else if( fieldNo == 2)
	{
		for(var n=0; n< arr.length; n++)
	 	{
		        newOpt=new Option;
			i = arr[n].search(';');
		        newOpt.value = arr[n].slice(i+1);
		        newOpt.text = arr[n].slice(0,i);
			dayField.options[j] = newOpt;
			if( n == (selDay2 - 1))
				newOpt.selected = true;
			j = j + 1;
	  	}
  	}
  	else if( fieldNo == 3)
	{
		for(var n=0; n< arr.length; n++)
	 	{
		        newOpt=new Option;
			i = arr[n].search(';');
		        newOpt.value = arr[n].slice(i+1);
		        newOpt.text = arr[n].slice(0,i);
			dayField.options[j] = newOpt;
			if( n == (selDay3 - 1))
				newOpt.selected = true;
			j = j + 1;
	  	}
  	}
  	else if( fieldNo == 4)
	{
		for(var n=0; n< arr.length; n++)
	 	{
		        newOpt=new Option;
			i = arr[n].search(';');
		        newOpt.value = arr[n].slice(i+1);
		        newOpt.text = arr[n].slice(0,i);
			dayField.options[j] = newOpt;
			if( n == (selDay4 - 1))
				newOpt.selected = true;
			j = j + 1;
	  	}
  	}
}

function getDay(corrMonth)
{
	dayArr = new Array(); 	
	dayArr = dayArr.concat(allMonths);
	
	if(corrMonth == '1' || corrMonth == '3' || corrMonth == '5' || corrMonth == '8' || corrMonth == '10' || corrMonth == '12')
	{
		return dayArr;
	}
	if(corrMonth == '4' || corrMonth == '6' || corrMonth == '7' || corrMonth == '9' || corrMonth == '11' )
	{
		dayArr=removeElement(dayArr, '31');	
		return dayArr;
	}
	if(corrMonth == '2' && dYear == 1)
	{
		dayArr=removeElement(dayArr, '31');
		dayArr=removeElement(dayArr, '30');	
		return dayArr;
	}
	if(corrMonth == '2' && dYear == 0)
	{
		dayArr=removeElement(dayArr, '31');	
		dayArr=removeElement(dayArr, '30');
		dayArr=removeElement(dayArr, '29');
		return dayArr;
	}
}	

function removeElement(arr, element)
{
	for(i=0; i< arr.length; i++)
	{
		if(arr[i].search(';'+element)!=-1)
		{
			arr1 = arr.slice(0, i);
			arr2 = arr.slice(i+1);
			arr = arr1.concat(arr2);
			return arr;
		}
	}
}
