function on_leave()
{
if(confirm('Are you sure you want to leave?  All of your search / stay information will be lost.'))
 {
    return true;
 }
 else
 	window.location="search.php#saved"
}

function city_tab(div)
{
	if(div.id=="use_city")
	{
		var position = '-29px';
		$('city_search').style.display="";
		$('hotel_search').style.display="none";
	}
	else if(div.id=="use_hotel")
	{
		var position = '0px';		
		$('hotel_search').style.display="";
		$('city_search').style.display="none";
	}

	var static_background = ' url("images/booking-engine/hotel-city-tab.gif") no-repeat 0px ';		
	$('cityhotel_tab').style.background = static_background + position;
	$('city_or_hotel').value=div.id;
}


var focused_prop = ''


function confirm_cust()
{

    var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: '',
    // Handle successful response
    onSuccess: function(t) {
    	    //Dialog.okCallback()
	switch_links(2);    	    
    test_fail = t.responseText.split('|')
    if(test_fail[0]=='form_fail')
    {
     alert('Please complete `'+test_fail[1].replace('_',' ')+'` field.')
     document.getElementById(test_fail[1]).focus();
     document.getElementById('continue_button').style.display="";
	 document.getElementById('cancel_button').style.display="";
	 document.getElementById('ajax_loader').style.display="none";
    }
    else if(t.responseText == 'serverfail')
    {
     alert('The hotels reservation system is not responding to your request. Please try again.')
	 document.getElementById('continue_button').style.display="";
	 document.getElementById('cancel_button').style.display="";
	 document.getElementById('ajax_loader').style.display="none";
    }
    else if(t.responseText == 'fail')
    {
    alert('Authorization Failed: Please check your credit card information.')
	 document.getElementById('continue_button').style.display="";
	 document.getElementById('cancel_button').style.display="";
	 document.getElementById('ajax_loader').style.display="none";
    }
    else 
    {
    document.getElementById('the_top').focus();
    document.getElementById('customer_information').style.display="none";
    document.getElementById('show_confirmation').style.display="";
    document.getElementById('show_confirmation').innerHTML = t.responseText;
    document.getElementById('reservation-information').innerHTML = '<a href="javascript:;">Confirmation Information</a>';
    disable_all_tabs();
    alert('Your order has been processed.  A confirmation E-Mail has been sent to you.')
    }

 
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

    }
    }
// mask_it('validate')
if(document.getElementById('read_this').checked == true)
{
	switch_links(1);
 new Ajax.Request('includes/Booking.Engine.Class.php?op=show_confirmation&'+Form.serialize($("cust_info")), opt);
 document.getElementById('continue_button').style.display="none";
 document.getElementById('cancel_button').style.display="none";
 document.getElementById('ajax_loader').style.display="";
} 
else
 alert('Please read the important information and check the box to agree to the terms.')
 
}

function switch_links(the_switch)
{
	switch(the_switch)
	{
		case 1: the_onclick=function(){return false;};
					break;
		case 2: the_onclick=function(){};
					break;
	}
	element=document.getElementsByTagName("A")
		for(x=0;x<element.length;x++)	
			element[x].onclick = the_onclick;
}


function disable_all_tabs()
{
	var tab_link = new Array(2);
	tab_link[1] = document.getElementById('tab_link_1');
	tab_link[2] = document.getElementById('tab_link_2');
	tab_link[1].onclick=function(){};
	tab_link[2].onclick=function(){};
}


function update_statelist(the_country)
{
	usa = document.getElementById('us_postcode')
	canada = document.getElementById('canada_postcode')
	australia = document.getElementById('australia_postcode')
	stateface = document.getElementById('state_face')
	zipface = document.getElementById('zip_face')
	stateface_extra = document.getElementById('state_face_extra')
	zipface_extra = document.getElementById('zip_face_extra')
	if(the_country=='US')	
	{
		usa.name = "state"
		canada.name = ""
		australia.name = ""
		australia.style.display="none"
		canada.style.display = "none"
		usa.style.display = ""
		stateface.style.fontWeight = "bold"
		zipface.style.fontWeight = "bold"
		stateface_extra.style.display="";
		zipface_extra.style.display="";
	}
	else if (the_country=='CA')
	{
		usa.name = ""
		australia.name = ""
		australia.style.display="none"
		canada.name = "state"
		canada.style.display = ""
		usa.style.display = "none"		
		stateface.style.fontWeight = "bold"
		zipface.style.fontWeight = "bold"
		stateface_extra.style.display="";
		zipface_extra.style.display="";
	}
	else if (the_country=='AU')
	{
		australia.name = "state"
		australia.style.display=""
		usa.name = ""
		canada.name = ""
		canada.style.display = "none"
		usa.style.display = "none"		
		stateface.style.fontWeight = "bold"
		zipface.style.fontWeight = "bold"
		stateface_extra.style.display="";
		zipface_extra.style.display="";
	}
	else
	{
		australia.name = ""
		australia.style.display="none"
		usa.name = ""
		canada.name = ""
		canada.style.display = "none"
		usa.style.display = "none"		
		stateface.style.fontWeight = "normal"
		zipface.style.fontWeight = "normal"
		stateface_extra.style.display="none";
		zipface_extra.style.display="none";
	}
}


function rate_toggle(prop_id,rate_id)
{
 rate_toggle_link = document.getElementById('rate_toggle_'+prop_id+'_'+rate_id)
 rate_detail = document.getElementById('rate_detail_'+prop_id+'_'+rate_id)
 if(rate_toggle_link.innerHTML == 'More')
 {
 	rate_toggle_link.innerHTML = 'Less'
 	rate_detail.style.display="";
 }
 else
 {
 	rate_toggle_link.innerHTML = 'More'
 	rate_detail.style.display="none";	
 }
	
	
}

function show_rates(prop_id,count_total,start_rate, max_rates)
{

for(i = start_rate; i < max_rates; i++)
	document.getElementById('prop_'+prop_id+'_'+i).style.display="";

next_page = ''
document.getElementById('page_forward_'+prop_id).innerHTML = next_page;

if(i < count_total)
	next_page = '<a href="javascript:;" onclick="page_forward(\''+prop_id+'\',\''+count_total+'\',\'0\',\''+i+'\',\''+max_rates+'\')"> --> </a>'	
else next_page = ''

document.getElementById('page_forward_'+prop_id).innerHTML = next_page;
document.getElementById('show_link_'+	prop_id).innerHTML = '<a href="javascript:;" onclick="hide_rates(\''+prop_id+'\',\''+count_total+'\',\''+start_rate+'\',\''+max_rates+'\')">Show less rates</a>';
}
function hide_rates(prop_id,count_total,start_rate, max_rates)
{
for(i = start_rate; i < count_total; i++)
	document.getElementById('prop_'+prop_id+'_'+i).style.display="none";
	
for(i = 0; i < 3; i++)
	document.getElementById('prop_'+prop_id+'_'+i).style.display="";	

next_page = ''
document.getElementById('page_forward_'+prop_id).innerHTML = next_page;
prev_page = ''
document.getElementById('page_backward_'+prop_id).innerHTML = prev_page;
	
document.getElementById('show_link_'+prop_id).innerHTML = '<a href="javascript:;" onclick="show_rates(\''+prop_id+'\',\''+count_total+'\',\''+start_rate+'\',\''+max_rates+'\')">Show more rates</a>';
}

function rates_pager(start_rate,end_rate,prop_id,total_rates, per_page,direction)
{
var back_button = document.getElementById('previous_rates_'+prop_id)
var forward_button = document.getElementById('next_rates_'+prop_id)
var current_page = document.getElementById('current_rate_page_'+prop_id)
var total_pages = document.getElementById('total_rate_page_'+prop_id)
	
for(i = 0; i < total_rates;i++)
	document.getElementById('prop_'+prop_id+'_'+i).style.display="none";
	
for(i = start_rate;i <= end_rate;i++)
	if(document.getElementById('prop_'+prop_id+'_'+i))
		document.getElementById('prop_'+prop_id+'_'+i).style.display="";
	
// fix buttons


switch(direction)
{
	case 'backward':current_page.innerHTML = (parseInt(current_page.innerHTML)-1)
					break;
	case 'forward':current_page.innerHTML = (parseInt(current_page.innerHTML)+1)
					break;
}


if(start_rate == 0 )
{
	back_button.innerHTML = 'Previous'
}
else
	back_button.innerHTML = '<a href="javascript:;" onclick="rates_pager('+(start_rate-per_page)+','+(start_rate-1)+',\''+prop_id+'\','+total_rates+','+per_page+',\'backward\')">Previous</a>'


	
if(current_page.innerHTML == total_pages.innerHTML )
	forward_button.innerHTML = 'Next'
	
else
	{
		new_end_rate = end_rate+per_page
		if(new_end_rate > (total_rates-1))
			new_end_rate = (total_rates-1)
			forward_button.innerHTML = '<a href="javascript:;" onclick="rates_pager('+(start_rate+per_page)+','+(new_end_rate)+',\''+prop_id+'\','+total_rates+','+per_page+',\'forward\')">Next</a>'	
	}
	
	
	
}


/*
function page_forward(prop_id,count_total, start_rate,new_start, max_rates)
{
	max_rates = parseInt(max_rates);
	start_rate = parseInt(start_rate)
	for(i = start_rate; i < (max_rates + start_rate); i++)
		if(document.getElementById('prop_'+prop_id+'_'+i))
		document.getElementById('prop_'+prop_id+'_'+i).style.display="none";		
	
	for(k = i; k < (i+max_rates); k++)
	  if(document.getElementById('prop_'+prop_id+'_'+k))
		document.getElementById('prop_'+prop_id+'_'+k).style.display="";	

if(k < count_total)
	next_page = '<a href="javascript:;" onclick="page_forward(\''+prop_id+'\',\''+count_total+'\',\''+i+'\',\''+k+'\',\''+max_rates+'\')"> --> </a>'	
else next_page = ''

prev_page = '<a href="javascript:;" onclick="page_backward(\''+prop_id+'\',\''+count_total+'\',\''+start_rate+'\',\''+i+'\',\''+max_rates+'\')"> <-- </a>'	

document.getElementById('page_forward_'+prop_id).innerHTML = next_page;		
document.getElementById('page_backward_'+prop_id).innerHTML = prev_page;			
		
}
function page_backward(prop_id,count_total, start_rate,new_start, max_rates)
{

	max_rates = parseInt(max_rates);
	start_rate = parseInt(start_rate)
	new_start_rate = parseInt(new_start)

	for(i = new_start_rate; i < (max_rates + new_start_rate); i++)
		if(document.getElementById('prop_'+prop_id+'_'+i))
			document.getElementById('prop_'+prop_id+'_'+i).style.display="none";		
	
	for(k = start_rate; k < (start_rate+max_rates); k++)
	  if(document.getElementById('prop_'+prop_id+'_'+k))
		document.getElementById('prop_'+prop_id+'_'+k).style.display="";	

if(k < count_total)
	next_page = '<a href="javascript:;" onclick="page_forward(\''+prop_id+'\',\''+count_total+'\',\''+start_rate+'\',\''+new_start_rate+'\',\''+max_rates+'\')"> --> </a>'	
else next_page = ''
if((k-max_rates) != 0)
 	prev_page = '<a href="javascript:;" onclick="page_backward(\''+prop_id+'\',\''+count_total+'\',\''+(start_rate-max_rates)+'\',\''+(new_start_rate-max_rates)+'\',\''+max_rates+'\')"> <-- </a>'	
else
	prev_page = '';
document.getElementById('page_forward_'+prop_id).innerHTML = next_page;		
document.getElementById('page_backward_'+prop_id).innerHTML = prev_page;			
}
*/



function update_search()
{

new Form.serialize($("search-check-avail"));
    var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: '',
    // Handle successful response
    onSuccess: function(t) {
    temp = t.responseText.replace(/^\s*|\s*$/g,"");
    
    if(temp.length == 0)
    	document.getElementById('search-results-content').innerHTML = '<br/><br/><center><p><b>No results found.  Please change your search criteria and try again</b></p></center><br/><br/>'
    else
    {
    document.getElementById('search-results-content').innerHTML = temp
   // Dialog.okCallback()
    
    document.getElementById('the_top').focus();
    initLightbox()
    }
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

    }
}
//temp = Form.serialize($("search-check-avail"));

//mask_it('search')

	arrive_string = document.getElementById('arrive_search').value
	depart_string = document.getElementById('depart_search').value
	adults = document.getElementById('adults_search').value
	children = document.getElementById('children_search').value
	rooms = document.getElementById('rooms_search').value
    arrive_array = arrive_string.split('/')
    depart_array = depart_string.split('/')
	
	if(arrive_string == depart_string)
		alert('`Check In` and `Check Out` dates cannot be the same or blank.')
	else if(
	(arrive_array[0] > depart_array[0] && arrive_array[2] == depart_array[2] )	
	 || 
	(arrive_array[1] > depart_array[1] && arrive_array[0] == depart_array[0] )
	  ||
	(arrive_array[2] > depart_array[2])

	||
	(arrive_string == '' || depart_string == '') )
		alert('`Check In` date cannot be after `Check Out` date.')
	else
	{
		document.getElementById('search-results-content').innerHTML = "";
		tab_nav(2)
		new Ajax.Request('includes/Booking.Engine.Class.php?op=search&check_in='+arrive_string+'&check_out='+depart_string+'&adults='+adults+'&children='+children+'&rooms='+rooms+'&'+Form.serialize($("search-check-avail")), opt);
	}
//}
}

function mask_it(the_type)
{
Dialog.alert({url: "update.php?the_type="+the_type, options: {method: 'post'}}, {windowParameters: {className: "alert", width:300}, okLabel: "Close"});
//Dialog.info('test')
}
function callbacktest(test)
{
}

function sort_results(sort_by_this,in_this_order)
{
	the_url = 'includes/Booking.Engine.Class.php?op=sort_results&sort_by='+sort_by_this+'&order='+in_this_order;
	use_ajax(the_url,'deep_result')
	var page_backward = document.getElementById('page_backward')
	var page_forward = document.getElementById('page_forward')
	var page_backward_bottom = document.getElementById('page_backward_bottom')
	var page_forward_bottom = document.getElementById('page_forward_bottom')	
	var current_page = document.getElementById('current_page')
	var current_page_bottom = document.getElementById('current_page_bottom')
	
	page_backward.innerHTML = 'Previous';
	page_backward_bottom.innerHTML = 'Previous';
	
	var max_pages = parseInt(document.getElementById('max_pages').innerHTML);
	
	current_page.innerHTML = 1
	current_page_bottom.innerHTML = 1
	
	if(max_pages==1)
	{
		page_forward.innerHTML = 'Next';
		page_forward_bottom.innerHTML = 'Next';
	}	
	else
	{
		page_forward.innerHTML = '<a href="javascript:;" onclick="page_results(2)">Next</a>';	
		page_forward_bottom.innerHTML = '<a href="javascript:;" onclick="page_results(2)">Next</a>';	
	}
}

function page_results(page)
{

	var current_page = document.getElementById('current_page')

	var page_backward = document.getElementById('page_backward')

	var	page_forward = document.getElementById('page_forward')

	var current_page_bottom = document.getElementById('current_page_bottom')

	var page_backward_bottom = document.getElementById('page_backward_bottom')

	var page_forward_bottom = document.getElementById('page_forward_bottom')		

	var max_pages = parseInt(document.getElementById('max_pages').innerHTML);

	the_url = 'includes/Booking.Engine.Class.php?op=page_results&page='+page;
	use_ajax(the_url,'deep_result')
	
	
	if(page==1)
	{
		page_backward.innerHTML = 'Previous';
		page_backward_bottom.innerHTML = 'Previous';
	}	
	else
	{
		page_backward.innerHTML = '<a href="javascript:;" onclick="page_results('+(page-1)+')">Previous</a>';
		page_backward_bottom.innerHTML = '<a href="javascript:;" onclick="page_results('+(page-1)+')">Previous</a>';
	}
	if(page==max_pages)
	{
		page_forward.innerHTML = 'Next';
		page_forward_bottom.innerHTML = 'Next';
	}
	else
	{
		page_forward.innerHTML = '<a href="javascript:;" onclick="page_results('+(page+1)+')">Next</a>';		
		page_forward_bottom.innerHTML = '<a href="javascript:;" onclick="page_results('+(page+1)+')">Next</a>';		
	}

		current_page.innerHTML = page
		current_page_bottom.innerHTML = page
}
function use_ajax(url,target)
{

    var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: '',
    // Handle successful response
    onSuccess: function(t) {
    	
		document.getElementById(target).innerHTML = t.responseText
		initLightbox()
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

    }
    }
 
  document.getElementById(target).innerHTML = '<br/><br/><center><img src="images/booking-engine/ajax-loader.gif" /></center><br/><br/>';	  
  new Ajax.Request(url, opt);
 
}


function tab_nav(this_tab)
{
	var sec = new Array(2) 
	sec[1] = document.getElementById('search-criteria-details')
	sec[2] = document.getElementById('search-results-content')
	sec[3] = document.getElementById('customer_information')
	var tab = new Array(2);
	tab[1] = document.getElementById('search-accommodations')
	tab[2] = document.getElementById('results')
	tab[3] = document.getElementById('reservation-information')
	var tab_link = new Array(2);
	tab_link[1] = document.getElementById('tab_link_1');
	tab_link[2] = document.getElementById('tab_link_2');
	tab_link[3] = document.getElementById('tab_link_3');
	var the_logo = document.getElementById('pegs_logo')
	
	
//document.getElementById('search-results-content').innerHTML = "";
 	switch(this_tab)
 	{
		case 1:	the_logo.style.display="none"
				if(document.getElementById('show_props_id'))			
		 		{
		 			show_props(focused_prop)
		 		}
		 		else
		 			align_props();
 				tab[1].className="current";
 				tab[2].className="";
 				tab[3].className="";
				tab[1].style.display="";
 				//tab[2].style.display="none";
 				tab[3].style.display="none"; 	
 				tab_link[1].onclick=function(){};
 				tab_link[2].onclick=function(){ tab_nav(2); };
 				sec[1].style.display="";
 				sec[2].style.display="none";
 				//sec[2].innerHTML = "";
 				sec[3].innerHTML = "";
 				//sec[3].style.display="none";
				//Effect.Appear(sec[1])
 				break;
		case 2: the_logo.style.display=""
				/*if(sec[3].style.display=="")
					Effect.Fade(sec[3])
				else
					Effect.Fade(sec[1])
				*/
				if(sec[2].innerHTML =="")
					sec[2].innerHTML = '<br/><br/><center>Searching .... <br/><img src="images/booking-engine/ajax-loader.gif" /></center><br/><br/>';	
				tab[1].className="";
				tab[2].className="current";
				tab[3].className="";
				tab[1].style.display="";
				tab_link[1].onclick=function(){ tab_nav(1); };
				tab_link[2].onclick=function(){};
				
				
				tab[2].style.display="";
				tab[3].style.display="none"; 
				
 				//Effect.Appear(sec[2])
				sec[2].style.display="";
				sec[1].style.display="none";
				sec[3].style.display="none";
 				break;		
		case 3: //Effect.Fade(sec[2])
				the_logo.style.display=""
				sec[2].style.display="none";
				sec[3].innerHTML = '<br/><br/><center>Searching .... <br/><img src="images/booking-engine/ajax-loader.gif" /></center><br/><br/>';	
				//Effect.Appear(sec[3])
				tab[1].className="";
				tab[3].className="current";
				tab[2].className="";
				tab_link[1].onclick=function(){ go_search(1); };
				tab_link[2].onclick=function(){ go_search(2); };
				tab[1].style.display="";
				tab[2].style.display="";
				tab[3].style.display=""; 
				sec[1].style.display="none";
				//Effect.Appear(sec[3])
				sec[2].style.display="none";
				sec[3].style.display="";
				break;					
 		
 		
 	}
	
}



function hide_results()
{
     document.getElementById('search-results-wrapper').style.display = "none";
}

function sort_rates(prop_id,sort_order)
{
	var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: '',
    // Handle successful response
    onSuccess: function(t) {
		document.getElementById('rates_'+prop_id).innerHTML = t.responseText;	
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

					    }
    }
	new Ajax.Request('includes/Booking.Engine.Class.php?op=sort_rates&prop_id='+prop_id+'&order='+sort_order, opt);
}	

function book(prop_id,rate_code,room_code,price,room_desc,rate_desc,check_in,check_out,adults,children,rooms)
{
//alert(prop_id+' '+rate_code+' '+room_code+' ');
	var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: '',
    // Handle successful response
    onSuccess: function(t) {
    
    document.getElementById('customer_information').innerHTML = t.responseText;
    document.getElementById('the_top').focus();
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

    }
    }
		if(document.getElementById('show_props_id'))			
 		{
 			show_props(focused_prop)
 		}
 		else
 			align_props();
    
    tab_nav(3);
    
   
    
new Ajax.Request('includes/Booking.Engine.Class.php?op=prepare_book&prop_id='+prop_id+'&rate_code='+rate_code+'&room_code='+room_code+'&price='+price+'&room_desc='+room_desc+'&rate_desc='+rate_desc+'&check_in='+check_in+'&check_out='+check_out+'&adults='+adults+'&children='+children+'&rooms='+rooms, opt);
}

function go_search(nav_this_tab)
{
 if(confirm('Are you sure you want to cancel?  All your stay information will be lost.'))
 {
    tab_nav(nav_this_tab);
 }
}


function map(prop_id,the_long,the_lat)
{
document.getElementById('overview_'+prop_id).style.display="none";
document.getElementById('map_'+prop_id).style.display="";
document.getElementById('hotel_info_'+prop_id).style.display="none";
document.getElementById('photos_'+prop_id).style.display="none";
document.getElementById('nav_map_'+prop_id).className="current"
document.getElementById('nav_photos_'+prop_id).className="last"
document.getElementById('nav_hotel_info_'+prop_id).className=""
document.getElementById('nav_overview_'+prop_id).className=""

	if (GBrowserIsCompatible()) 
	{
	        var map = new GMap2(document.getElementById("show_map_"+prop_id));
	        map.setCenter(new GLatLng(the_lat,the_long), 9);
	}

}

function get_depart(prop_id)
{
	arrive_string = document.getElementById('arrive_'+prop_id).value
	if(arrive_string == '')
	{
		alert('Please choose `Check In` date first.')
		return false
	}
	depart_string = arrive_string;

arrive_array = arrive_string.split('/')
depart_string = new Date(arrive_array[0]+'/'+(parseInt(arrive_array[1])+1)+'/'+arrive_array[2]);
//depart_date = depart_string.setDate( depart_string.getDate());
return formatDate(depart_string , "MM/dd/yyyy" )
}

function rates(prop_id)
{
	
	

document.getElementById('overview_'+prop_id).style.display="none";
document.getElementById('hotel_info_'+prop_id).style.display="none";
document.getElementById('photos_'+prop_id).style.display="none";
document.getElementById('nav_rates_'+prop_id).className="current"
document.getElementById('rates_'+prop_id).style.display="";
document.getElementById('nav_photos_'+prop_id).className="last"
document.getElementById('nav_hotel_info_'+prop_id).className=""
document.getElementById('nav_overview_'+prop_id).className=""	




if(document.getElementById('rates_'+prop_id).innerHTML=='')
	get_rates(prop_id)

/*


*/


}

function get_form(prop_id)
{
	document.getElementById('rates_'+prop_id).innerHTML=''	
	
	
    var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: "op=hotel_info&prop_id="+prop_id,
    // Handle successful response
    onSuccess: function(t) {
		document.getElementById('rates_'+prop_id).innerHTML = t.responseText;	
	///	alert(t.responseText);
		
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

    }
}	
	
	new Ajax.Request('includes/Booking.Engine.Class.php?op=get_form&prop_id='+prop_id, opt);
	//rates(prop_id)
}


function get_rates(prop_id)
{

    var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: "op=hotel_info&prop_id="+prop_id,
    // Handle successful response
    onSuccess: function(t) {
		
    	rates(prop_id)
    	temp = t.responseText.replace(/^\s*|\s*$/g,"");
     	if(temp.length == 0 )     	
     	{
     		get_form(prop_id)
     		alert('Could not locate rooms with your criteria.')
     	}
     	else
     		document.getElementById('rates_'+prop_id).innerHTML = temp
 		
 		temp = document.getElementById('search-results-content').innerHTML
 		focused_prop = prop_id
		temp += '<center><div id="hid_props" class="show_props"><h3 style="cursor:pointer;width:175px;" id="show_props_id" onclick="show_props(\''+prop_id+'\')">Show All Results</h3></div></center>'
		
		document.getElementById('tab_link_2').onclick=function(){ show_props(prop_id) };
		document.getElementById('tab_link_2').innerHTML = 'Show All Results'
		document.getElementById('search-results-content').innerHTML = temp
     	initLightbox()	
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

    }
}	

	if(document.getElementById('arrive_'+prop_id))
	{
	arrive_string = document.getElementById('arrive_'+prop_id).value
	depart_string = document.getElementById('depart_'+prop_id).value
	
	
	
	
	adults = document.getElementById('adults_'+prop_id).value
	children = document.getElementById('children_'+prop_id).value
	rooms = document.getElementById('rooms_'+prop_id).value
	
	
    arrive_array = arrive_string.split('/')
    depart_array = depart_string.split('/')
	
	if(arrive_string == depart_string)
		alert('`Check In` and `Check Out` dates cannot be the same or blank.')
	else if(
	(arrive_array[0] > depart_array[0] && arrive_array[2] == depart_array[2] )	
	 || 
	(arrive_array[1] > depart_array[1] && arrive_array[0] == depart_array[0] )
	  ||
	(arrive_array[2] > depart_array[2])

	||
	(arrive_string == '' || depart_string == '') )
		alert('`Check In` date cannot be after `Check Out` date.')
	else
	{
	 document.getElementById('rates_'+prop_id).innerHTML = '<br/><br/><center>Checking Rates ...<br/><img src="images/booking-engine/ajax-loader.gif" /></center><br/><br/>';
	 
	 force_prop_hide(prop_id)
		hide_props(prop_id)

	 new Ajax.Request('includes/Booking.Engine.Class.php?op=get_rates&prop_id='+prop_id+'&check_in='+arrive_string+'&check_out='+depart_string+'&adults='+adults+'&children='+children+'&rooms='+rooms, opt);
	
	 //alert('includes/Booking.Engine.Class.php?op=get_rates&prop_id='+prop_id+'&check_in='+arrive_string+'&check_out='+depart_string+'&adults='+adults+'&children='+children+'&rooms='+rooms)
	}
	}
	else
	{
	force_prop_hide(prop_id)
		hide_props(prop_id)

	 document.getElementById('rates_'+prop_id).innerHTML = '<br/><br/><center>Retrieving rooms.....<br/><img src="images/booking-engine/ajax-loader.gif" /></center><br/><br/>';
	 new Ajax.Request('includes/Booking.Engine.Class.php?op=get_rates&prop_id='+prop_id, opt);
	}
}

 /** constructor 
   
       @param duration integer seconds
       @param <optional> function to run while waiting.
       
    */
   function Pause(duration, busy){
      this.duration= duration * 1000;
      this.busywork = null; // function to call while waiting.
      this.runner = 0;

      if (arguments.length == 2) {
         this.busywork = busy;
      }

      this.pause(this.duration);

   } // Pause class

   /** pause method 
   
       @param duration: integer in seconds
       
    */
   Pause.prototype.pause = function(duration){
      if ( (duration == null) || (duration < 0)) {return;}

      var later = (new Date()).getTime() + duration;

      while(true){
         if ((new Date()).getTime() > later) {
            break;
         }

         this.runner++;

         if (this.busywork != null) {
            this.busywork(this.runner);
         }

      } // while

   } // pause method

var last_prop = ''
   
function fade_props(except_this)
{
		element=document.getElementsByTagName("DIV")
		for(x=0;x<element.length;x++)
           if(element[x].className && element[x].className=="hotel-container" && element[x].id && (element[x].id !=("prop_wrapper_"+except_this)))
           {
           		//element[x].style.display="none";
           		
           		temp = element[x].id.split('_')
       			overview(temp[2])
           		//Effect.Fade(element[x].id)
           		element[x].style.display = "none";
           		last_prop = element[x].id;
           }
          
}

function align_props()
{
		element=document.getElementsByTagName("DIV")
		for(x=0;x<element.length;x++)
           if(element[x].className && element[x].className=="hotel-container" && element[x].id)
           {
           		temp = element[x].id.split('_')
       			overview(temp[2])
           }	
	
}


function unfade_props(except_this)
{
		element=document.getElementsByTagName("DIV")
		for(x=0;x<element.length;x++)
           if(element[x].className && element[x].className=="hotel-container" && element[x].id && (element[x].id !=("prop_wrapper_"+except_this)))
           {
   				//Effect.Appear(element[x].id)
   					element[x].style.display = "";
   				
           }

}

function force_prop_hide(except_this)
{
		element=document.getElementsByTagName("DIV")
		for(x=0;x<element.length;x++)
           if(element[x].className && element[x].className=="hotel-container" && element[x].id && (element[x].id !=("prop_wrapper_"+except_this)))
           {
           		element[x].style.display="none"
           }
}

function hide_props(except_this)
{
	if(document.getElementById("hid_props"))
	{
	var oNodeToRemove = document.getElementById("hid_props");
     oNodeToRemove.parentNode.removeChild(oNodeToRemove);   
	}
	document.getElementById('result_pager_bottom').style.display="none";
	
//Effect.Fade("prop_wrapper_"+except_this)    
//Effect.Fade('search-results-content')	
/*
	for(var x in (element=document.getElementsByTagName("DIV"))) 
           if(element[x].className && element[x].className=="hotel-container" && element[x].id && (element[x].id !=("prop_wrapper_"+except_this)))
	           	element[x].style.display="none";
  */             
var the_bar = document.getElementById('sort_bar').innerHTML

current_sort = document.getElementById('sort_by').value

var the_prop = document.getElementById('prop_wrapper_'+except_this).innerHTML
    
	 	
var oNodeToRemove = document.getElementById("prop_wrapper_"+except_this);
    oNodeToRemove.parentNode.removeChild(oNodeToRemove);                        

    oNodeToRemove = document.getElementById('sort_bar');    
	oNodeToRemove.parentNode.removeChild(oNodeToRemove);                        
//Effect.Appear('search-results-content')	
var new_bar = '<div id="sort_bar" style="display:none;padding-top:5px;">'+the_bar+'</div>'


var new_prop = '<div id="prop_wrapper_'+except_this+'" class="hotel-container" >'+the_prop+'</div>'
	temp = document.getElementById('deep_result').innerHTML
	document.getElementById('deep_result').innerHTML = new_prop + temp
	temp = document.getElementById('search-results-content').innerHTML;
	document.getElementById('search-results-content').innerHTML = new_bar + temp;
	
	document.getElementById('sort_by').value = current_sort	
	initLightbox()	
	//Effect.Appear("prop_wrapper_"+except_this)    
	document.getElementById('the_top').focus();
}

function show_props(except_this)
{
	
	document.getElementById('result_pager_bottom').style.display="";
	document.getElementById('sort_bar').style.display="";
	if(document.getElementById("hid_props"))
	{
	var oNodeToRemove = document.getElementById("hid_props");
    	oNodeToRemove.parentNode.removeChild(oNodeToRemove);       
	}
	unfade_props(except_this)
	document.getElementById('tab_link_2').onclick= "";
	document.getElementById('tab_link_2').innerHTML = 'Results';
   initLightbox()      

   overview(except_this)
}


function photos(prop_id)
{	
document.getElementById('overview_'+prop_id).style.display="none";
document.getElementById('hotel_info_'+prop_id).style.display="none";
document.getElementById('photos_'+prop_id).style.display="";
document.getElementById('nav_rates_'+prop_id).className=""
document.getElementById('rates_'+prop_id).style.display="none";
document.getElementById('nav_photos_'+prop_id).className="current"
document.getElementById('nav_hotel_info_'+prop_id).className=""
document.getElementById('nav_overview_'+prop_id).className=""
if(document.getElementById('photos_'+prop_id).innerHTML == "")
	use_ajax('includes/Booking.Engine.Class.php?op=get_photos&prop_id='+prop_id,'photos_'+prop_id);

return false;
}
function overview(prop_id)
{
document.getElementById('overview_'+prop_id).style.display="";
//document.getElementById('map_'+prop_id).style.display="none";
document.getElementById('hotel_info_'+prop_id).style.display="none";
document.getElementById('photos_'+prop_id).style.display="none";
document.getElementById('nav_photos_'+prop_id).className="last"
//document.getElementById('nav_map_'+prop_id).className=""

document.getElementById('nav_rates_'+prop_id).className=""
document.getElementById('rates_'+prop_id).style.display="none";

document.getElementById('nav_hotel_info_'+prop_id).className=""
document.getElementById('nav_overview_'+prop_id).className="current"
}
function hotel_info(prop_id)
{

    var opt = {
    // Use POST
    method: 'GET',
    // Send this lovely data
    postBody: "op=hotel_info&prop_id="+prop_id,
    // Handle successful response
    onSuccess: function(t) {
     document.getElementById('hotel_info_'+prop_id).innerHTML = t.responseText;
  
    },
    // Handle 404
    on404: function(t) {
        alert('Error 404: location "' + t.statusText + '" was not found.');
    },
    // Handle other errors
    onFailure: function(t) {
        alert('Error ' + t.status + ' -- ' + t.statusText);

    }
}
if(document.getElementById('hotel_info_'+prop_id).innerHTML == "")
{
       document.getElementById('overview_'+prop_id).style.display="none";
//document.getElementById('map_'+prop_id).style.display="none";


document.getElementById('nav_rates_'+prop_id).className=""
document.getElementById('rates_'+prop_id).style.display="none";

document.getElementById('photos_'+prop_id).style.display="none";
document.getElementById('nav_photos_'+prop_id).className="last"
document.getElementById('nav_hotel_info_'+prop_id).className="current"
document.getElementById('nav_overview_'+prop_id).className="" 
document.getElementById('hotel_info_'+prop_id).innerHTML = '<br/><br/><center>Retrieving  Data ...<br/><img src="images/booking-engine/ajax-loader.gif" /></center><br/><br/>';	
 document.getElementById('hotel_info_'+prop_id).style.display="";
 new Ajax.Request('includes/Booking.Engine.Class.php?op=hotel_info&prop_id='+prop_id, opt);
} 
else
{
document.getElementById('overview_'+prop_id).style.display="none";
document.getElementById('hotel_info_'+prop_id).style.display="";
document.getElementById('nav_rates_'+prop_id).className=""
document.getElementById('rates_'+prop_id).style.display="none";

document.getElementById('photos_'+prop_id).style.display="none";
document.getElementById('nav_photos_'+prop_id).className="last"
document.getElementById('nav_hotel_info_'+prop_id).className="current"
document.getElementById('nav_overview_'+prop_id).className=""
}
}

