var autopost = false;

<!--
//this function alerts for non available links - delete from final deployment
function na() {
	alert("funcionalidade não disponível");
}
function doSubmit(url) {
	
	location.href='default.aspx';
	document.forms[0].action=url;
	document.forms[0].method='get';
	//document.forms[0].submit();
	
}


function doSubmitTimeout() {
	document.getElementById('processing').innerHTML = "<img src='/historicalhotels/images/widgets/processing.gif' alt='Processing your request' />";
	//alert(url);
	setTimeout('window.location="reservations_availability.aspx";',5000);
}

//generic function to get reference to object by id
function getObject(id) {
	if (document.all){return(document.all(id))}
	if (document.getElementById){return(document.getElementById(id))}
}

//generic function that handles input text
function searchText(action,string){
	var obj = getObject(string);
	if(obj){
		if (action=='focus'){obj.className='search_on'} else {obj.className='search'}
		if (action=='focus' && obj.value==string){obj.value='';}
		if (action=='blur' && obj.value==''){obj.value=string;}
	}
}

//generic function that handles input fields focus and blur 
function swapClass(cls,id){
	var obj = getObject(id);
	if(obj){
		obj.className = cls;
	}
}

//generic function that handles input text
function swapClassTxt(cls,id,string){
	var obj = getObject(id);
	if(obj){
		obj.className = cls;
		if (obj.value==string){obj.value=''} else if (obj.value==''){obj.value=string}
	}
}

//generic function that handles text areas
function textareaOn(cls,action,obj,string){
	if(document.getElementById){
		if (action=='focus' && document.getElementById(obj).value==string){document.getElementById(obj).value='';document.getElementById(obj).className = cls;}
		if (action=='blur' && document.getElementById(obj).value==''){document.getElementById(obj).value=string;document.getElementById(obj).className = cls;}
	}
	else if(document.all){
		if (action=='focus' && document.all(obj).value==string){document.all(obj).value='';document.all(obj).className = cls;}
		if (action=='blur' && document.all(obj).value==''){document.all(obj).value=string;document.all(obj).className = cls;}
	}
}

//generic functions that highlite image by swapping the style associated to the object
// need to set up event processing and listners for cross platform compliance
//*** this function sets attaches the onmouseover events
function doLoad() {
	// Do Loading
	if (window.document.captureEvents==null)
	return // Not IE4 or NS4
	if (window.document.captureEvents!=null)  // NS - capture events
	window.document.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT)
	window.document.onmouseover = imageFrame;
	window.document.onmouseout = imageFrame;
}
//*** this function processes events called when user mouses over a foto or banner
function setupEventObject(e) {
	// Map NS event object to IEs
	if (e==null) return // IE returns object by default
	window.event = e
	if (e.type=='mouseover'){window.event.srcElement = e.target} else {window.event.srcElement = e.relatedTarget}
	window.event.x = e.x
	window.event.y = e.y
	// Route the event to the original element
	window.event.srcElement.handleEvent(e);
}
//*** this function process the mouse over and out events to change image frames
function imageFrame(obj) {
	setupEventObject(obj);
	obj = window.event.srcElement
	if(obj){
		var classNames = obj.className.split('_');
		if (classNames.length==1){obj.className=classNames[0]+'_on'}
		else {obj.className=classNames[0]}
	}
}

//generic pop window funtion that accepts window settings and url parameters
//if no window settings defaults to set small pop-up window
function popUpWindow(URLStr, windowSettings) {
var popUpWin;
if (windowSettings=='privacy'){windowSettings='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=400,height=400,top=100,left=100,screenX=100,screenY=100'}
if (windowSettings=='enlarge'){windowSettings='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=750,height=580,top=100,left=100,screenX=100,screenY=100'}
if (windowSettings=='video'){windowSettings='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=435,height=355,top=100,left=100,screenX=100,screenY=100'}
if (windowSettings=='360'){windowSettings='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=550,height=420,top=100,left=100,screenX=100,screenY=100'}
if (windowSettings=='floorplan'){windowSettings='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=550,height=500,top=100,left=100,screenX=100,screenY=100'}
if (windowSettings=='flights'){windowSettings='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=550,height=500,top=100,left=100,screenX=100,screenY=100'}
if (windowSettings=='image'){windowSettings='toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=500,height=400,top=100,left=100,screenX=100,screenY=100'}
if(popUpWin) {if(!popUpWin.closed) popUpWin.close();}popUpWin = open(URLStr, 'popUpWin', windowSettings);
}

// these functions return the x,y,width and height of an object
function getRealLeft(obj){var curleft = 0;if (obj.offsetParent) {while (obj.offsetParent){curleft += obj.offsetLeft;obj = obj.offsetParent;}} else if (obj.x) curleft += obj.x; return curleft;}
function getRealTop(obj){var curtop = 0;if (obj.offsetParent) {while (obj.offsetParent){curtop += obj.offsetTop;obj = obj.offsetParent;}} else if (obj.y) curtop += obj.y; return curtop;}
function getHeight(objID) {return objID.offsetHeight}
function getWidth(objID) {return objID.offsetWidth}

//hide and show reservations or find a pousada on the homepage quick reservations box
function quickRes(tab) {
	var pousadas = getObject('findpousada');var res = getObject('qres');var fields = getObject('resfields')
	if (tab=='pousadas'){pousadas.style.top = getRealTop(res) + 'px';pousadas.style.left = getRealLeft(res) + 1 + 'px';fields.style.display='none';pousadas.style.display='block';}
	else {pousadas.style.display='none';fields.style.display='block';}
}

//because of the quick reservation box must change position on screen with window resizing
//must reposition the find a hotel box when screen is resized - only do this if find a hotel is activiated
function posQuickRes() {
	var pousadas = getObject('findpousada');var res = getObject('qres');
	if (pousadas&&res){if (pousadas.style.display=='block') {	pousadas.style.top = getRealTop(res) + 'px';pousadas.style.left = getRealLeft(res) + 'px';}}
}

//call the window load event to initialize event listning
window.onload = doLoad

//this function writes an iframe used to hide form elements that would otherwise show up through a html layer
var iframe; //reference to the frame object
var browser = String(navigator.userAgent);
//writeFrame(); //write the frame to the browser
function writeFrame() {
	if (iframe!=true) {
		document.write("<iframe id=\"iframe\" style=\"display: none; width:0px; height:0px; left:0px; position:absolute; top: 0px; z-index:1000;\" src=\"javascript:false;\" frameBorder=\"0\" scrolling=\"no\"></iframe>")
		iframe = document.getElementById("iframe");
	}
}

// retornam a posição de um objecto no ecrã
function getRealLeft(obj){var curleft = 0;if (obj.offsetParent) {while (obj.offsetParent){curleft += obj.offsetLeft;obj = obj.offsetParent;}} else if (obj.x) curleft += obj.x; return curleft;}
function getRealTop(obj){var curtop = 0;if (obj.offsetParent) {while (obj.offsetParent){curtop += obj.offsetTop;obj = obj.offsetParent;}} else if (obj.y) curtop += obj.y; return curtop;}
function getHeight(objID) {return objID.offsetHeight}
function getWidth(objID) {return objID.offsetWidth}

//capture mouse position for quick help functionality
var xpos, ypos;
if (document.layers) document.captureEvents(Event.MOUSEMOVE);
document.onmousemove=getMouseCoordinates;

function getMouseCoordinates(e) {
	if (!e) var e = window.event;
	if (e.pageX || e.pageY) {xpos = e.pageX;ypos = e.pageY;}
	else if (e.clientX || e.clientY){xpos = e.clientX + document.body.scrollLeft;ypos = e.clientY + document.body.scrollTop;}
	// xpos and ypos contain the mouse position relative to the document
}

// buscar altura de scroll da página
function getScrollY() {
  scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {scrOfY = window.pageYOffset;} //Netscape compliant
  else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {scrOfY = document.body.scrollTop;}//DOM compliant
  else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {scrOfY = document.documentElement.scrollTop;}//IE6 standards compliant mode
  return(scrOfY);
}

// buscar tamanho da janela de browser
function windowSize(type) {
	var wWidth, wHeight;
	if( typeof( window.innerWidth ) == 'number' ) {wWidth = window.innerWidth;wHeight = window.innerHeight;}//Non-IE
  	else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {wWidth = document.documentElement.clientWidth;wHeight = document.documentElement.clientHeight;}//IE 6+ in 'standards compliant mode'
  	else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {wWidth = document.body.clientWidth;wHeight = document.body.clientHeight;}//IE 4 compatible
	if(type=="w"){return(wWidth);}else{return(wHeight);}
}

//activa opção de tool tip
var tags = new Array('span')
function initToolTips() {
	var help = getObject('showtips');
	getBody = document.getElementsByTagName('body')[0];
	for (i = 0 ; i < tags.length ; i++ ) {
	getallTags = getBody.getElementsByTagName(tags[i]);
	for (k = 0 ; k < getallTags.length ; k++)
		if (help) {
			if (help.checked==true) {if (getallTags[k].className=='helperoff') {getallTags[k].className='helperon';}}
			else {if (getallTags[k].className=='helperon') {getallTags[k].className='helperoff';}}
		}
	}
}

// mostrar tool tip
function showTip(id){
	var obj = getObject(id); var left; var top; var help = getObject('showtips');
		if((xpos+4+125)>windowSize("w")) {left = xpos-100-15;} else {left = xpos+4;} //correct for tool tips going off screen
		/*
		if( typeof( window.innerWidth ) == 'number' ){top=ypos+12;} else {top=getScrollY()+ypos+12;} //if non ie no need to allow for scroll
		*/
		if( typeof( window.innerWidth ) == 'number' ){top=ypos+12;} else {top=ypos+12;} //if non ie no need to allow for scroll
		if (obj) {obj.style.left=left+'px';obj.style.top=top+'px';if (obj.style.display!='block'){obj.style.display='block';}}
		if (iframe) {iframe.style.top=obj.style.top;iframe.style.left=obj.style.left;iframe.style.width=getWidth(obj);iframe.style.height=getHeight(obj);iframe.style.display='';obj.style.zIndex=2000;}
}
function hideTip(id) {
	if (iframe) {iframe.style.top = '0px';iframe.style.left = '0px';iframe.style.width = '0px';iframe.style.height = '0px';iframe.style.display = 'none';}
	getObject(id).style.display="none";
}

// search menu functions
var timer; //will hold the timer object
var xOffset=1; // pixel offset to the left
var yOffset=-1; // pixel offset to the left
var iframe; //reference to the frame object
var selectArray; //will hold the selects on page
var activelayer; //will hold the active layer object

function hideOneClick(layer) {if(timer){clearTimeout(timer);}timer = setTimeout('hideNow(\''+layer+'\')',500);}
function showOneClick(layer,s) {if (timer) {clearTimeout(timer);} showNow(layer,s)} //if mouse over menu then clear the hide timer
function showClick(layer,s) {var mobj; mobj = getObject(layer);if (timer) {clearTimeout(timer);}if(mobj && mobj.style.display=='block') {hideNow(layer)} else {showNow(layer,s);}}
function showNow(layer,s) {
	
	if (activelayer && activelayer.id!=layer) {hideNow(activelayer.id);} //hide the active layer if one is visible
	var mobj; mobj = getObject(layer);
	activelayer = mobj;
	var sender; sender = getObject(s);
	var browser;
	
	if(mobj && mobj.style.display!='block') {
		if (csBrowserInfo()==0) {hideSelects('hidden');}
		if (csBrowserInfo()==2){mobj.style.filter = "progid:DXImageTransform.Microsoft.RevealTrans(transition=1, duration=0.1)";mobj.filters.item(0).enabled=1;mobj.filters.item(0).apply();} //apply the filter only if this is the first time the menu is shown
		mobj.style.display='block'; //show the selected menu
		mobj.style.left = getRealLeft(sender)+xOffset+'px' //the the left point of the menu
		mobj.style.top = getRealTop(sender)+getHeight(sender)+yOffset+'px'; //set the top point of the menu
		mobj.style.display=''; //redraw for opera bug
		mobj.style.display='block';
		if (csBrowserInfo()==2){mobj.filters.item(0).play();} //run apllied filter if the browser is internet explorer 6.0+
		if (iframe) {iframe.style.top=mobj.style.top;iframe.style.left=mobj.style.left;iframe.style.width=getWidth(mobj);iframe.style.height=getHeight(mobj);iframe.style.display='';mobj.style.zIndex=2000;}
	} else {
	
	}
}

function hideNow(layer) {
	activelayer = null; //set the active layer to nothing
	var mobj; mobj = getObject(layer);
	if (mobj) {mobj.style.display='none';} //hide the active menu
	if (iframe) {iframe.style.top = '0px';iframe.style.left = '0px';iframe.style.width = '0px';iframe.style.height = '0px';iframe.style.display = 'none';}
	if (csBrowserInfo()==0) {hideSelects('visible');}
}



//this function writes an iframe used to hide form elements that would otherwise show up through a html layer
function initializeMenu() {
	if (iframe!=true && csBrowserInfo()>0 ) {
		document.write("<iframe id=\"iframe\" style=\"display:none;width:0px;height:0px;left:0px;position:absolute;top:0px;z-index:1000;\" src=\"javascript:false;\" frameBorder=\"0\" scrolling=\"no\"></iframe>")
		iframe = document.getElementById("iframe");
	}
}

// these functions return the x,y,width and height of an object
function getRealLeft(obj){var curleft = 0;if (obj.offsetParent) {while (obj.offsetParent){curleft += obj.offsetLeft;obj = obj.offsetParent;}} else if (obj.x) curleft += obj.x; return curleft;}
function getRealTop(obj){var curtop = 0;if (obj.offsetParent) {while (obj.offsetParent){curtop += obj.offsetTop;obj = obj.offsetParent;}} else if (obj.y) curtop += obj.y; return curtop;}
function getHeight(objID) {return objID.offsetHeight}
function getWidth(objID) {return objID.offsetWidth}

//get browser info in order to detect if the browser supports filters and if the browser is IE 5.0 (if 5.0 requires the hiding of select boxes)
function csBrowserInfo()
{
	var csUserAgent = String(navigator.userAgent);
	if (!document.getElementById) return -1;
	else if(csUserAgent.indexOf("MSIE 5.0") > -1) return 0;
	else if(csUserAgent.indexOf("Opera") > -1) return 1;
	else if(csUserAgent.indexOf("MSIE 6") > -1) return 2;
	else return 1;
}

//hide selects for ie 5.0 since the iframe hack does not work
function hideSelects(action) {
	var numberForms = document.forms.length;
	for (formIndex = 0; formIndex < numberForms; formIndex++)
	{
	   var numberElems; numberElems = document.forms[formIndex].elements.length
	   for (formElemIndex = 0; formElemIndex < numberElems; formElemIndex++)
		{
		   if (document.forms[formIndex].elements[formElemIndex].tagName=='SELECT') {
			document.forms[formIndex].elements[formElemIndex].style.visibility=action;
		   }
		}
	}
}


//function to show map layers for golf
function showMap(id) {
	var hideLayers = new Array("allitems","golfitems","pousadasitems");
	var showLayer = getObject(id);
	for(counter=0; counter<=hideLayers.length-1; counter++) {
		var layer = getObject(hideLayers[counter]);
		if (layer){layer.style.display='none';}
	}
	showLayer.style.display='block';
}

function matchelement( k )
{
	var i, n, c;

	
	for (i=0; i<document.forms[0].elements.length; i++)
	{
		try
		{
		
			n = document.forms[0].elements[i].name;
			
			if (n.length >= k.length )
			{
				c = n.substr ( n.length - k.length, k.length );
				if ( c == k ) return document.forms[0].elements[i];
				
			}
		}
		catch (e) {}
	}
	
	return "undefined";
}


function changesDates(cboDay, cboMonth, cboYear, addDays, dDays, dMonth, dYear)
{


	var cbDays = document.getElementById( cboDay );
	var cbMonth = document.getElementById( cboMonth );
	var cbYear = document.getElementById( cboYear );

	var iYear = cbYear.options[cbYear.selectedIndex].value;
	var iMonth = cbMonth.options[cbMonth.selectedIndex].value;
	iMonth = iMonth * 1;
	iMonth = parseInt(iMonth) - 1 ;
	
	var iDay = cbDays.options[cbDays.selectedIndex].value; 
	
	var today = new Date(iYear, iMonth, iDay);
	var myDate=new Date(iYear, iMonth, iDay)
	
	myDate.setDate(myDate.getDate() + parseInt(addDays) ); 
				
	document.getElementById( dDays ).options[myDate.getDate()-1].selected=true;
	document.getElementById( dMonth ).options[myDate.getMonth()].selected=true;
	
	iYear=  myDate.getYear() - today.getYear() ;
	if ( iYear == 0 ) 
	{
		iYear = cbYear.selectedIndex;
	}
	document.getElementById( dYear ).options[iYear].selected=true;
	
	if (document.getElementById('cal2ctrl')!=undefined)
	{
		document.getElementById('cal2ctrl').value= myDate.getDate() + '-' + parseInt(myDate.getMonth ()+1) + '-' + myDate.getFullYear();
	}

}		




function __onload () 
{
	if ( autopost )
    {
		document.forms[0].submit();
	}
}



//-->

function CreateFlashControl(PARAM, DIV_ID)
{
  var d = document.getElementById(DIV_ID);
  document.write(PARAM);
}

function ShowProcessing(){ 
	try{document.getElementById('pousadas').style.display='none';}catch(err){};
	try{document.getElementById('mapLocation').style.display='none';}catch(err){};
	document.getElementById('processing').style.display='';
	document.getElementById('contentInfo').className='hideInfo';	
}



function JumpNextField(ThisField, NextField, FieldLenght)
{
	var fieldText = ThisField.value;
	var nextFieldObj = document.getElementById(NextField);
	
	if(fieldText.length==parseInt(FieldLenght))
	{
		nextFieldObj.focus();
	}
}

function numbersOnly(myfield, e, dec)
{
var key;
var keychar;

if (window.event)
   key = window.event.keyCode;
else if (e)
   key = e.which;
else
   return true;
keychar = String.fromCharCode(key);

// control keys
if ((key==null) || (key==0) || (key==8) ||
    (key==9) || (key==13) || (key==27) )
   return true;
// numbers
else if ((("0123456789").indexOf(keychar) > -1))
   return true;

// decimal point jump
else if (dec && (keychar == "."))
   {
   myfield.form.elements[dec].focus();
   return false;
   }
else if (((keychar == ".")||(keychar == ",")) && dec && (dec==true))
   {
   return true;
   }
else
   return false;
}

function clearDateHelp(idDate)
{
	var date = document.getElementById(idDate);	
	var dateValue = date.value;
	
	if(dateValue == 'dd-MM-yyyy')
	{
		date.value = "";
		date.focus();
	}
	
}

function validateNumbers(myfield)
{
	if(myfield.value.match(/^\d+$/))
	{
		return true;
	}
	else
	{
		myfield.value = '';
		return false;
	}
}

function validateDate(idDate)
{
	var date = document.getElementById(idDate);	
	var dateValue = date.value;
		
	val1 = "\\d{2}\\-\\d{2}\\-\\d{4}";
	reg1 = new RegExp(val1);
	exe1 = reg1.exec(dateValue);
	
	if(dateValue == '')
	{			
		return false;		
	}
	
	if (exe1 == null)
	{		
		date.value = "";
		date.focus();
		return false;
	}
	else 
	{			
		
		var dateBits =	dateValue.split('-');
		var year = dateBits[2];
		var month = dateBits[1];
		var day = dateBits[0];
				
		if (month > 12 || month == 00 || day > 31 || day == 00){
			date.value = "";
			date.focus();
			return false;
		}
				
		switch(month){
			case '04':
			case '06':
			case '09':
			case '11':
				if(day > 30){
					date.value = "";
					date.focus();
					return false;
				}
				break
			case '02':
				if ((year%4!=0 && day > 28) ||(year%4==0 && day > 29)){
					date.value = "";
					date.focus();
					return false;
				}
				break
			default: return true;
		} 
	}
	return true;
}
function hideLayer(layerName)
{
	if (document.getElementById) 
	{
		var targetElement = document.getElementById(layerName);
		targetElement.style.display = 'none';
	}
}
function showLayer(layerName)
{
	if (document.getElementById) // Netscape 6 and IE 5+
	{
		var targetElement = document.getElementById(layerName);
		targetElement.style.display = 'block';
	}
}
function textOnly(evt) {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
    if( (charCode>32 && charCode<65) || (charCode>90 && charCode<97) || (charCode>122 && charCode<126) || (charCode == 171) || (charCode == 187))
    {
		return false;    
	}
	return true;
}
function lettersOnly(evt) {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
    if( (charCode<32 && charCode>32) || ( charCode>32 && charCode<65) || (charCode>90 && charCode<97) || (charCode>122))
    {
		return false;    
	}
	return true;
}
function validateLettersOnly(elem) {
	var alphaExp = /^[a-zA-Z]+$/;
	if(elem.value.match(alphaExp)){
		return true;
	}else{
		elem.focus();
		elem.value = "";		
		return false;
	}
}
function initTags(evt) {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0));
	if( charCode==60 || charCode==62 )
		return false;    
	return true;
}

function showhide(control, value){

	var list = new Array("_company","_foreign","_postalcode",":ddlCountry","_lblCountryHome");
	var objCompanyInfo = document.getElementById(control+list[0]);
	var objForeign = document.getElementById(control+list[1]);
	var objPostalCode = document.getElementById(control+list[2]);
	var objCountry = document.getElementById(control+list[3]);
	var objCountryHome = document.getElementById(control+list[4]);
	
	switch(value)
	{
		case "company":
			objCompanyInfo.style.display='block';
			objPostalCode.style.display='block';
			objForeign.style.display='none';	
			objCountry.style.display='none';
			objCountryHome.style.display='block';	
			break;		
		case "foreign":
			objCompanyInfo.style.display='none';
			objPostalCode.style.display='none';
			objForeign.style.display='block';		
			objCountry.style.display='block';
			objCountryHome.style.display='none';		
			break;
		case "home":
			objCompanyInfo.style.display='none';
			objPostalCode.style.display='block';
			objForeign.style.display='none';		
			objCountry.style.display='none';
			objCountryHome.style.display='block';			
			break;
	}	
}

function displayCard(promo, cardID)
{
	var card = document.getElementById(cardID);	
	if(card!=null)
	{
		if(promo.value=='*' || promo.value=='')
		{
			card.disabled = false;
			
		}
		else
		{
			card.selectedIndex = 0;
			card.selectedValue = '';
			card.disabled = true;
			
		}
	}	
}