function changeTheSearchPage(id){
	if (id==1){
		gid('search_google_map').style.display='none';
		gid('search_google_map_top').style.display='none';
		gid('search_results').style.display='none';
		gid('search_results_top').style.display='none';
		
		gid('tab2').className='tab_on';
		gid('tab1').className='tab_off';
	} else if (id==0){
	    gid('search_google_map').style.display='none';
		gid('search_google_map_top').style.display='none';
		gid('search_results').style.display='block';
		gid('search_results_top').style.display='block';
		
		gid('tab2').className='tab_off';
		gid('tab1').className='tab_on';
	} else if (id==3){
	    gid('search_google_map').style.display='none';
		gid('search_google_map_top').style.display='none';
		gid('search_results').style.display='block';
		gid('search_results_top').style.display='block';
		
		gid('tab2').className='tab_off';
		gid('tab1').className='tab_on';
	}	
}

function gid(id)
{
    var el = document.getElementById(id);
    if (el) return el;
    else return false;
    
}


function showHide(id)
{
    var EL= document.getElementById(id);
    if (EL)
    {
        if (EL.style.display=='none')
        {
            EL.style.display='block';
        }
        else
        {
            EL.style.display='none';
        }
    }
}

function validate() {
    return   ValidateForm();
   
}

function incorrectDate() {
    var result = gid('bs_search_end_date');
    result.innerHTML = '<strong>Incorrect date!</strong>';
}

/** VALIDATE ! */
/**
 * DHTML date validation script for dd/mm/yyyy. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
// Declaring valid date character, minimum year and maximum year
var dtCh= "-";
var minYear=1900;
var maxYear=2100;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		setDateError("The date format should be : dd/mm/yyyy")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		setDateError("Please enter a valid month")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		setDateError("Please enter a valid day")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		setDateError("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		setDateError("Please enter a valid date")
		return false
	}
return true
}

function ValidateForm(){
	var dt= gid('bs_date');
	if (isDate(dt.value)==false){
		dt.focus()
		return false
	}
	setDateOK();
    return true
}

function setDateError(msg) {
    gid('bs_search_end_date').innerHTML = msg;
    gid('bs_search_end_date').style.color = "#FF0000";
    gid('bs_date').style.borderColor = "#FF9999";
    gid('bs_date').style.color = "#FF0000";
}

function setDateOK(){
    
    gid('bs_search_end_date').style.color = "#555555";
    gid('bs_date').style.borderColor = "#555555";
    gid('bs_date').style.color = "#555555";
    
     var result = gid('bs_search_end_date');
    var date = gid('bs_date').value;
    var nights = gid('bs_nights').value;
    if (result && date) {
        
    /** count checkout date **/
    var date = gid('bs_date').value;
    var nights = gid('bs_nights').value;
      
    arr = date.split("-");
    if (arr.length >= 3){
        stamp = new Date(arr[2],(arr[1]-1),(arr[0]),0,0,0);
        
        // new date!
        newdate = new Date(stamp.getTime() + nights*24*60*60*1000);
        gid('bs_search_end_date').innerHTML = "Checkout : <strong>"
                    +newdate.getDate()+"-"+(newdate.getMonth()+1)+"-"
                    +newdate.getFullYear()+"</strong>";
    }
    
    return true;
       
    }
    return false;
    
}
