﻿
State={IsModernBrowser:false,SearchMode:"Destination",CheckModernBrowser:function(){State.IsModernBrowser=SupportsAjax();if(typeof SaveState=="function")SaveState();},SwitchMode:function(){State.SearchMode=(State.SearchMode=="Destination")?"PropertyName":"Destination";if(typeof SaveState=="function")SaveState();return State.IsModernBrowser;},Set:function(elementId,value){var element=GetElementById(elementId);if(element)element.value=value;}}
var DataBinding=false;function CheckSearchAllowed()
{if(DataBinding){RegisterOnDataBoundEvent(function(){if(CheckSearchAllowed()&&searchbutton)searchbutton.click();});return false;}
if(searchitem.options.length==0&&searchtype.value==1){searchtype.selectedIndex++;}
return true;}
function GetSearchTypes()
{if(State&&State.IsModernBrowser&&searchitem&&searchtype&&searchterm&&loadmessage)
{if(searchItemBound)
{loadmessage.style.display="none";searchItemBound=null;}
else
{DataBinding=true;loadmessage.style.display="";Enlighten.Jasons.Site.Services.Search.GetSearchTypes(searchterm.value,countryId,GetSearchTypes_Success,Failed);}}}
function GetSearchTypes_Success(result)
{if(!searchitem)return;if(searchtype.selectedIndex>-1)
searchTypeId=searchtype.options[searchtype.selectedIndex].value;searchtype.options.length=0;for(i=0;i<result.length;i++)
{searchtype.options[searchtype.options.length]=new Option(result[i].Text,result[i].Value);if(searchTypeId&&result[i].Value==searchTypeId)
searchtype.selectedIndex=i;}
loadmessage.style.display="none";DataBinding=false;if(searchtype.options.length>0)
{GetSearchItems();}
else{searchitem.options.length=0;searchitem.style.display="none";}}
function GetSearchItems()
{if(State&&State.IsModernBrowser&&searchitem&&searchtype&&searchterm&&loadmessage)
{if(searchItemBound)
{loadmessage.style.display="none";searchtype.disabled=false;searchitem.style.display=(searchitem.options.length>0)?"":"none";searchItemBound=null;}
else
{DataBinding=true;searchitem.style.display="none";loadmessage.style.display="";Enlighten.Jasons.Site.Services.Search.GetSearchItems(searchterm.value,countryId,searchtype.value,Success,Failed);}}}
function Success(result)
{if(!searchitem)return;if(searchitem.selectedIndex>-1)
searchItemId=searchitem.options[searchitem.selectedIndex].value;searchitem.options.length=0;for(i=0;i<result.length;i++)
{searchitem.options[searchitem.options.length]=new Option(result[i].Text,result[i].Value);if(searchItemId&&result[i].Value==searchItemId)
searchitem.selectedIndex=i;}
loadmessage.style.display="none";searchitem.style.display=(searchitem.options.length>0)?"":"none";DataBinding=false;for(i=0;i<OnDataBoundEvents.length;i++)
OnDataBoundEvents[i]();}
function Failed(error){loadmessage.style.display="none";searchtype.disabled=false;DataBinding=false;}
function SearchTerm_OnEnter(element,event,stId,fbId){var key=event.keyCode?event.keyCode:event.which;if(key==13)
{if(State&&State.IsModernBrowser){OnEnter(element,event,stId,"focus")}else{OnEnter(element,event,fbId,"focus")}
return false;}}
function SearchType_OnEnter(element,event,siId,goId){var si=GetElementById(siId);if(si){if(State&&State.IsModernBrowser)
OnEnter(element,event,siId,"focus")
else
OnEnter(element,event,goId,"click")}}
function AddMultiMapMarker(map,latitude,longitude,name,content,group){content=content.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&");var icon=new MMIcon('/images/map/icons/pinpoint.png');icon.iconSize=new MMDimensions(19,28);icon.iconAnchor=new MMPoint(10,28);icon.infoBoxAnchor=new MMPoint(7,0);icon.groupName=group;var marker=map.createMarker(new MMLatLon(latitude,longitude),{'label':name,'icon':icon});marker.setInfoBoxContent(content,{});return marker;}
var icon=null;function AddGoogleMarker(map,latitude,longitude,name,content,popUp){content=content.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&");if(!icon){icon=new GIcon();icon.image="/images/map/icons/pinpoint.png";icon.iconSize=new GSize(19,28);icon.iconAnchor=new GPoint(10,28);icon.shadow="/images/map/icons/shadow.png";icon.shadowSize=new GSize(36,28);icon.infoWindowAnchor=new GPoint(7,0);}
var marker=new GMarker(new GLatLng(latitude,longitude),icon);marker.content=content;GEvent.addListener(marker,"click",function(){marker.openInfoWindowHtml(content,{maxWidth:217});});clusterer.AddMarker(marker,name)
return marker;}
function SetDestination(term){if(State.SearchMode!="Destination")State.SwitchMode();if(searchterm){searchterm.value=term;UpdateBreadcrumbs(term);GetSearchItems();}}
function SearchDestination(term){SetDestination(term);RegisterOnDataBoundEvent(function(){if(searchbutton)searchbutton.click();});}
var OnDataBoundEvents=new Array();function RegisterOnDataBoundEvent(func){OnDataBoundEvents[OnDataBoundEvents.length]=func;}
function UpdateBreadcrumbs(searchterm){var url="/services/createbreadcrumbs?searchterm="+escape(searchterm)+"&countryid="+countryId;var wRequest=new Sys.Net.WebRequest();wRequest.set_url(url);wRequest.add_completed(ReceiveResponse);var executor=new Sys.Net.XMLHttpExecutor();wRequest.set_executor(executor);executor.executeRequest();}
function ReceiveResponse(executor,eventArgs)
{if(executor.get_responseAvailable())
{var response=executor.get_responseData();response=response.replace("<div id=\"location\">","").replace("</div>","")
GetElementById('location').innerHTML=response;}}