// Handles all the functions for the package builder
var pbDestination = null;
var pbRegion = null;
var pbResort = null;
var pbAirport = null;
var pbCurrDestination = 0;
var pbCurrRegion = 0;
var pbCurrResort = 0;
var pbCurrAirport = 0;
var pbSetup = false;

function packageBuilderSetup(){
	if(!pbSetup){
		if(pbDestination == null){
			pbDestination = document.getElementById('pb-destination');
		}
		if(pbRegion == null){
			pbRegion = document.getElementById('pb-region');
		}
		if(pbResort == null){
			pbResort = document.getElementById('pb-resort');
		}
		if(pbAirport == null){
			pbAirport = document.getElementById('pb-airport');
		}
		rebuildPackageBuilder('setup');
		pbSetup = true;
	}
}
function packageBuilderDestination(){
	pbCurrDestination = pbDestination.options[pbDestination.selectedIndex].value;
	rebuildPackageBuilder('destination');
	return false;
}
function packageBuilderRegion(){
	pbCurrRegion = pbRegion.options[pbRegion.selectedIndex].value;
	rebuildPackageBuilder('region');
	return false;
}
function packageBuilderResort(){
	pbCurrResort = pbResort.options[pbResort.selectedIndex].value;
	rebuildPackageBuilder('resort');
	return false;
}
function packageBuilderAirport(){
	pbCurrAirport = pbAirport.options[pbAirport.selectedIndex].value;
	return false;
}

function packageBuilderAddOption(list, value, text){
	var option = document.createElement("OPTION");
	option.text = text;
	option.value = value;
	if(list == 'destination'){
		if(value == pbCurrDestination){	option.setAttribute("selected","selected");		}		   
		pbDestination.options.add(option);
	} else if(list == 'region'){
		if(value == pbCurrRegion){		option.setAttribute("selected","selected");		}		   
		pbRegion.options.add(option);
	} else if(list == 'resort'){
		if(value == pbCurrResort){		option.setAttribute("selected","selected");		}		   
		pbResort.options.add(option);
	} else {
		if(value == pbCurrAirport){		option.setAttribute("selected","selected");		}		   
		pbAirport.options.add(option);
	}
}
function packageBuilderClearOptions(list){
	var clearList = null;
	if(list == 'destination'){
		clearList = pbDestination;
	} else if(list == 'region'){
		clearList = pbRegion;
	} else if(list == 'resort'){
		clearList = pbResort;
	} else if(list == 'airport'){
		clearList = pbAirport;
	}
	if(clearList != null){
		for(var a = clearList.length-1; a > 0; a--){
			if(clearList.options[a]){
				clearList.remove(a);
			}
		}
	}
}

function rebuildPackageBuilder(level){
	var dataArr = new Array();
	dataArr['level'] = level;
	dataArr['destination'] = pbCurrDestination;
	dataArr['region'] = pbCurrRegion;
	dataArr['resort'] = pbCurrResort;
	dataArr['airport'] = pbCurrAirport;
	dispatchAjax('packageRebuilder.inc.php', dataArr);
}

var dayList = null;
var monthList = null;
var savedDay = 0;
var savedMonth = 0;
function setDays(){
	if(dayList == null){	dayList = document.getElementById('day-of-month');	}
	if(monthList == null){	monthList = document.getElementById('month-year');	}
	savedDay = dayList.options[dayList.selectedIndex].value;
	savedMonth = monthList.options[monthList.selectedIndex].value;
	var month = savedMonth.toString().substr(4, 2);
	var days = 31;
	if(month == '09' || month == '04' || month == '06' || month == '11'){
		days = 30;
	} else if(month == '02'){
		var year = savedMonth.toString().substr(0, 4);
		if(new Date(year,1,29).getDate() == 29){
			days = 29;
		} else {
			days = 28;	
		}
	}
	if(dayList.length < days){
		for(var a = dayList.length+1; a <= days; a++){
			var option = document.createElement("OPTION");
			option.text = a;
			option.value = a;
			dayList.options.add(option);
		}
	} else {
		for(var a = dayList.length-1; a >= days; a--){
			if(dayList.options[a]){
				dayList.remove(a);
			}
		}
	}	
}
function updateDay(){
	if(dayList == null){	dayList = document.getElementById('day-of-month');	}
	if(monthList == null){	monthList = document.getElementById('month-year');	}
	savedDay = dayList.options[dayList.selectedIndex].value;
	savedMonth = monthList.options[monthList.selectedIndex].value;
	if(savedDay > 0 && savedMonth != 0){
		var month = savedMonth.toString().substr(4, 2);
		var year = savedMonth.toString().substr(0, 4);
		var day = new Date(year,month,savedDay).getDay();
		if(day == 0){	day = 'Sunday';	} 
		else if(day == 1){	day = 'Monday';	} 
		else if(day == 2){	day = 'Tuesday';	} 
		else if(day == 3){	day = 'Wednesday';	} 
		else if(day == 4){	day = 'Thursday';	} 
		else if(day == 5){	day = 'Friday';	} 
		else if(day == 6){	day = 'Saturday';	} 
		else {	day = 'Monday';	}
		document.getElementById('day-name-for-date').innerHTML = day;
	} else {
		document.getElementById('day-name-for-date').innerHTML = 'Monday';
	}
}
var dayListTwo = null;
var monthListTwo = null;
var savedDayTwo = 0;
var savedMonthTwo = 0;
function setDaysTwo(){
	if(dayListTwo == null){	dayListTwo = document.getElementById('day-of-month-two');	}
	if(monthListTwo == null){	monthListTwo = document.getElementById('month-year-two');	}
	savedDayTwo = dayListTwo.options[dayListTwo.selectedIndex].value;
	savedMonthTwo = monthListTwo.options[monthListTwo.selectedIndex].value;
	var monthTwo = savedMonthTwo.toString().substr(4, 2);
	var daysTwo = 31;
	if(monthTwo == '09' || monthTwo == '04' || monthTwo == '06' || monthTwo == '11'){
		daysTwo = 30;
	} else if(monthTwo == '02'){
		var yearTwo = savedMonthTwo.toString().substr(0, 4);
		if(new Date(yearTwo,1,29).getDate() == 29){
			daysTwo = 29;
		} else {
			daysTwo = 28;	
		}
	}
	if(dayListTwo.length < daysTwo){
		for(var d = dayListTwo.length+1; a <= daysTwo; a++){
			var optionTwo = document.createElement("OPTION");
			optionTwo.text = d;
			optionTwo.value = d;
			dayListTwo.options.add(optionTwo);
		}
	} else {
		for(var d = dayListTwo.length-1; d >= daysTwo; d--){
			if(dayListTwo.options[d]){
				dayListTwo.remove(d);
			}
		}
	}	
}
function updateDayTwo(){
	if(dayListTwo == null){	dayListTwo = document.getElementById('day-of-month-two');	}
	if(monthListTwo == null){	monthListTwo = document.getElementById('month-year-two');	}
	savedDayTwo = dayListTwo.options[dayListTwo.selectedIndex].value;
	savedMonthTwo = monthListTwo.options[monthListTwo.selectedIndex].value;
	if(savedDayTwo > 0 && savedMonthTwo != 0){
		var monthTwo = savedMonthTwo.toString().substr(4, 2);
		var yearTwo = savedMonthTwo.toString().substr(0, 4);
		var dayTwo = new Date(yearTwo,monthTwo,savedDayTwo).getDay();
		if(dayTwo == 0){	dayTwo = 'Sunday';	} 
		else if(dayTwo == 1){	dayTwo = 'Monday';	} 
		else if(dayTwo == 2){	dayTwo = 'Tuesday';	} 
		else if(dayTwo == 3){	dayTwo = 'Wednesday';	} 
		else if(dayTwo == 4){	dayTwo = 'Thursday';	} 
		else if(dayTwo == 5){	dayTwo = 'Friday';	} 
		else if(dayTwo == 6){	dayTwo = 'Saturday';	} 
		else {	dayTwo = 'Monday';	}
		document.getElementById('day-name-for-date-two').innerHTML = dayTwo;
	} else {
		document.getElementById('day-name-for-date-two').innerHTML = 'Monday';
	}
}

var optionBox = null;
var optionButton = null;
function showOptions(){
	if(optionButton == null){
		optionButton = document.getElementById('packageShowOptionsButton');	
	}
	if(optionBox == null){
		optionBox = document.getElementById('hidden-package-options');
	}
	if(optionBox.style.display == 'none'){
		optionBox.style.display = 'block';
		optionButton.innerHTML = 'less options';
		optionButton.className = 'dbl-arrow-down';
	} else {
		optionBox.style.display = 'none';
		optionButton.innerHTML = 'more options';
		optionButton.className = 'dbl-arrow-small';
	}
}