// JavaScript Document
function getVar(name){
	get_string = document.location.search;         
	return_value = '';
	
	do { //This loop is made to catch all instances of any get variable.
		name_index = get_string.indexOf(name + '=');
		
		if(name_index != -1){
			get_string = get_string.substr(name_index + name.length + 1, get_string.length - name_index);
			end_of_value = get_string.indexOf('&');
		  
			if(end_of_value != -1)                
				value = get_string.substr(0, end_of_value);                
		 	else                
				value = get_string;                

			if(return_value == '' || value == '')
				return_value += value;
			else
				return_value += ', ' + value;
			}
		  
	} while(name_index != -1)
	
	//Restores all the blank spaces.
	space = return_value.indexOf('+');
	while(space != -1){ 
		return_value = return_value.substr(0, space) + ' ' + 
		return_value.substr(space + 1, return_value.length);
					 
		space = return_value.indexOf('+');
	}
	
	return(return_value);        
}
function echoDate(date, str) {
	var echo = dateToString( date, "d.m.y");
	alert( str+' => '+echo);
}
function calcTime(offset) {
    date = new Date();
    utc = date.getTime() + (date.getTimezoneOffset() * 60000);
    nd = new Date(utc + (3600000*offset));
    return nd;
}
function dateToString(date, str) {
	var d = date.getDate();
	var m = date.getMonth() + 1;
	var y = date.getFullYear();
	str = str.split("y").join(date.getFullYear());
	str = str.split("m").join( ((m<10)? "0":"") + m );
	str = str.split("d").join( ((d<10)? "0":"") + d );
	return str;
}
function initDate() {
	//alert('init');
	var d1 = getVar('date1');
	var d2 = getVar('date2');
	if(d1 && d2){
		document.forms['check'].elements['date1'].value = d1;
		if(d1.substr(0, 1) == '0')
			var jour = parseInt(d1.substr(1, 1));
		else
			var jour = parseInt(d1.substr(0, 2));
		if(d1.substr(3, 1) == '0')
			var mois = parseInt(d1.substr(4, 1)) - 1;
		else
			var mois = parseInt(d1.substr(3, 2)) - 1;
		var an = parseInt(d1.substr(6, 4));
		var date1 = new Date(an, mois, jour);
		document.forms['check'].elements['date2'].value = d2;
		if(d2.substr(0, 1) == '0')
			var jour = parseInt(d2.substr(1, 1));
		else
			var jour = parseInt(d2.substr(0, 2));
		if(d2.substr(3, 1) == '0')
			var mois = parseInt(d2.substr(4, 1)) - 1;
		else
			var mois = parseInt(d2.substr(3, 2)) - 1;
		var an = parseInt(d2.substr(6, 4));
		var date2 = new Date(an, mois, jour);
		updateNights(date1, date2);
		document.forms['check'].elements['bedrooms'].value = getVar('bedrooms');
	} else {
		var today = new Date();
		today = calcTime('+7');
		today.setHours(0);
		today.setMinutes(0);
		today.setSeconds(0);
		today.setMilliseconds(0);
		var date2 = new Date();
		date2.setTime( today.getTime() + ( 5*24*60*60*1000 ) );
		document.forms['check'].elements['date1'].value = dateToString( today, "d.m.y");
		document.forms['check'].elements['date2'].value = dateToString(date2, "d.m.y");
		updateNights(today, date2);
	}
}
function verifyDates(date) {
	var today = new Date();
	today = calcTime('+7');
	today.setHours(0);
	today.setMinutes(0);
	today.setSeconds(0);
	today.setMilliseconds(0);
	//alert('today: '+today.toLocaleString());
	var sdate1 = document.forms['check'].elements['date1'].value;
	if(sdate1.substr(0, 1) == '0')
		var jour = parseInt(sdate1.substr(1, 1));
	else
		var jour = parseInt(sdate1.substr(0, 2));
	if(sdate1.substr(3, 1) == '0')
		var mois = parseInt(sdate1.substr(4, 1)) - 1;
	else
		var mois = parseInt(sdate1.substr(3, 2)) - 1;
	var an = parseInt(sdate1.substr(6, 4));
	var date1 = new Date(an, mois, jour);
	//alert('date 1: '+date1.toLocaleString());
	var sdate2 = document.forms['check'].elements['date2'].value;
	if(sdate2.substr(0, 1) == '0')
		jour = parseInt(sdate2.substr(1, 1));
	else
		jour = parseInt(sdate2.substr(0, 2));
	if(sdate2.substr(3, 1) == '0')
		mois = parseInt(sdate2.substr(4, 1)) - 1;
	else
		mois = parseInt(sdate2.substr(3, 2)) - 1;
	an = parseInt(sdate2.substr(6, 4));
	var date2 = new Date(an, mois, jour);
	//alert('date 2: '+date2.toLocaleString());
	
	if(date2.getTime() <= today.getTime()  || date1.getTime() < today.getTime())
		initDate(1);
	else {	
		if(date2.getTime() <= date1.getTime() && date == 1){
			date2.setTime( date1.getTime() + ( 1*24*60*60*1000 ) );
			document.forms['check'].elements['date2'].value = dateToString(date2, "d.m.y");
		}
		if(date2.getTime() <= date1.getTime() && date == 2){
			date1.setTime( date2.getTime() - ( 1*24*60*60*1000 ) );
			document.forms['check'].elements['date1'].value = dateToString(date1, "d.m.y");
		}
		if(date2.getTime() <= today.getTime()  || date1.getTime() < today.getTime())
			initDate(1);
		else
			updateNights(date1, date2);
	}
}
function updateNights(date1, date2) {
	var nights = Math.ceil(( date2 - date1 ) / 86400000);
	document.forms['check'].elements['nights'].value = nights;
}
