var RESERVED_DAYS = new Array();
var PRICE         = new Array();
var DAYS_MIN      = new Array();

function dateChanged(cal) {
	
	if (calendar.dateClicked) {
    	updateDepartDate(id, arrive, days);
    }

	cal.hide();
    return true;
}

function dateIsSpecial(id, year, month, day) {
	if(RESERVED_DAYS[id][year] == undefined)
		return false;
    var m = RESERVED_DAYS[id][year][month];
    if (!m) return false;
    for (var i in m) if (m[i] == day) return true;
    return false;
}

function updatePrice(id) {
	var objPrice = document.getElementById("pricePerDay_"+id);
	price = parseInt(objPrice.innerHTML);
	
	var name = "form"+id;
	var days = parseInt(document.forms[name].days.value);
	
	var arrive = new String(document.getElementById("date_arrive_"+id).value);
	if(arrive.length>0)
		changeArriveDate(id);
		
	changeMinDays(id, arrive);
}

function changeMinDays(id, arrive) {
	var count = DAYS_MIN.length;
	var name = "form"+id;
	
	//document.forms[name].elements["days"].options[1].selected = true;
	for(var i=0; i<30; i++)
		document.forms[name].elements["days"].options[i].disabled = false;
	
	for(var i=0; i<count; i++) {
		if(DAYS_MIN[i][0] == arrive) {
			var start = DAYS_MIN[i][1];
			
			document.forms[name].elements["days"].options[start-1].selected = true;
			
			for(var i=0; i<start-1; i++)
				document.forms[name].elements["days"].options[i].disabled = true;
				
			return 1;
		}
	}
	
	return 0;
}

function setPriceByDate(id) {
	var arrive = new String(document.getElementById("date_arrive_"+id).value);
	arrive = arrive.split(".");
	arrive = new Date(arrive[2], arrive[1]-1, arrive[0]);
	
	for(var i=0; i<PRICE[id].length; i++) {
		var start = PRICE[id][i][0].split("-");
		var end   = PRICE[id][i][1].split("-");
		start     = new Date(start[0], start[1]-1, start[2]);
 		end       = new Date(end[0], end[1]-1, end[2]);

 		if((arrive.getTime() > start.getTime()) && (arrive.getTime() < end.getTime())) {
 			var day = arrive.getDay();
 			if(day < 4)
 				price = PRICE[id][i][2];
 			else
 				price = PRICE[id][i][3];
 			
 			var objPrice = document.getElementById("pricePerDay_"+id);
			objPrice.innerHTML = parseInt(price);
 			updatePrice(id);
			
 			break;
 		}
	}
}

function changeArriveDate(id) {
	// Zmiana daty wyjazdu
	var arrive = new String(document.getElementById("date_arrive_"+id).value);
	var arrayDate = arrive.split('.'); 
	
	var name = "form"+id;
	var days = parseInt(document.forms[name].days.value);

	var depart_date = new Date(arrayDate[2], arrayDate[1]-1, parseInt(arrayDate[0], 10)+days);
	var depart = formatZero(depart_date.getDate())+"."+formatZero(depart_date.getMonth()+1)+"."+depart_date.getFullYear();
	document.getElementById("dateDepart_"+id).innerHTML = depart;
}

function formatZero(str) {
	var a = parseInt(str);
	if(a < 10)
		return "0"+a;
	else
		return a;
}

function checkForm(form) {
	if(form.date_arrive.value == "") {
		alert('Proszę wybrac datę przyjazdu');
		return false;
	}
	else
		return true;
}

function isArray(obj) {
    return obj.constructor == Array;
}

function showFacture() {
	var div = document.getElementById("facture");
	if(div.style.display == "block") {
		div.style.display = "none";
	}
	else {
		div.style.display = "block";
	}
}

