NewMind.registerNameSpace("NewMind.ETWP.env");NewMind.registerNameSpace("NewMind.ETWP.ControlData");function AddEventListener(obj,type,action){NewMind.dom.addEventListener(obj,type,action);}function GetEventSource(pthis){if(!document.all){var x=pthis;}else{var x=window.event.srcElement;}return x;}function returnFalse(e){var ev=e||window.event;if(ev.preventDefault){ev.preventDefault();}else{ev.returnValue=false;}}function findAncestorNode(el,strAncestorNode,strAncestorClassName){var ancestorNode=el;do{ancestorNode=ancestorNode.parentNode;}while(ancestorNode.nodeName.toLowerCase()!=strAncestorNode.toLowerCase()&&ancestorNode.className!=strAncestorClassName)return ancestorNode;}function iefix(){try{objects=document.getElementsByTagName("object");for(var i=0;i<objects.length;i++){if(objects[i].className=='iefix'){objects[i].outerHTML=objects[i].outerHTML;}}}catch(e){}}AddEventListener(window,'load',iefix);function getAnchorPosition(anchorname){var useWindow=false;var coordinates=new Object();var x=0,y=0;var use_gebi=false,use_css=false,use_layers=false;if(document.getElementById){use_gebi=true;}else if(document.all){use_css=true;}else if(document.layers){use_layers=true;}if(use_gebi&&document.all){x=AnchorPosition_getPageOffsetLeft(document.all[anchorname]);y=AnchorPosition_getPageOffsetTop(document.all[anchorname]);}else if(use_gebi){var o=document.getElementById(anchorname);x=AnchorPosition_getPageOffsetLeft(o);y=AnchorPosition_getPageOffsetTop(o);}else if(use_css){x=AnchorPosition_getPageOffsetLeft(document.all[anchorname]);y=AnchorPosition_getPageOffsetTop(document.all[anchorname]);}else if(use_layers){var found=0;for(var i=0;i<document.anchors.length;i++){if(document.anchors[i].name==anchorname){found=1;break;}}if(found==0){coordinates.x=0;coordinates.y=0;return coordinates;}x=document.anchors[i].x;y=document.anchors[i].y;}else{coordinates.x=0;coordinates.y=0;return coordinates;}coordinates.x=x;coordinates.y=y;return coordinates;}function getAnchorWindowPosition(anchorname){var coordinates=getAnchorPosition(anchorname);var x=0;var y=0;if(document.getElementById){if(isNaN(window.screenX)){x=coordinates.x-document.body.scrollLeft+window.screenLeft;y=coordinates.y-document.body.scrollTop+window.screenTop;}else{x=coordinates.x+window.screenX+(window.outerWidth-window.innerWidth)-window.pageXOffset;y=coordinates.y+window.screenY+(window.outerHeight-24-window.innerHeight)-window.pageYOffset;}}else if(document.all){x=coordinates.x-document.body.scrollLeft+window.screenLeft;y=coordinates.y-document.body.scrollTop+window.screenTop;}else if(document.layers){x=coordinates.x+window.screenX+(window.outerWidth-window.innerWidth)-window.pageXOffset;y=coordinates.y+window.screenY+(window.outerHeight-24-window.innerHeight)-window.pageYOffset;}coordinates.x=x;coordinates.y=y;return coordinates;}function AnchorPosition_getPageOffsetLeft(el){var ol=el.offsetLeft;while((el=el.offsetParent)!=null){ol+=el.offsetLeft;}return ol;}function AnchorPosition_getWindowOffsetLeft(el){return AnchorPosition_getPageOffsetLeft(el)-document.body.scrollLeft;}function AnchorPosition_getPageOffsetTop(el){var ot=el.offsetTop;while((el=el.offsetParent)!=null){ot+=el.offsetTop;}return ot;}function AnchorPosition_getWindowOffsetTop(el){return AnchorPosition_getPageOffsetTop(el)-document.body.scrollTop;}function ElementScrollTo(objEleSrc){if((!window.scroll)||(!objEleSrc))return false;var intImageStart=AnchorPosition_getWindowOffsetTop(objEleSrc);if(isNaN(parseInt(intImageStart)))return false;var OFFSET_TOP=16;var intImageHeight=parseInt(objEleSrc.height);if(isNaN(intImageHeight)||(intImageHeight<=0)&&!isNaN(objEleSrc.offsetHeight))intImageHeight=parseInt(objEleSrc.offsetHeight);var intScrollPosY=GetScrollPosY();var intViewHeight=GetViewHeight();if(isNaN(intImageHeight)||(intImageHeight<=0)||(intScrollPosY==null)||(intViewHeight==null)){var intScrollToY=intImageStart-OFFSET_TOP;if(intScrollToY<0)intScrollToY=0;scroll(0,intScrollToY);return true;}var intImageEnd=intImageStart+intImageHeight;if((intScrollPosY>intImageStart)||(intScrollPosY+intViewHeight<intImageEnd)){var intScrollToY=intImageStart-OFFSET_TOP;if(intScrollToY<0)intScrollToY=0;scroll(0,intScrollToY);}return true;function GetScrollPosY(){var intScrollY=null;if(document.all){if(!document.documentElement.scrollTop)intScrollY=document.body.scrollTop;else intScrollY=document.documentElement.scrollTop;}else intScrollY=window.pageYOffset;if(isNaN(parseInt(intScrollY)))intScrollY=null;return intScrollY;}function GetViewHeight(){if(document.documentElement&&document.documentElement.clientWidth){return document.documentElement.clientHeight;}else if(document.body){return document.body.clientHeight;}return null;}}NewMind.ETWP.GetRelativeSizeFromPixels=function(strPixels){if(!strPixels)return strPixels;strPixels=String(strPixels);if(strPixels.length<3)return strPixels;if(strPixels.substring(strPixels.length-2).toUpperCase()!="PX")return strPixels;var intPixels=parseInt(strPixels,10);if(isNaN(intPixels))return strPixels;return(intPixels/16)+"em";};function ControlScriptEnablerInit(bPrevCtrl){var strId="ElScriptEnabler"+parseInt(Math.random()*1000000000);document.write("<div id=\""+strId+"\"><!-- --></div>");var fncEnable=function(){Enable(bPrevCtrl);};setTimeout(fncEnable,1);return;function Enable(bPrevCtrl){if((typeof(bPrevCtrl)==="undefined")||(bPrevCtrl!==true))bPrevCtrl=false;var objEle=document.getElementById(strId);if(!objEle)return;var objEleCtrl=findAncestorNode(objEle,"div","sys_control");if(!objEleCtrl)return;if(bPrevCtrl){objEleCtrl=PreviousSibling(objEleCtrl);if(!objEleCtrl)return;}if(!objEleCtrl.hasChildNodes())return;for(var intIndex=0;intIndex<objEleCtrl.childNodes.length;intIndex++)ApplyScriptClass(objEleCtrl.childNodes[intIndex]);return;function ApplyScriptClass(objEle){if(IsTextNode(objEle))return;var strScriptEnabled="ScriptEnabled";var strClass=objEle.className;if((" "+strClass+" ").indexOf(" "+strScriptEnabled+" ")===-1)strClass=strClass+" "+strScriptEnabled;objEle.className=strClass;}function PreviousSibling(objEle){while(1){objEle=objEle.previousSibling;if(!objEle)return null;if(!IsTextNode(objEle))return objEle;}}function IsTextNode(objEle){return((!objEle)||(typeof(objEle.tagName)==="undefined")||(objEle.tagName==="!"));}}}function externalLinks(){if(!document.getElementsByTagName)return;var arrLinks=document.getElementsByTagName("a");for(var i=0;i<arrLinks.length;i++){var objLink=arrLinks[i];if((objLink.getAttribute("href"))&&((" "+objLink.getAttribute("rel")+" ").indexOf(" external ")!==-1)){objLink.onclick=GenNewFunc(TargetAttribCheat,(typeof(objLink.onclick)==="undefined")?null:objLink.onclick);}}function GenNewFunc(fncNew,fncOld){var objLink=null;return function(){fncNew.apply(this,arguments);if(fncOld!=null)return fncOld.apply(this,arguments);};}function TargetAttribCheat(e,bEnable,bAutoDisable,intAutoDisTimeout){e=e||window.event;if(!e)return;var objSrc=e.srcElement||e.target;if(!objSrc)return;while(String(objSrc.tagName).toUpperCase()!=="A"){if((!objSrc)||(objSrc.parentNode===objSrc))return;objSrc=objSrc.parentNode;}if((typeof(bEnable)==="undefined")||(bEnable!==false))bEnable=true;if((typeof(bAutoDisable)==="undefined")||(bAutoDisable!==false))bAutoDisable=true;if((typeof(intAutoDisTimeout)==="undefined")||isNaN(intAutoDisTimeout))intAutoDisTimeout=100;Work(objSrc,bEnable,bAutoDisable,intAutoDisTimeout);function Work(objSrc,bEnable,bAutoDisable,intAutoDisTimeout){if(bEnable){if((typeof(objSrc.targetOldNM)==="undefined")||(objSrc.targetOldNM===null)){if(typeof(objSrc.target)==="undefined")objSrc.targetOldNM="";else objSrc.targetOldNM=objSrc.target;}objSrc.target="_blank";if(bAutoDisable)setTimeout(function(){Work(objSrc,false);},intAutoDisTimeout);}else{if(typeof(objSrc.targetOldNM)!=="undefined"){objSrc.target=objSrc.targetOldNM;try{deleteobjSrc["targetOldNM"];}catch(e){objSrc.targetOldNM=null;}}}}}}AddEventListener(window,'load',externalLinks);NewMind.ETWP.GetQuerystringData=NewMind.GetQuerystringData;NewMind.ETWP.GetControlKey=function(node){var nodeClass=String($(node).attr('class'));var arrSegments=nodeClass.split(" ");var iControlKey=0;for(iIndex=0;iIndex<arrSegments.length;iIndex++){var strSegment=arrSegments[iIndex];if(strSegment.substring(0,1)==="c"){strSegment=strSegment.substring(1,strSegment.length);var iKey=parseInt(strSegment,10);if(!isNaN(iKey)){iControlKey=iKey;break;}}}return iControlKey;};NewMind.ETWP.MouseOver=function(){return{init:function(sSelector){$(sSelector).mouseover(function(){$(this).addClass('ie-hover');}).mouseout(function(){$(this).removeClass('ie-hover');});}};}();NewMind.ETWP.TabSwitcherHelpers=function(){return{IsInTabControl:function($control){if(typeof($control.jquery)==="undefined"){return;}var bIsInTabControl=false;if(typeof(NewMind.ETWP.TabSwitcher)!=="undefined"){bIsInTabControl=$control.parents("div.ctl_Tabs").length>0;}return bIsInTabControl;},CheckForTabReSize:function($control){if(typeof($control.jquery)==="undefined"){return;}if(typeof(NewMind.ETWP.TabSwitcher)!=="undefined"){var $tabContainer=$control.parents("div.ctl_Tabs");if($tabContainer.length>0){var tabVariableName='tabs'+NewMind.ETWP.GetControlKey($tabContainer[0]);var tabToResize=NewMind.ETWP.ActiveTabSwitchers[tabVariableName];if(typeof(tabToResize)!=="undefined"){tabToResize.ResizeContainerFromJQueryObject($control);}}}}};}();NewMind.ETWP.AjaxForms=function(){var doPostBack=function(node){var $node=$(node);var postbackURL=$node.attr('action');var $parentSysContainer=$node.parents('div.sys_control');var iControlKey=NewMind.ETWP.GetControlKey($parentSysContainer);var URL=postbackURL+"?PartialRenderType=html&PartialRenderControlList="+iControlKey;$.ajax({type:'post',url:URL,data:$node.serialize(),success:function(data){$parentSysContainer.html($(data).html());NewMind.ETWP.TabSwitcherHelpers.CheckForTabReSize($node);return false;},error:function(){$node.find('form').unbind('submit').submit();}});};return{postback:function(node){doPostBack(node);return false;}};}();NewMind.ETWP.ColumnResizer=function(){var resizeCols=function(sSelectors){var iHeight=0;$(sSelectors).each(function(){if($(this).height()>iHeight){iHeight=$(this).height();}}).height(iHeight);};return{init:function(){},resize:function(sSelectors){resizeCols(sSelectors);}};}();NewMind.ETWP.TwoColumnMaker=function(){var makeCols=function(sContainer){var $items=$(sContainer);var $parent=$items.parent();$items.before('<div class="oddColumn"></div><div class="evenColumn"></div>');$items.find("h3:odd").each(function(i){var $this=$(this);var $objChild=$this.next();$parent.find('.oddColumn').append($this).append($objChild);});$items.find("h3").each(function(i){var $this=$(this);var $objChild=$this.next();$parent.find('.evenColumn').append($this).append($objChild);});$items.remove();};var makeCols2=function(sSelector,sParent,breakPosition,offset){var $items=$(sSelector);var $parent=$(sParent);$parent.empty();if(offset>0){$parent.append($items.slice(0,offset));}$parent.append('<div class="oddColumn"></div><div class="evenColumn"></div>');$parent.find('.oddColumn').append($items.slice(offset,breakPosition));$parent.find('.evenColumn').append($items.slice(breakPosition,$items.length));};return{init:function(){},makeCols:function(sContainer){makeCols(sContainer);},makeCols2:function(sSelector,sParent,breakPosition,offset){makeCols2(sSelector,sParent,breakPosition,offset);}};}();NewMind.ETWP.GetResource=function(sResource,sDefault){try{return eval(sResource)||sDefault;}catch(e){return sDefault;}};
(function(){window.NewMind=window.NewMind||{};var NewMind=window.NewMind;NewMind.ajax={ajaxEnableItineraryLinks:function(oLink,bRetry){$("p.ex_AddButton a, td.delete a").click(NewMind.ajax.itinButtonClickHandler);},urlencode:function(strValue){return encodeURIComponent((strValue+'').toString()).replace(/!/g,'%21').replace(/'/g,'%27').replace(/\(/g,'%28').replace(/\)/g,'%29').replace(/\*/g,'%2A').replace(/%20/g,'+');},itinButtonClickHandler:function(e){var objEleLink=this;if(objEleLink.tagName.toLowerCase()!=="a")return;var strAction=null;var aryActionMatches=objEleLink.href.match(/epaction=([a-z]+)/);if(aryActionMatches.length>=2){strAction=aryActionMatches[1];}var intKey;var aryKeyMatches=objEleLink.href.match(/epkey=([0-9]+)/);if(aryKeyMatches.length>0){intKey=parseInt(aryKeyMatches[1]);if(isNaN(intKey))intKey=null;}if(strAction!=="ctrlremove"){if(intKey===null){strAction=null;}else{strAction=IsProductInItinData(intKey)?"remove":"add";}}if((strAction==="remove")&&(!IsItinButtonInItinControl(objEleLink))){e.preventDefault();JumpToItinBasket();return;}if((NewMind.ETWP)&&(NewMind.ETWP.env)&&(NewMind.ETWP.env.Disable_Ajax_Itinerary===true)){return;}if((!strAction)||(!intKey)){return;}e.preventDefault();if(strAction=="add"){$("a.ep_"+intKey).removeClass("ep_Add").addClass("ep_Adding").children("img").attr("alt",function(){return $(this).attr("alt").replace("Add","Adding");});}else if(strAction=="remove"||strAction=="ctrlremove"){$("a.ep_"+intKey).removeClass("ep_Added").addClass("ep_Removing").children("img").attr("alt",function(){return $(this).attr("alt").replace("Remove","Removing");});}NewMind.ajax.doItinAjaxAction(strAction,intKey,objEleLink);function IsProductInItinData(intKey){var arrExcursion=NewMind.env.excursion;for(var intIndex=0;intIndex<arrExcursion.length;intIndex++){if(arrExcursion[intIndex].product_key==intKey){return true;}}return false;}function IsItinButtonInItinControl(objEle){while(objEle){if((objEle.parentNode===objEle)||(!objEle.parentNode))break;objEle=objEle.parentNode;if($(objEle).hasClass("sys_control")){if(($(objEle).hasClass("ctl_ItineraryBasket"))||($(objEle).hasClass("ctl_ItineraryDetail")))return true;else return false;}}return false;}function JumpToItinBasket(){var arrEles=$("div.ctl_ItineraryBasket");if(arrEles.length>0){var objEleBasket=arrEles[0];ElementScrollTo(objEleBasket);}}},doItinAjaxAction:function(action,key,btn){var intItinLibCtrlKey=NewMind.env.page.itinlibkey;var strPostUrl=NewMind.ajax.CleanCurrentUrlForAjax();var objPostData={PartialRenderControlList:intItinLibCtrlKey,AsyncAction:"get-itin-data",epaction:action,epkey:key};$.get(strPostUrl,objPostData,function(data){if(arguments[1]=='success'){NewMind.ajax.itinAjaxCallback(action,key,btn,data);}});},itinAjaxCallback:function(action,key,btn,data){var rawData=eval(data);var strBasketTable=rawData[0].baskettable||"";var strBasketLinks=rawData[0].basketlinks||"";if(action=="add"){var objEleItinBasket=$("div.ctl_ItineraryBasket");$("a.ep_"+key).removeClass("ep_Adding").addClass("ep_Added").attr("href",function(){return $(this).attr("href").replace("add","remove");}).children("img").attr("alt",function(){return $(this).attr("alt").replace("Adding","Remove").replace(" to "," from ");}).end().flyTo(objEleItinBasket);UpdateItinBasket(strBasketTable,strBasketLinks);addProduct(key);}if(action=="remove"||action=="ctrlremove"){$('a.ep_'+key).removeClass("ep_Added").removeClass("ep_Removing").addClass("ep_Add").attr("href",function(){return $(this).attr("href").replace("remove","add");}).children("img").attr("alt",function(){return $(this).attr("alt").replace("Removing","Add").replace(" from "," to ");});UpdateItinBasket(strBasketTable,strBasketLinks);removeProduct(key);}if(NewMind.env.excursion.length==0){$("div.ctl_ItineraryBasket > div.EmptyMsg").show();}else{$("div.ctl_ItineraryBasket > div.EmptyMsg").hide();}setTimeout(function(){NewMind.ajax.itinUpdated.fire(action,key);},50);function UpdateItinBasket(strBasketTable,strBasketLinks){if($("table.ItineraryTbl").length>0){$("table.ItineraryTbl").replaceWith(strBasketTable);}else{$(".ctl_ItineraryBasket p.link").before(strBasketTable);}$("table.ItineraryTbl td.delete a").click(NewMind.ajax.itinButtonClickHandler);$(".ctl_ItineraryBasket p.link").replaceWith(strBasketLinks);}function addProduct(key){var arrExcursion=NewMind.env.excursion;for(var intIndex=0;intIndex<arrExcursion.length;intIndex++){if(arrExcursion[intIndex].product_key===key){return;}}arrExcursion.push({product_key:key});}function removeProduct(key){var arrExcursion=NewMind.env.excursion;for(var intIndex=0;intIndex<arrExcursion.length;intIndex++){if(arrExcursion[intIndex].product_key==key){arrExcursion.splice(intIndex,1);}}}},itinUpdated:new NewMind.CustomEvent("itinUpdated",this),CleanCurrentUrlForAjax:function(){var arrRemove=["Action","AsyncAction","PartialRender","PartialRenderControlList","PartialRenderType","epaction","epkey"];return CleanCurrentUrlQuerystring(arrRemove,true);function CleanCurrentUrlQuerystring(arrRemove,bDropHash){if(!arrRemove)arrRemove=[];arrRemove.push("");var strQuery=String(document.location.search);var strHash=String(document.location.hash);var strUrl=String(document.location.href);if(strUrl.indexOf("?")!=-1)strUrl=strUrl.substring(0,strUrl.indexOf("?"));if(strUrl.indexOf("#")!=-1)strUrl=strUrl.substring(0,strUrl.indexOf("#"));if(strQuery.substring(0,1)==="?")strQuery=strQuery.substring(1);arrQuery=strQuery.split("&");for(var iQ=arrQuery.length-1;iQ>=0;iQ--){var strName=arrQuery[iQ].toLowerCase();if(strName.indexOf("=")!=-1)strName=strName.substring(0,strName.indexOf("="));var bRemoved=false;for(var iR=0;iR<arrRemove.length;iR++){if(String(arrRemove[iR]).toLowerCase()===strName){bRemoved=true;break;}}if(bRemoved){arrQuery.splice(iQ,1);}}var strOut=strUrl;if(arrQuery.length>0)strOut+="?"+arrQuery.join("&");if(!bDropHash)strOut+=strHash;return strOut;}}};$(document).ready(NewMind.ajax.ajaxEnableItineraryLinks);})();
(function(){var objMap;var ptStart=null;var objEleWidgetContainer;var strContainerId;var objProdOverlay=null;var objItinOverlay=null;var objProxOverlay=null;var objInfoBoxOpenHandler=null;var objItinOverlayDisplayHandler=null;var bMapInited=false;NewMind.registerNameSpace("NewMind.tourism.settings");NewMind.tourism.settings.mappingDefaultPolyOn=true;NewMind.tourism.loadGenericSearchResultsMap=function(strContainerIdToInit){if(!bMapInited){strContainerId=strContainerIdToInit;searchResultsLoadMain();if(typeof(NewMind.Vars)!=="undefined"){if(parseInt(NewMind.Vars.Page.ProductKey,10)>0){$.get('/engine/updateProviderStats.asp?channel_id='+NewMind.Vars.Page.ChannelID+'&product_key='+NewMind.Vars.Page.ProductKey+'&provider_id=MAPVIEW');}}}else{objMap.toggleVisibility();}bMapInited=true;};NewMind.tourism.resetSearchResultsMap=function(){if(!objProdOverlay){return;}arrRequestHistory=[];NewMind.ajax.AJAX_MAPPING_DATA_REQUIRED=true;objProdOverlay.DataSource.LoadedProducts={};objProdOverlay.reset();objMap.updateView(true);};function searchResultsLoadMain(){var objMapConfig=NewMind.env.install.mapping.configurations[strContainerId];if(!objMapConfig)return;var bShowSearchResults=objMapConfig.showsearchresults;var bShowExcursion=objMapConfig.showexcursion;var bShowWidgets=objMapConfig.showwidgets;var bShowMapFilters=objMapConfig.showfilters;var bShowListMapLink=objMapConfig.showlistmaplink;var objEleCheckbox;objMap=NewMind.mapping.addMap(strContainerId,objMapConfig.api);objMap.mapstractionMap.addLargeControls();objMap.mapstractionMap.addMapTypeControls();objEleWidgetContainer=document.getElementById("mapWidgetContainer");if(typeof(NewMind.env.singleproductdetail)!=="undefined"){NewMind.mapping.DebugOutput("Handling NewMind.env.singleproductdetail");NewMind.mapping.DebugOutput("- Items: "+NewMind.env.singleproductdetail.length);var objMyDataSource=function(){this.isDynamic=false;};NewMind.extend(objMyDataSource,NewMind.mapping.MapDataSource);objMyDataSource.prototype.getData=function(){var arrMarkerData=[];var prodDataItem=NewMind.env.singleproductdetail[0];arrMarkerData.push(NewMind.tourism.ProductMapDataSource.prototype.getProdMarkerData(prodDataItem));return{complete:true,error:0,data:arrMarkerData};};var objOverlaySingleProduct=new NewMind.mapping.MarkerOverlay(new objMyDataSource);objMap.addOverlay('singleproduct',objOverlaySingleProduct,true);objMap.infoBoxOpened.subscribe(function(type,args){var mkr=args[0];objMap.mapstractionMap.removeMarker(mkr);objMap.mapstractionMap.addMarker(mkr);});if(typeof(NewMind.env.singleproductdetail)!=="undefined"){for(var intIndex=0;intIndex<NewMind.env.singleproductdetail.length;intIndex++){var objProductItem=NewMind.env.singleproductdetail[intIndex];ProductCache.AddEntry(objProductItem,{InSearchResults:true});ProductCache.GetEntry(objProductItem.product_key).Detail=".";}}}else if(bShowSearchResults){objProdOverlay=new NewMind.mapping.MarkerOverlay(new NewMind.tourism.ProductMapDataSource());objProdOverlay.Decluttering=true;var objGroupMarker=new mxn.Marker(new mxn.LatLonPoint(0.0,0.0));objGroupMarker.addData({"icon":"/images/DynamicMapping/shared_gfx/mkr-grp.png","iconSize":[27,30],"iconAnchor":[12,0]});objProdOverlay.DeclutteringOptions.marker=objGroupMarker;objMap.addOverlay('dynamicProds',objProdOverlay);if(objEleWidgetContainer){var objEleCheckbox=objProdOverlay.getShowHideCheckbox();objEleWidgetContainer.appendChild(objEleCheckbox);objEleCheckbox.checked=true;wrapShowHideCheck(objEleCheckbox,'show / hide Search Results');}var pmdFilterWgt=null;if(bShowMapFilters)new NewMind.tourism.ProductMarkerFilterWidget(objProdOverlay,document.getElementById('mapFilters'));if(bShowListMapLink){$('div.dynMapContainer').after('<div id="mapProductList"><h3>Products on Map</h3><ul></ul></div>');new NewMind.tourism.ProductSearchResultsWidget(objProdOverlay,document.getElementById('mapProductList'));}}if(bShowExcursion){objItinOverlay=new NewMind.mapping.MarkerOverlay(new NewMind.tourism.ItineraryMapDataSource());objItinOverlay.Decluttering=true;var objGroupMarker=new mxn.Marker(new mxn.LatLonPoint(0.0,0.0));objGroupMarker.addData({"icon":"/images/DynamicMapping/shared_gfx/mkr-grp-itn.png","iconSize":[27,30],"iconAnchor":[12,0]});objItinOverlay.DeclutteringOptions.marker=objGroupMarker;objMap.addOverlay('itinProds',objItinOverlay);if(objEleWidgetContainer){var objEleCheckbox=objItinOverlay.getShowHideCheckbox();objEleWidgetContainer.appendChild(objEleCheckbox);objEleCheckbox.checked=true;wrapShowHideCheck(objEleCheckbox,'show / hide Itinerary Items');$(objEleCheckbox).click(function(e){if(this.checked){objItinOverlayDisplayHandler.ShowItinOverlay();}else{objItinOverlayDisplayHandler.HideItinOverlay();}});}function PopProductCacheWithExcursionData(){for(var intIndex=0;intIndex<NewMind.env.excursion.length;intIndex++){var objExcursionItem=NewMind.env.excursion[intIndex];ProductCache.AddEntry(objExcursionItem);var intProductKey=objExcursionItem.product_key;ProductCache.GetEntry(intProductKey).Detail=objExcursionItem.info;}}PopProductCacheWithExcursionData();}objItinOverlayDisplayHandler=new CItinOverlayDisplayHandler();if(typeof(NewMind.env.wayfinderkey)!=="undefined"){var intCtrlKey=NewMind.env.install.mapping.configurations[strContainerId].controlkey;var intWayFinderKey=parseInt(NewMind.env.wayfinderkey,10);var objPolyOverlay;$.get('?PartialRenderControlList='+intCtrlKey,{wf_key:intWayFinderKey,wfact:'wfmap'},function(data){objPolyOverlay=new NewMind.mapping.PolylineOverlay(data);objMap.addOverlay('wayfinder'+intWayFinderKey,objPolyOverlay);var nlRoutePoints=data.documentElement.getElementsByTagName('rtept');var intMinLon=null;var intMinLat=null;var intMaxLon=null;var intMaxLat=null;for(var iRP=0;iRP<nlRoutePoints.length;iRP++){var intLon=nlRoutePoints[iRP].getAttribute('lon');var intLat=nlRoutePoints[iRP].getAttribute('lat');if((intMinLon===null)||(intLon<intMinLon))intMinLon=intLon;if((intMaxLon===null)||(intLon>intMaxLon))intMaxLon=intLon;if((intMinLat===null)||(intLat<intMinLat))intMinLat=intLat;if((intMaxLat===null)||(intLat>intMaxLat))intMaxLat=intLat;}objMap.mapstractionMap.setBounds(new mxn.BoundingBox(intMinLat,intMinLon,intMaxLat,intMaxLon));$('#'+strContainerId).find('div.MMnoprint').css('display','block');$('#'+strContainerId).find('div.MMnoprint').css('background-color','#C499A0');},'xml');}if((!bShowWidgets)&&(objEleWidgetContainer)){$(objEleWidgetContainer).hide();}if(!bShowMapFilters){$("#mapFilters").hide();}objInfoBoxOpenHandler=new CInfoBoxOpenHandler(objMap);InterceptProductDetailLinks();objMap.mapstractionMap.addEventListener('moveend',MapMoved,false);CenterMapUsingAvailableData();function MapMoved(){if(NewMind.mapping.DISABLE_DATA_REQUESTS===true){if(ptStart===null)return;var ptCurrent=objMap.mapstractionMap.getCenter();var Dist=DistComparison(ptStart,ptCurrent);var bMatch=(Dist<DistIsCloseEnough());if(!bMatch){NewMind.mapping.DebugOutput("MapMoved - waiting for Map to Init fully [current distance from init point: "+Dist+" km]");}else{NewMind.mapping.DebugOutput("MapMoved - arrived at init point [distance: "+Dist+" km]");NewMind.mapping.DISABLE_DATA_REQUESTS=false;objMap.updateView(true,true);}}function DistComparison(pt1,pt2){var ptLL1=new LatLng(pt1.lat,pt1.lng||pt1.lon);var ptLL2=new LatLng(pt2.lat,pt2.lng||pt2.lon);var Dist=ptLL1.distance(ptLL2);NewMind.mapping.DebugOutput("DistComparison: LatLngDist: "+Dist);return Dist;}function DistIsCloseEnough(){var intZoom=objMap.mapstractionMap.getZoom();var dist=Math.pow(4,7-(intZoom/2));NewMind.mapping.DebugOutput("DistIsCloseEnough - Zoom:"+intZoom+" Dist: "+dist);return dist;}}}function wrapShowHideCheck(oInp,sText){var checkedState=oInp.checked;$(oInp).wrap('<div class=\"chk-overlayshowhide '+oInp.id+'\"></div>').after('<label for=\"'+oInp.id+'\">'+sText+'</label>');oInp.checked=checkedState;}function CInfoBoxOpenHandler(objMap){var bIgnoreOpenEvent=false;var intLastProdKey=null;var intRetryCountLimit=30;var intRetryTimeout=500;this.ReOpenInfoBox=function(objMkr){if((!objMkr)||(!objMkr.getAttribute("product")))return;var intProdKey=objMkr.getAttribute("product").product_key;if(!intProdKey)return;if(intProdKey!==intLastProdKey)return;objMkr.openBubble();};objMap.infoBoxOpened.subscribe(function(type,args){if(bIgnoreOpenEvent)return;var objMkr=args[0];if(!objMkr)return;intLastProdKey=objMkr.getAttribute("product").product_key;InfoBoxOpenWorker(objMkr);});function InfoBoxOpenWorker(objMkr,intRetryCount){var objProdData=objMkr.getAttribute("product");if(!objProdData)return;var intProdKey=objProdData.product_key;if(intProdKey!==intLastProdKey)return;if((typeof(intRetryCount)==="undefined")||isNaN(intRetryCount))intRetryCount=0;if(intRetryCount<2)NewMind.mapping.DebugOutput("InfoBoxOpenWorker [RetryCount: "+intRetryCount+"]");else if(intRetryCount==2)NewMind.mapping.DebugOutput("InfoBoxOpenWorker [RetryCount: ..]");if(objMkr.getAttribute("IsInfoBoxReady")!==true){intRetryCount++;if(intRetryCount<=intRetryCountLimit){setTimeout(function(){InfoBoxOpenWorker(objMkr,intRetryCount)},intRetryTimeout);return;}}else if(intRetryCount!=0){bIgnoreOpenEvent=true;objMkr.openBubble();bIgnoreOpenEvent=false;}setTimeout(InfoBoxBindings,100);}function InfoBoxBindings(){setTimeout(UpdateInfoBoxItinButtons,500);InterceptProductDetailLinks();BindPhotoSynthLinks();externalLinks();}function UpdateInfoBoxItinButtons(){var arrItinBtns=$("div.dynMapContainer div.InfoBoxContent p.ex_AddButton > a");arrItinBtns.each(function(i){var objEle=this;if(!objEle.AttachedItinButtonHandler){var objNode=$(this);var intProdKey=GetProdKeyFromContainer(objEle);if((intProdKey)&&(ProductCache.IsProductInItin(intProdKey))){objNode.addClass("ep_Added");}objNode.click(NewMind.ajax.itinButtonClickHandler);objEle.AttachedItinButtonHandler=true;}});function GetProdKeyFromContainer(objEle){var objEleCont=GetContainer(objEle);if(!objEleCont)return null;var arrClass=String(objEleCont.className).split(" ");var strClass=null;for(var iC=0;iC<arrClass.length;iC++){strClass=arrClass[iC];if((strClass.length<2)||(strClass.substring(0,1)!=="p"))strClass=null;else break;}if(strClass===null)return null;var intProdKey=parseInt(strClass.substring(1,strClass.length));if(isNaN(intProdKey))return null;return intProdKey;function GetContainer(objEle){while(objEle){if((objEle.parentNode===objEle)||(!objEle.parentNode))break;objEle=objEle.parentNode;if($(objEle).hasClass("InfoBoxContent"))return objEle;}return null;}}}function BindPhotoSynthLinks(){if(jQuery!==undefined){$("ul.photosynths a").click(NewMind.ETWP.PhotoSynths.RenderPhotoSynth);return false;}}}function CenterMapUsingAvailableData(){NewMind.mapping.DebugOutput("CenterMapUsingAvailableData");if(isMapInitialised()){CenterMapUsingAvailableData_Inner();}else{kickMap();executeWhenReady(function(){if(isMapInitialised()){NewMind.mapping.DebugOutput("CenterMapUsingAvailableData: Initialised!");return true;}return false;},CenterMapUsingAvailableData_Inner,function(intAttempts,intMaxAttempts){kickMap();});}function kickMap(){var $map=$(objMap.mapstractionMap.currentElement);objMap.mapstractionMap.resizeTo($map.width(),$map.height());}function executeWhenReady(fncCondition,fncSuccess,fncProgress,intInterval,intMaxAttempts,intAttempts){if(!fncCondition||!fncSuccess){return;}intInterval=parseInt(intInterval,10);if(isNaN(intInterval)||(intInterval<=0)){intInterval=100;}intMaxAttempts=parseInt(intMaxAttempts,10);if(isNaN(intMaxAttempts)||(intMaxAttempts<=0)){intMaxAttempts=50;}intAttempts=parseInt(intAttempts,10);if(isNaN(intAttempts)||(intAttempts<0)){intAttempts=0;}if(intAttempts>=intMaxAttempts){NewMind.mapping.DebugOutput("- Give up");fncSuccess();return;}var bSuccess=false;try{bSuccess=fncCondition();}catch(e){}if(bSuccess){try{fncSuccess();}catch(e){}return;}intAttempts++;if(fncProgress){fncProgress(intAttempts,intMaxAttempts);}setTimeout(function(){executeWhenReady(fncCondition,fncSuccess,fncProgress,intInterval,intMaxAttempts,intAttempts);},100);}return;function isMapInitialised(){var d=objMap.mapstractionMap.getBounds();if(!d||!d.ne||!d.sw){return false;}if(isNaN(d.ne.lat)||isNaN(d.sw.lat)||isNaN(d.ne.lon)||isNaN(d.sw.lon)){return;}if((d.sw.lat==d.ne.lat)||(d.sw.lat==d.ne.lat)){return false;}return true;}}function CenterMapUsingAvailableData_Inner(){var bGotPoly=false;var bGotProx=false;var bGotProdLatLon=false;var bGotSingleProduct=false;var llProxPoint=null;if((NewMind.env.search)&&(NewMind.env.search.polygon)){var strPolyOverlayID="polygon";if(!objMap.getOverlay(strPolyOverlayID)){var polygon={color:'#0000FF',width:1,opacity:0.5,closed:true,fillColor:'#CCCCFF',points:[]};var plypts=NewMind.env.search.polygon.points;for(var iPCount=0;iPCount<plypts.length;iPCount++){polygon.points.push({lat:plypts[iPCount].y,lon:plypts[iPCount].x});}var objPolyOverlay=new NewMind.mapping.PolylineOverlay(polygon);objMap.addOverlay(strPolyOverlayID,objPolyOverlay);if(objEleWidgetContainer){var objEleCheckbox=objPolyOverlay.getShowHideCheckbox();objEleWidgetContainer.appendChild(objEleCheckbox);objEleCheckbox.checked=true;wrapShowHideCheck(objEleCheckbox,'show / hide Area Outlines');}if(!NewMind.tourism.settings.mappingDefaultPolyOn){objPolyOverlay.hide();}}bGotPoly=true;}if((NewMind.env.search)&&(NewMind.env.search.proximity)){var strProxOverlayID="proxProd";if((NewMind.env.search.proximity.latitude!==null)&&(NewMind.env.search.proximity.longitide!==null)){var llProxPoint=new mxn.LatLonPoint(NewMind.env.search.proximity.latitude,NewMind.env.search.proximity.longitude);}else{var osP=new OSRef(NewMind.env.search.proximity.eastings,NewMind.env.search.proximity.northings);var llProxPoint=osP.toLatLng();}if(!objMap.getOverlay(strProxOverlayID)){var arrProxMkrData=[{lat:llProxPoint.lat,lon:llProxPoint.lng,label:NewMind.env.search.proximity.product_name,infoBubble:NewMind.env.search.proximity.product_name,showProximity:true,icon:"/images/DynamicMapping/shared_gfx/mkr-prox.png",iconSize:[23,26],iconAnchor:[12,0]}];objProxOverlay=new NewMind.mapping.MarkerOverlay(arrProxMkrData);objMap.addOverlay(strProxOverlayID,objProxOverlay);if(objEleWidgetContainer){var objEleCheckbox=objProxOverlay.getShowHideCheckbox();objEleWidgetContainer.appendChild(objEleCheckbox);objEleCheckbox.checked=true;wrapShowHideCheck(objEleCheckbox,'show / hide Proximity Radius');}}bGotProx=true;}if((NewMind.env.search)&&(NewMind.env.search.prodsEN)){bGotProdLatLon=true;}if(typeof(NewMind.env.singleproductdetail)!=="undefined"){bGotSingleProduct=true;}var bAwaitingAjaxMapData=false;if((NewMind.ajax)&&(NewMind.ajax.AJAX_MAPPING_DATA_REQUIRED===true))bAwaitingAjaxMapData=true;if((ProductCache.GetCount()>0)&&(!bAwaitingAjaxMapData)){UpdateProdsLatLon();if((NewMind.env.search)&&(NewMind.env.search.prodsEN)){bGotProdLatLon=true;}}var hashMapDetails=(function(){var mtc;var hashMapDetails={};var reHashMapStuff=/(map[xyz])=([\d\.-]+)/g;while((mtc=reHashMapStuff.exec(window.location.hash))!==null)hashMapDetails[mtc[1]]=mtc[2];return hashMapDetails;})();if('mapx' in hashMapDetails&&'mapy' in hashMapDetails&&'mapz' in hashMapDetails){var ptCentre=new mxn.LatLonPoint(hashMapDetails.mapy,hashMapDetails.mapx);NewMind.mapping.DebugOutput("- Position in url hash");ptStart=ptCentre;NewMind.mapping.DebugOutput("- Set ptStart [Hash] to: "+ptStart.toString());objMap.mapstractionMap.setCenterAndZoom(ptCentre,hashMapDetails.mapz);}else if(bGotProx){var ptCentre=new mxn.LatLonPoint(llProxPoint.lat,llProxPoint.lng);NewMind.mapping.DebugOutput(" - Proximity specified");ptStart=ptCentre;NewMind.mapping.DebugOutput("- Set ptStart [Proximity] to: "+ptStart.toString());objMap.mapstractionMap.setCenterAndZoom(ptCentre,13);}else if(bGotPoly){NewMind.mapping.DebugOutput(" - Polygon specified");var llSW=new mxn.LatLonPoint(NewMind.env.search.polygon.swy,NewMind.env.search.polygon.swx);;var llNE=new mxn.LatLonPoint(NewMind.env.search.polygon.ney,NewMind.env.search.polygon.nex);ptStart=GetCentrePointWithinBounds(llSW,llNE);var polyBounds=new mxn.BoundingBox(llSW.lat,llSW.lng,llNE.lat,llNE.lng);NewMind.mapping.DebugOutput("- Set ptStart [Polygon] to: "+ptStart.toString());objMap.mapstractionMap.setBounds(polyBounds);}else if(bGotProdLatLon){NewMind.mapping.DebugOutput("- Centered over products (prodsLatLon)");var llSW=new mxn.LatLonPoint(NewMind.env.search.prodsEN.swy,NewMind.env.search.prodsEN.swx);var llNE=new mxn.LatLonPoint(NewMind.env.search.prodsEN.ney,NewMind.env.search.prodsEN.nex);ptStart=GetCentrePointWithinBounds(llSW,llNE);NewMind.mapping.DebugOutput("- Set ptStart [ProdsLatLon] to: "+ptStart.toString());NewMind.mapping.DebugOutput("set bounds "+llSW.lat+","+llSW.lng+","+llNE.lat+","+llNE.lng);setTimeout(function(){objMap.mapstractionMap.setBounds(new mxn.BoundingBox(llSW.lat,llSW.lng,llNE.lat,llNE.lng))},500);NewMind.mapping.DebugOutput("get bounds "+objMap.mapstractionMap.getBounds().toString());}else if(bGotSingleProduct){NewMind.mapping.DebugOutput("- Centered over single product");var ptCentre=new mxn.LatLonPoint(NewMind.env.singleproductdetail[0].latitude,NewMind.env.singleproductdetail[0].longitude);ptStart=ptCentre;NewMind.mapping.DebugOutput("- Set ptStart [single product] to: "+ptStart.toString());objMap.mapstractionMap.setCenterAndZoom(ptCentre,15);}else{var ptCentre=new mxn.LatLonPoint(NewMind.env.install.mapping.home.lat,NewMind.env.install.mapping.home.lon);NewMind.mapping.DebugOutput("- Default / home location");ptStart=ptCentre;NewMind.mapping.DebugOutput("- Set ptStart [Default] to: "+ptStart.toString());objMap.mapstractionMap.setCenterAndZoom(ptCentre,NewMind.env.install.mapping.home.zoom);}function GetCentrePointWithinBounds(pt1,pt2){var sngLat=(pt1.lat+pt2.lat)/2;var sngLng=(pt1.lng+pt2.lng)/2;return new mxn.LatLonPoint(sngLat,sngLng);}}function InterceptMappingPreDataCallback(fncCallback){var fncOld=NewMind.tourism.ProductMapDataSource.prototype.preGetData;NewMind.tourism.ProductMapDataSource.prototype.preGetData=function(){if(fncCallback.apply(this,arguments)===false)return false;return fncOld.apply(this,arguments);};}InterceptMappingPreDataCallback(ProductDataSource_PreGetData);function InterceptMappingSuccessCallback(fncCallback){var fncOld=NewMind.tourism.ProductMapDataSource.prototype.handleSuccess;NewMind.tourism.ProductMapDataSource.prototype.handleSuccess=function(){var varRet=fncOld.apply(this,arguments);fncCallback.apply(this,arguments);return varRet;};}InterceptMappingSuccessCallback(ProductDataSource_PostGetData);function CProductCache(){var objEntries={};var intCount=0;this.AddEntry=function(objData,objCustomAttribs){var intProdKey=objData.product_key;if(objEntries.hasOwnProperty(intProdKey)){objEntries[intProdKey].Stub=objData;}else{intCount++;objEntries[intProdKey]={ProductKey:objData.product_key,Stub:objData,Detail:null};}if(objCustomAttribs){var objEntry=objEntries[intProdKey];for(i in objCustomAttribs){objEntry.Custom=objEntry.Custom||{};objEntry.Custom[i]=objCustomAttribs[i];}}};this.GetEntry=function(intProdKey){return objEntries[intProdKey]||null;};this.GetKeys=function(){return GetKeyList(true,true);};this.GetKeysWithoutDetail=function(){return GetKeyList(false,true);};function GetKeyList(bWithDetail,bWithoutDetail){var arrKeys=[];for(var intProdKey in objEntries){if(objEntries.hasOwnProperty(intProdKey)){if((bWithDetail)&&(objEntries[intProdKey].Detail!==null))arrKeys.push(intProdKey);else if((bWithoutDetail)&&(objEntries[intProdKey].Detail===null))arrKeys.push(intProdKey);}}return arrKeys;}this.GetMarkerInitData=function(intProdKey,objOverlay){var objEntry=ProductCache.GetEntry(intProdKey);if(!objEntry)return null;if((typeof(objOverlay)!=="object")||(objOverlay===null)){if((objItinOverlay)&&(objItinOverlay.getShowing())&&(IsProductInItin(intProdKey))){objOverlay=objItinOverlay;}else{objOverlay=objProdOverlay;}}var objProduct=objEntry.Stub;var ptLocationOSRef=new OSRef(objProduct.eastings,objProduct.northings);var ptLocationLatLon=ptLocationOSRef.toLatLng();var objIconData=objOverlay.DataSource.getMarkerIcon(objProduct.prodtype_id);return{label:objProduct.product_name,lat:ptLocationLatLon.lat,lon:ptLocationLatLon.lng,icon:objIconData.iconUrl,iconSize:objIconData.iconSize,iconAnchor:objIconData.iconAnchor,product:objProduct};};this.IsProductInItin=IsProductInItin;function IsProductInItin(intProdKey){if((!NewMind.env)||(!NewMind.env.excursion))return false;for(var iEx=0;iEx<NewMind.env.excursion.length;iEx++)if(NewMind.env.excursion[iEx].product_key===intProdKey)return true;return false;};this.IsProductInSearchResults=IsProductInSearchResults;function IsProductInSearchResults(intProdKey){var objEntry=ProductCache.GetEntry(intProdKey);if(!objEntry)return false;return((objEntry.Custom)&&(objEntry.Custom.InSearchResults));}this.GetCount=function(){return intCount;};}var ProductCache=new CProductCache();var arrRequestHistory=[];function ProductDataSource_PreGetData(strPostUrl,objData){if(NewMind.mapping.DISABLE_DATA_REQUESTS===true)return false;var objEntry=null;for(var intIndex=0;intIndex<arrRequestHistory.length;intIndex++){if(arrRequestHistory[intIndex].DataSource===this){objEntry=arrRequestHistory[intIndex];break;}}if(objEntry===null){objEntry={DataSource:this,RequestHistory:[]};arrRequestHistory.push(objEntry);}return DoWeNeedToProcessThis(objEntry.RequestHistory,strPostUrl,objData);function DoWeNeedToProcessThis(arrRequestHistory,strPostUrl,objData){if(typeof(objData)==="undefined")objData=null;arrId=[];if(objData!=null)for(i in objData)arrId.push(i+"="+objData[i]);var strId=arrId.join("&");bProcess=true;for(var intIndex=0;intIndex<arrRequestHistory.length;intIndex++){if(arrRequestHistory[intIndex]===strId){bProcess=false;break;}}if(bProcess)arrRequestHistory.push(strId);return bProcess;}}function ProductDataSource_PostGetData(){NewMind.mapping.DebugOutput("ProductDataSource Callback: Data = "+String(arguments[1]).substring(0,100));var bTooManyItems=false;var rawData=eval(arguments[1]);if(rawData.length>0){if(rawData[0].count){bTooManyItems=true;}else{for(var intIndex=0;intIndex<rawData.length;intIndex++){var objDataItem=rawData[intIndex];ProductCache.AddEntry(objDataItem,{InSearchResults:true});}UpdateProductCacheDetailData();}}if(NewMind.ajax.AJAX_MAPPING_DATA_REQUIRED===true){NewMind.ajax.AJAX_MAPPING_DATA_REQUIRED=false;NewMind.mapping.DebugOutput("ProductDataSource Callback: AJAX_MAPPING_DATA_REQUIRED");if(bTooManyItems)NewMind.mapping.DebugOutput("- Too many items");else{NewMind.mapping.DebugOutput("- Need to adjust Map Centre");UpdateProdsLatLon();CenterMapUsingAvailableData();}}UpdateMarkerInfoBoxes();objItinOverlayDisplayHandler.AssertZIndexOrdering();}function UpdateProductCacheDetailData(arrProdKeysLimit,fncCallback){if(typeof(arrProdKeysLimit)==="undefined")arrProdKeysLimit=null;else{if(!isNaN(arrProdKeysLimit))arrProdKeysLimit=[arrProdKeysLimit];}if(typeof(fncCallback)==="undefined")fncCallback=null;var arrProdKeysToRetrieve=ProductCache.GetKeysWithoutDetail();if(arrProdKeysToRetrieve.length==0)return;if(arrProdKeysLimit!==null){for(var intIndex=arrProdKeysToRetrieve.length-1;intIndex>=0;intIndex--){var bInLimitList=false;for(var intIndexLimit=0;intIndexLimit<arrProdKeysLimit.length;intIndexLimit++){if(arrProdKeysToRetrieve[intIndex]===arrProdKeysLimit[intIndexLimit]){bInLimitList=true;break;}}if(!bInLimitList)arrProdKeysToRetrieve.splice(intIndex,1);}}if(arrProdKeysToRetrieve.length==0)return;var objEleLoading=objMap.getLoadingMessageClone(true);var intCtrlKey=NewMind.env.install.mapping.configurations[strContainerId].controlkey;var strProdKeyList=arrProdKeysToRetrieve.join(",");var strQS=NewMind.ajax.CleanCurrentUrlForAjax();strQS=strQS.slice(strQS.indexOf("?")+1);var strDataUrl="?AsyncAction=search-detail&PartialRenderControlList="+intCtrlKey+"&productkeys="+strProdKeyList+"&"+strQS;$.get(strDataUrl,null,Callback);function Callback(data,status){var bSuccess=CallbackInner(data,status);NewMind.mapping.DebugOutput("Callback for UpdateProductCacheDetailData [Success: "+bSuccess+"]");objEleLoading.parentNode.removeChild(objEleLoading);UpdateMarkerInfoBoxes();objItinOverlayDisplayHandler.AssertZIndexOrdering();if(fncCallback)fncCallback(bSuccess);function CallbackInner(data,status){if(status!=="success"){alert("Product Detail retrieval failed");return false;}var rawData=eval(data);for(var intIndex=0;intIndex<rawData.length;intIndex++){if(rawData[intIndex].info){var intProdKey=rawData[intIndex].product_key;ProductCache.GetEntry(intProdKey).Detail=rawData[intIndex].info;}}return true;}}}function UpdateProdsLatLon(arrLLs){NewMind.mapping.DebugOutput("&nbsp;> UpdateProdsLatLon");var arrLLs=GetProdLLsFromProductCache();var intMinN=null;var intMinE=null;var intMaxN=null;var intMaxE=null;for(var intIndex=0;intIndex<arrLLs.length;intIndex++){var intN=arrLLs[intIndex].lat;var intE=arrLLs[intIndex].lng;if((intMinN===null)||(intN<intMinN))intMinN=intN;if((intMaxN===null)||(intN>intMaxN))intMaxN=intN;if((intMinE===null)||(intE<intMinE))intMinE=intE;if((intMaxE===null)||(intE>intMaxE))intMaxE=intE;}NewMind.mapping.DebugOutput("Lowest and largest Lat Lon &nbsp;-> "+intMinE+","+intMinN+" - "+intMaxE+","+intMaxN);NewMind.env.search=NewMind.env.search||{};if((intMinN===null)||(intMaxN===null)||(intMinE===null)||(intMaxE===null))NewMind.env.search.prodsEN=null;else{var objBounds=ExpandBoundingBox(intMinE,intMaxE,intMinN,intMaxN);NewMind.env.search.prodsEN={swx:objBounds.MinE,swy:objBounds.MinN,nex:objBounds.MaxE,ney:objBounds.MaxN};NewMind.mapping.DebugOutput("&nbsp;-> "+objBounds.MinE+","+objBounds.MinN+" - "+objBounds.MaxE+","+objBounds.MaxN+" [Expanded]");}function GetProdLLsFromProductCache(){var arrLLs=[];if(ProductCache){var arrKeys=ProductCache.GetKeys();for(var intIndex=0;intIndex<arrKeys.length;intIndex++){var objStub=ProductCache.GetEntry(arrKeys[intIndex]).Stub;arrLLs.push({lat:objStub.latitude,lng:objStub.longitude});}}NewMind.mapping.DebugOutput("&nbsp;&nbsp;- GetProdLLsFromProductCache ["+arrLLs.length+"]");return arrLLs;}function ExpandBoundingBox(intMinE,intMaxE,intMinN,intMaxN){var sngTolerance=0.02;var intSizeE=intMaxE-intMinE;var intSizeN=intMaxN-intMinN;intMinE=intMinE-(intSizeE*sngTolerance);intMaxE=intMaxE+(intSizeE*sngTolerance);intMinN=intMinN-(intSizeN*sngTolerance);intMaxN=intMaxN+(intSizeN*sngTolerance);return{MinE:intMinE,MaxE:intMaxE,MinN:intMinN,MaxN:intMaxN};}}NewMind.tourism.updateMarkerInfoBoxes=UpdateMarkerInfoBoxes;function UpdateMarkerInfoBoxes(){if(!objMap)return;var arrOverlayIds=objMap.getOverlayList();for(var intIndexOverlay=0;intIndexOverlay<arrOverlayIds.length;intIndexOverlay++){var objOverlay=objMap.getOverlay(arrOverlayIds[intIndexOverlay]);if(objOverlay.LoadedMarkers){var arrMarkers=objOverlay.LoadedMarkers;for(var intIndex=0;intIndex<arrMarkers.length;intIndex++){var objMkr=arrMarkers[intIndex];if(objMkr.getAttribute("IsInfoBoxReady")!==true){UpdateMarkerInfoBox(objMkr);}}}InterceptProductDetailLinks();}function UpdateMarkerInfoBox(objMkr){var objProdData=objMkr.getAttribute("product");if(!objProdData)return;var intProductKey=objProdData.product_key;var objProdData=ProductCache.GetEntry(intProductKey);var bGotData=true;if((!objProdData)||(!objProdData.Detail))bGotData=false;var bReqUpdate;if(objMkr.getAttribute("IsInfoBoxReady")===true){bReqUpdate=false;}else if(bGotData&&(objMkr.getAttribute("IsInfoBoxReady")===false)){bReqUpdate=true;}else{bReqUpdate=true;}if(bReqUpdate){var strContent;if(bGotData){strContent="<div class=\"InfoBoxContent p"+intProductKey+"\">"+objProdData.Detail+"</div>";}else strContent=GetLoadingMessage();objMkr.setAttribute("IsInfoBoxReady",bGotData);objMap.mapstractionMap.removeMarker(objMkr);objMkr.setInfoBubble(strContent);objMap.mapstractionMap.addMarker(objMkr);}function GetLoadingMessage(){var strOut="<h3>Loading..</h3><p>The data is still being loaded, please wait a few seconds and the data should automatically appear.</p>";return strOut;}}}NewMind.mapping.PanToProduct=function(intProdKey){if(isNaN(intProdKey))throw "NewMind.mapping.PanToProduct: Invalid / absent intProdKey";var objProdData=ProductCache.GetEntry(intProdKey);if(!objProdData)throw "NewMind.mapping.PanToProduct: Data not available in ProductCache";var ptLocationOS=new OSRef(objProdData.Stub.eastings,objProdData.Stub.northings);NewMind.mapping.PanToPoint(ptLocationOS,14);};NewMind.mapping.PanToPoint=function(ptCentre,intZoom){var arrMapIds=NewMind.mapping.getMapIDList();if(arrMapIds.length==0)return null;var strMapId=arrMapIds[0];var objMap=NewMind.mapping.getMap(strMapId);if(!objMap)return;if(!ptCentre)return;var ptCentreLatLng;if((!isNaN(parseFloat(ptCentre.lat)))&&(!isNaN(parseFloat(ptCentre.lng))||!isNaN(parseFloat(ptCentre.lon))))ptCentreLatLng=ptCentre;else if(ptCentre.toLatLng)ptCentreLatLng=ptCentre.toLatLng();else ptCentreLatLng=null;if(!ptCentreLatLng)return;objMap.mapstractionMap.setCenterAndZoom(ptCentreLatLng,intZoom);ElementScrollTo(document.getElementById(strMapId));};function InterceptProductDetailLinks(){if(!objMap)return;var arrElePaths=[];arrElePaths.push(".ctl_ProductList a.ProductDetail");arrElePaths.push("div.dynMapContainer a.ProductDetail");$(arrElePaths.join(",")).each(StoreMapPosInUrl);$(".ctl_ProductList ul.paging li a").each(StoreMapPosInUrl);$(".ctl_ProductList ul.paging li a").each(StoreMapPosInLinkDest);function StoreMapPosInUrl(){if(this.proddetailfixed){return;}this.proddetailfixed=true;$(this).click(function(e){var objPos=GetMapPos();window.location.hash="mapx="+objPos.MapX+"&mapy="+objPos.MapY+"&mapz="+objPos.MapZ;});}function StoreMapPosInLinkDest(){var objEleSrc=this;if(this.linkdestincmappos){return;}this.linkdestincmappos=true;$(objEleSrc).click(function(){StoreMapPosInLinkDest_Click(objEleSrc);});function StoreMapPosInLinkDest_Click(objEleLink){var strLinkDest=objEleLink.href;var strUrl;var arrUrlHash;if(strLinkDest.indexOf("#")===-1){strUrl=strLinkDest;arrUrlHash=[];}else{strUrl=strLinkDest.substring(0,strLinkDest.indexOf("#"));arrUrlHash=strLinkDest.substring(strLinkDest.indexOf("#")+1,strLinkDest.length).split("&");}for(var iHash=arrUrlHash.length-1;iHash>=0;iHash--){var strHashEntry=arrUrlHash[iHash];var strName;if(strHashEntry.indexOf("=")===-1){strName=strHashEntry;}else{strName=strHashEntry.substring(0,strHashEntry.indexOf("="));}if(i===1){NewMind.mapping.DebugOutput("- Hash Entry Name: "+strName);}if((strName==="")||(strName==="mapx")||(strName==="mapy")||(strName==="mapz")){arrUrlHash.splice(iHash,1);}}var objPos=GetMapPos();arrUrlHash.push("mapx="+objPos.MapX);arrUrlHash.push("mapy="+objPos.MapY);arrUrlHash.push("mapz="+objPos.MapZ);objEleLink.href=strUrl+"#"+arrUrlHash.join("&");}}function GetMapPos(){var ptCenterLatLon=objMap.mapstractionMap.getCenter();return{MapX:NewMind.correctFloatError(ptCenterLatLon.lon),MapY:NewMind.correctFloatError(ptCenterLatLon.lat),MapZ:objMap.mapstractionMap.getZoom()};}}function CItinOverlayDisplayHandler(){function InterceptProdDataSourceExcursionTest(){var fncOld=NewMind.tourism.ProductMapDataSource.prototype.checkProductMarkerNotInExcursion;NewMind.tourism.ProductMapDataSource.prototype.checkProductMarkerNotInExcursion=function(oMkr){if((objItinOverlay)&&(!objItinOverlay.getShowing())){return true;}return(fncOld.apply(this,arguments));};}InterceptProdDataSourceExcursionTest();NewMind.ajax.itinUpdated.subscribe(ItinUpdated,this,true);objMap.mapstractionMap.addEventListener('moveend',AssertZIndexOrdering,false);this.HideItinOverlay=function(){if(!objItinOverlay)return;objItinOverlay.hide();if((objProdOverlay)&&(objProdOverlay.getShowing())){var arrProdKeys=GetItinProdKeys();for(var iEx=arrProdKeys.length-1;iEx>=0;iEx--){var intProdKey=arrProdKeys[iEx];if(!ProductCache.IsProductInSearchResults(intProdKey)){arrProdKeys.splice(iEx,1);}}AddMarkersToOverlay(objProdOverlay,arrProdKeys);for(var iMkr=0;iMkr<objProdOverlay.LoadedMarkers.length;iMkr++){var objMkr=objProdOverlay.LoadedMarkers[iMkr];objMkr.show();}}AssertZIndexOrdering();};this.ShowItinOverlay=function(){if(!objItinOverlay)return;if(objProdOverlay){for(var iIndex=objProdOverlay.LoadedMarkers.length-1;iIndex>=0;iIndex--){var objMkr=objProdOverlay.LoadedMarkers[iIndex];var intProdKey=objMkr.getAttribute("product").product_key;if(ProductCache.IsProductInItin(intProdKey)){objMkr.hide();}}}objItinOverlay.show();var arrProdKeys=GetItinProdKeys();AddMarkersToOverlay(objItinOverlay,arrProdKeys);AssertZIndexOrdering();};function ItinUpdated(type,args,me){if(!objItinOverlay)return;if(!objItinOverlay.getShowing())return;for(var iEx=objItinOverlay.LoadedMarkers.length-1;iEx>=0;iEx--){var objMkr=objItinOverlay.LoadedMarkers[iEx];var intProdKey=objMkr.getAttribute("product").product_key;if(!ProductCache.IsProductInItin(intProdKey)){objItinOverlay.LoadedMarkers.splice(iEx,1);objMap.mapstractionMap.removeMarker(objMkr);}}this.HideItinOverlay();this.ShowItinOverlay();if(NewMind.env.install.mapping.configurations[strContainerId].api!=='google'){var strItinUpdateAction=args[0];var intProdKey=parseInt(args[1]);if((strItinUpdateAction==="add")&&(!isNaN(intProdKey))){if((objItinOverlay)&&(objItinOverlay.getShowing())){var arrMarkers=objItinOverlay.LoadedMarkers;for(var intIndex=0;intIndex<arrMarkers.length;intIndex++){var objMkr=arrMarkers[intIndex];if(objMkr.getAttribute("product")&&(objMkr.getAttribute("product").product_key===intProdKey)){objInfoBoxOpenHandler.ReOpenInfoBox(objMkr);break;}}}}}setTimeout(AssertZIndexOrdering,100);};this.AssertZIndexOrdering=AssertZIndexOrdering;function AssertZIndexOrdering(){ProcessMarkerZIndexes(objItinOverlay,SetPositive);ProcessMarkerZIndexes(objProdOverlay,SetNegative);ProcessMarkerZIndexes(objProxOverlay,SetZero);function ProcessMarkerZIndexes(objOverlay,fncProcess){if((!objOverlay)||(!fncProcess))return;var arrMkrEles=GetMarkerElesForOverlay(objOverlay);for(var iMkrEle=0;iMkrEle<arrMkrEles.length;iMkrEle++){var objMkrEle=arrMkrEles[iMkrEle];var intZIndex=objMkrEle.style.zIndex;if(!isNaN(intZIndex)){objMkrEle.style.zIndex=fncProcess(intZIndex);}}}function SetPositive(intIn,bForce){var intIn=Math.abs(parseInt(intIn));if((bForce!==false)&&(intIn===0))intIn=1;return intIn;}function SetNegative(intIn,bForce){return -SetPositive(intIn,bForce);}function SetZero(intIn,bForce){return 0;}function GetMarkerElesForOverlay(objOverlay){if(!objOverlay)return null;var arrMkrEles=[];arrMkrEles=arrMkrEles.concat(GetMarkerEles(objOverlay));arrMkrEles=arrMkrEles.concat(GetClusterMarkerEles(objOverlay));return arrMkrEles;function GetMarkerEles(objOverlay){var arrMkrEles=[];if((objOverlay)&&(objOverlay.LoadedMarkers)){for(var iMkr=0;iMkr<objOverlay.LoadedMarkers.length;iMkr++){var objMkr=objOverlay.LoadedMarkers[iMkr];var objMkrEle=GetMultiMapMarkerDivFromProperietaryMarker(objMkr);if(objMkrEle){arrMkrEles.push(objMkrEle);}}}return arrMkrEles;}function GetClusterMarkerEles(objOverlay){var arrMkrEles=[];if((objOverlay.DeclutteringOptions)&&(objOverlay.DeclutteringOptions.marker)&&(objOverlay.DeclutteringOptions.marker.iconUrl)){var strIcon=objOverlay.DeclutteringOptions.marker.iconUrl;var strSelector=".dynMapContainer img[src='"+strIcon.replace("'","\\'")+"']";$(strSelector).each(function(i){var objImg=this;var objMkr=objImg.parentNode.parentNode;arrMkrEles.push(objMkr);});}return arrMkrEles;}function GetMultiMapMarkerDivFromProperietaryMarker(objMkr){var objMkrProp=objMkr.proprietary_marker;for(i in objMkrProp){if(objMkrProp.hasOwnProperty(i)){var objTemp=objMkrProp[i];if((objTemp)&&(objTemp.tagName)){if((String(objTemp.tagName).toLowerCase()==="div")&&(String(objTemp.className)==="MMMarker")){return objTemp;}}}}return null;}}}function AddMarkersToOverlay(objOverlay,arrProdKeys){var arrMkrData=[];for(var iIndex=0;iIndex<arrProdKeys.length;iIndex++){var intProdKey=arrProdKeys[iIndex];var objMkrExisting=GetMarkerFromOverlay(objOverlay,intProdKey);if(!objMkrExisting){var objDataEntry=ProductCache.GetMarkerInitData(intProdKey,objOverlay);if(objDataEntry){arrMkrData.push(objDataEntry);}}else{objMkrExisting.show();}}if(arrMkrData.length>0){objOverlay.addMarkers(arrMkrData);UpdateMarkerInfoBoxes();}function GetMarkerFromOverlay(objOverlay,intProdKey){for(var iMkr=0;iMkr<objOverlay.LoadedMarkers.length;iMkr++){var objMkr=objOverlay.LoadedMarkers[iMkr];var intMkrProdKey=objMkr.getAttribute("product").product_key;if(intMkrProdKey===intProdKey){return objMkr;}}return null;}}function GetItinProdKeys(){var arrOut=[];if(NewMind.env.excursion){for(var iIndex=0;iIndex<NewMind.env.excursion.length;iIndex++){var intProdKey=NewMind.env.excursion[iIndex].product_key;arrOut.push(intProdKey);}}return arrOut;}}})();
(function(){NewMind.registerNameSpace("NewMind.env.lang.dynamicmapping");NewMind.registerNameSpace("NewMind.mapping");NewMind.mapping.DEBUG=(function(){var objQuerystring=NewMind.ETWP.GetQuerystringData();var strDebugFlag=objQuerystring.get("MapDebug");if(strDebugFlag===null)return false;strDebugFlag=String(strDebugFlag).toLowerCase();return((strDebugFlag==="1")||(strDebugFlag==="true"));})();NewMind.mapping.DISABLE_STORE_POS_IN_HASH=true;NewMind.mapping.DISABLE_DATA_REQUESTS=true;NewMind.mapping.MapInit=new(function(){this.InitOnLoad=function(){window.toggleSearchResultsMap=function(strId){if(NewMind.env.install.mapping.configurations[strId].showlistmaplink!==true){$('body').toggleClass('mapShow');}NewMind.tourism.loadGenericSearchResultsMap(strId);};InitializeDynamicMappingControls();InitializeItineraryPanToLinks();DisplaySearchResultsMap();if((NewMind.tourism)&&(NewMind.tourism.updateMarkerInfoBoxes)){NewMind.tourism.updateMarkerInfoBoxes();}};this.InitDynamicMappingControls=function(){InitializeDynamicMappingControls();};function InitializeDynamicMappingControls(){if(window.mxn){if(NewMind.tourism&&NewMind.tourism.settings){NewMind.tourism.settings['mappingDefaultPolyOn']=false;}}$("dd.showResultsOnMap, div.showResultsOnMap").each(function(index){var objEle=$(this)[0];var strTagName=objEle.tagName;var strClass=objEle.className;var strTitle=objEle.title;var strInnerContent="<input type=\"checkbox\" name=\"autoshowmap\" id=\"showonmap_"+index+"\" value=\"-1\" class=\"checkbox\" />"+"<label for=\"showonmap_"+index+"\">"+strTitle+"</label>";strOut="<"+strTagName+" class=\""+strClass+"\">"+strInnerContent+"</"+strTagName+">";$(this).replaceWith(strOut);});$('input.checkbox[name=autoshowmap]').each(function(){if(window.location.search.indexOf('autoshowmap')>-1){this.checked=true;}});$('#SearchByMap').hide(0);}function InitializeItineraryPanToLinks(){$("div.ctl_ItineraryDetail td.item a.point").removeClass("hidden");}function DisplaySearchResultsMap(){var jqMapContainer=$('div.dynMapContainer');if(jqMapContainer.length>0){var strMapId=jqMapContainer[0].id;if(NewMind.env.install.mapping.configurations[strMapId].showfilters){var langSearchFilters=NewMind.ETWP.GetResource('NewMind.env.lang.resources.searchresults["dynamicmapping"]["searchfilters"]','SearchFilters');if(NewMind.env.install.mapping.configurations[strMapId].api==='google'){jqMapContainer.addClass('mapView').after('<div class="dynMapContainer mapView googleView"><div id="mapFilters" class="mapFilters"><h3>'+langSearchFilters+'</h3></div><div id="mapWidgetContainer" class="mapWidgetContainer"></div></div>');}else{jqMapContainer.addClass('mapView').html('<div id="mapFilters" class="mapFilters"><h3>'+langSearchFilters+'</h3></div><div id="mapWidgetContainer" class="mapWidgetContainer"></div>');}}if(NewMind.env.install.mapping.configurations[strMapId].showalways!==true||NewMind.env.install.mapping.configurations[strMapId].showlistmaplink===true){if(NewMind.env.install.mapping.configurations[strMapId].showmaplink===true&&NewMind.env.install.mapping.configurations[strMapId].showlistmaplink!==true){jqMapContainer.after('<a href="" id="mapShowHideLink">'+NewMind.ETWP.GetResource('NewMind.env.lang.resources.searchresults["dynamicmapping"]["showhidemaplink"]','Show / Hide Map')+'</a>');$('#mapShowHideLink').click(function(e){e.preventDefault();toggleSearchResultsMap(strMapId);});}}if(window.location.search.indexOf('autoshowmap')>-1||(NewMind.env.install.mapping.configurations[strMapId].showalways&&NewMind.env.install.mapping.configurations[strMapId].showlistmaplink!==true)){toggleSearchResultsMap(strMapId);var objMap=NewMind.mapping.getMap(strMapId);for(var intIndex=0;intIndex<arrSubscribers.length;intIndex++){var fncCallback=arrSubscribers[intIndex];try{fncCallback(objMap);}catch(e){}}}}var jqListMapContainer=$('div.listMapLinkContainer');if(jqListMapContainer.length>0&&jqMapContainer.length>0){var strMapId=jqMapContainer[0].id;if(NewMind.env.install.mapping.configurations[strMapId].showlistmaplink===true){$('div.dynMapContainer').hide();$('div#mapProductList').hide();var mapText=NewMind.ETWP.GetResource('NewMind.env.lang.resources.searchresults["dynamicmapping"]["showasmap"]','Show as Map');var listText=NewMind.ETWP.GetResource('NewMind.env.lang.resources.searchresults["dynamicmapping"]["showaslist"]','Show as List');var mapListHTML='<ul class="listMapLinks"><li class="showListLink showList"><a href="">'+listText+'</a></li><li class="showMapLink"><a href="">'+mapText+'</a></li></ul>';jqListMapContainer.html(mapListHTML);$('.showListLink').click(function(e){e.preventDefault();$('.showListLink').addClass('showList');$('.showMapLink').removeClass('showMap');$('body').removeClass('mapShow');$('div.dynMapContainer').hide();$('div#mapProductList').hide();$('div.ProductListMain').show();$('div.ctl_SearchRefineSummary').show();});$('.showMapLink').one('click',function(){toggleSearchResultsMap(strMapId);});$('.showMapLink').click(function(e){e.preventDefault();$('.showListLink').removeClass('showList');$('.showMapLink').addClass('showMap');$('body').addClass('mapShow');$('div.dynMapContainer').show();$('div#mapProductList').show();$('div.ProductListMain').hide();$('div.ctl_SearchRefineSummary').hide();});if(window.location.search.indexOf('autoshowmap')>-1){$('.showMapLink').trigger('click');}}}}var arrSubscribers=[];this.SubscribeToInitEvent=function(fncCallback){if(!fncCallback)return;arrSubscribers[arrSubscribers.length]=fncCallback;};this.UnsubscribeToInitEvent=function(fncCallback){if(!fncCallback)return;for(var intIndex=arrSubscribers.length-1;intIndex>=0;intIndex--)if(arrSubscribers[intIndex]===fncCallback)arrSubscribers.splice(intIndex,1);};});$(document).ready(NewMind.mapping.MapInit.InitOnLoad);})();
NewMind.registerNameSpace("NewMind.ETWP.PhotoSynths");NewMind.ETWP.PhotoSynths.RenderPhotoSynth=function(){var $this=$(this);if($this.length>0){var sSynthURL=$this[0].href;var objRegEx=new RegExp("cid\=[a-zA-Z0-9\-]+");objRegEx.ignoreCase=true;objRegEx.global=true;var objRegExMatch=""+objRegEx.exec(sSynthURL);var sSynthID="";if(objRegExMatch.length>0){sSynthID=String(objRegExMatch[0]).replace('cid=','');}if(sSynthID.length>0){var html='<div class="photosynthPlayer player-'+sSynthID+'"><span class="close"><a class="close" href="#" title="'+NewMind.ETWP.GetResource('NewMind.env.lang.resources.productdetail["photosynths"]["close"]','Close')+'"><img src="'+NewMind.ETWP.GetResource('NewMind.env.imgs.resources.productdetail["photosynths"]["close"]','/engine/shared_gfx/close-black.gif')+'" alt="'+NewMind.ETWP.GetResource('NewMind.env.lang.resources.productdetail["photosynths"]["close"]','Close')+'" /></a></span> <div class="player"><iframe src="'+sSynthURL+'" height="400" width="500"></iframe> </div></div>';$.blockUI({message:html,css:{width:'500px',backgroundColor:'#000',height:'425px',top:'30%',left:'30%'},baseZ:5000});$('div.blockOverlay').attr('title','Click to Close').click($.unblockUI);$('div.blockMsg div.player-'+sSynthID+' a.close').click($.unblockUI);}return false;}};
var gElem;function AttachLoadEvent(fnEvent){var fnPrevEvent=window.onload;if(typeof window.onload!='function' )window.onload=fnEvent;else window.onload=function(){if(fnPrevEvent)fnPrevEvent();fnEvent();}}function BookingUI_Get(asName){return document.getElementById(asName);}function BookingUI_Show(aObj,abShow){aObj.style.display=abShow?"block":"none";}function BookingUI_ShowN(asName,abShow){var obj=document.getElementById(asName);if(obj==null){}else BookingUI_Show(obj,abShow);}function BookingUI_VwStay(asName){if(asName!=null){gElem=BookingUI_Get(asName);var iStayNum=parseInt(asName.substring("StayCandidateItem".length,asName.length));var frm=BookingUI_Get("FrmUnitOptions");BookingUI_TeleBookPaintUI(frm,iStayNum,true);}else BookingUI_ShowN("pnTeleBook_PromptCall",false);BookingUI_Show(gElem,asName!=null);BookingUI_ShowN("StayCandidateList",asName==null);return false;}function BookingUI_UnitSelect(aRadioBtn){var iUnitKey=aRadioBtn.value;var iStart=aRadioBtn.name.indexOf("_")+1;var iEnd=aRadioBtn.name.indexOf("_",iStart);var iStayNum=parseInt(aRadioBtn.name.substring(iStart,iEnd));BookingUI_TeleBookPaintUI(aRadioBtn.form,iStayNum,true);}function BookingUI_TeleBookPaintUI(aForm,aiStayNum,abShowTeleBookMsg){var iThisReq,radioButtons,iThisElem,bTeleBook,btnBookOnline;bTeleBook=false;if(typeof(iTotalNonBookableUnits)!="undefined")for(iThisReq=1;iThisReq<=iTotalNonBookableUnits&&!bTeleBook;++iThisReq){radioButtons=aForm["unit_"+aiStayNum+"_"+iThisReq];if(typeof(radioButtons.length)=="undefined")bTeleBook=BookingUI_TeleBook(aiStayNum,radioButtons.value);else for(iThisElem=0;iThisElem<radioButtons.length;++iThisElem)if(radioButtons[iThisElem].checked&&BookingUI_TeleBook(aiStayNum,radioButtons[iThisElem].value)){bTeleBook=true;break;}}btnBookOnline=BookingUI_Get("bookstay_"+aiStayNum);if(btnBookOnline){BookingUI_Show(btnBookOnline,!bTeleBook);if(abShowTeleBookMsg)BookingUI_ShowN("pnTeleBook_PromptCall",bTeleBook);}}function BookingUI_TeleBook(aiStayNum,aiUnitKey){var iThisUnit;for(iThisUnit=0;iThisUnit<aryNonBookableUnits.length;iThisUnit+=2)if(aiStayNum==aryNonBookableUnits[iThisUnit]&&aiUnitKey==aryNonBookableUnits[iThisUnit+1])return true;return false;}function HideStayCandidates(iStayNum){if(iStayNum>1){for(iStay=1;iStay<=iStayNum;iStay++){stayCandidate=BookingUI_Get("StayCandidateItem"+iStay);BookingUI_Show(stayCandidate,false);}}return true;}function BookingUI_OnLoad(){var frm=BookingUI_Get("FrmUnitOptions");if(frm!=null){if(frm["_nStays"]){var iNumStays=parseInt(frm["_nStays"].value);var bTeleBookMsg=(iNumStays==1);for(iThisStay=0;iThisStay<iNumStays;++iThisStay){BookingUI_TeleBookPaintUI(frm,iThisStay+1,bTeleBookMsg);}}}}AddEventListener(window,'load',BookingUI_OnLoad);
NewMind.registerNameSpace("NewMind.ETWP.ProviderStats");$(document).ready(function(){$('.ProvClick').bind('click',function(e){var strChanId=null;var intProdKey=null;if(NewMind.Vars){strChanId=NewMind.Vars.Page.ChannelID;if(NewMind.Vars.Page.ProductKey){intProdKey=NewMind.Vars.Page.ProductKey;}}var strProvStatId=$(this).attr('name');NewMind.ETWP.ProviderStats.UpdateProviderStats(strProvStatId,strChanId,intProdKey);});$('.ProvClickCustom').bind('click',function(e){var arrData=$(this).attr('name').split("|");if(arrData.length!==3){return;}NewMind.ETWP.ProviderStats.UpdateProviderStats(arrData[0],arrData[1],arrData[2]);});});NewMind.ETWP.ProviderStats.UpdateProviderStats=function(strProvStatId,strChanId,intProdKey){if((!strProvStatId)||(!strChanId)||(!intProdKey)){return;}var strUrl='/engine/updateProviderStats.asp?channel_id='+strChanId+'&product_key='+intProdKey+'&provider_id='+strProvStatId;$.get(strUrl);};
(function(){NewMind.registerNameSpace('NewMind.ETWP');NewMind.ETWP.MediaSwitcher=function(){var msTimer;var msDuration;var pauseCycle=function(e){clearTimeout(msTimer);};var resumeCycle=function(e){if(isNaN(msDuration)){msTimer=setTimeout(cycleMedia,2500);}else{msTimer=setTimeout(cycleMedia,msDuration);}};var cycleMedia=function(e){clearTimeout(msTimer);var $uls=$("ul.galControls").filter(function(){return this.className.indexOf('slideShow')>0;});var bStartTimer=0;$uls.each(function(){if(isNaN(msDuration)){msDuration=this.className.slice(this.className.indexOf('slideShow')+9);if(isNaN(msDuration)||msDuration<1000){msDuration=2500;}}bStartTimer=1;var iNum=0;var $this=$(this);var $gcls=$this.find("li");var gclsLen=$gcls.length;var i=0;$gcls.each(function(index){var $this=$(this);if($this.hasClass('current')){iNum=index+1;if(iNum===gclsLen){iNum=0;}return false;}});$gcls.each(function(index){var $this=$(this);if(index===iNum){$this.addClass('current');}else{$this.removeClass('current');}});var $gis=$this.parents("div.ctl_Media").find("div");var j=0;$gis.each(function(){var $this=$(this);if($this.hasClass("galItem")){if(j===iNum){$this.removeClass("hide");}else{if(!$this.hasClass('hide')){$this.addClass("hide");}}j=j+1;}});});if(bStartTimer===1){msTimer=setTimeout(cycleMedia,msDuration);}};var switchMedia=function(e){var ev=e||window.event;if(ev.preventDefault){ev.preventDefault();}else{ev.returnValue=false;}var obj=GetEventSource($(this));var iNum=Number($(this).text());if(iNum===0){iNum=Number($(this).find('img').attr('alt'));}var $gcls=$(obj).parents("ul.galControls").find("li");var i=0;$gcls.each(function(){var $this=$(this);if(i+1===iNum){$this.addClass("current");}else{$this.removeClass('current');}i=i+1;});var $gis=$(obj).parents("div.ctl_Media").find("div");var j=1;$gis.each(function(){var $this=$(this);if($this.hasClass('galItem')){if(j===iNum){$this.removeClass('hide');}else{if(!$this.hasClass('hide')){$this.addClass('hide');}}j++;}});};var getNextImage=function(obj){var $container=$(obj).parents("div.ctl_Media");var imageData=NewMind.ETWP.ControlData[NewMind.ETWP.GetControlKey($container[0])];if(imageData!=undefined&&$container.find("div").length>=imageData.length){return;}var image=imageData["image"+$container.find("div").length];loadImage(image,$container);};var getImages=function(obj){var $container=$(obj).parents("div.ctl_Media");var imageData=NewMind.ETWP.ControlData[NewMind.ETWP.GetControlKey($container[0])];if(imageData!=undefined&&$container.find("div").length>=imageData.length){return true;}$.each(imageData,function(index,image){loadImage(image,$container);});};var loadImage=function(image,$container){if(image!==undefined){var newImage='<img src="'+image.file+'" alt="'+image.title+'" />';if(image.url.length>0){newImage='<a href="'+image.url+'">'+newImage+'</a>';}if(image.desc.length>0){newImage+='<div class="mediaNote"><h3>'+image.title+'</h3><p>'+image.desc+'</p></div>';}$container.append('<div class="galItem hide" style="background: url('+NewMind.ETWP.GetResource('NewMind.env.imgs.resources.media["loadinganimation"]','/engine/shared_gfx/ajax-loader-arrows-white.gif')+') no-repeat;">'+newImage+'</div>');}};var mediaSwitcherInit=function(){if(!document.getElementsByTagName){return;}var $arrLists=$("ul.galControls");$arrLists.each(function(){var $this=$(this);var $objEleMediaControl=$this.parents("div.ctl_Media");if($objEleMediaControl.hasClass("ScriptEnabled")){return true;}$objEleMediaControl.addClass("ScriptEnabled");var arrLinks=$this.find("a").click(switchMedia).mouseover(pauseCycle).mouseout(resumeCycle);if(arrLinks.length>1){$this.removeClass("hide");}getImages(this);var $arrImageConts=$objEleMediaControl.find("div");$arrImageConts.each(function(){var $this=$(this);if($this.hasClass("galItem")){$this.mouseover(pauseCycle).mouseout(resumeCycle);}});});resumeCycle();};return{init:function(){mediaSwitcherInit();}};}();$(function(){NewMind.ETWP.MediaSwitcher.init();});})();(function(){NewMind.registerNameSpace('NewMind.ETWP');NewMind.ETWP.YouTube=function(){var ajaxUpdate=function(e){var postbackURL=$(this).attr('href');var container=$(this).parents('div.ytPlaylistWrapper').find('div.ytVideo');var parentSysContainer=$(this).parents('div.sys_control');var iControlKey=NewMind.ETWP.GetControlKey(parentSysContainer);var URL=postbackURL+"&AsyncAction=YTVideoUpdate&PartialRenderType=html&PartialRenderControlList="+iControlKey;container.html('<img src="'+NewMind.ETWP.GetResource('NewMind.env.imgs.resources.media["youtube"]["loadinganimation"]','/engine/shared_gfx/ajaxload-black.gif')+'" alt="'+NewMind.ETWP.GetResource('NewMind.env.lang.resources.media["youtube"]["loading"]','loading')+'" />');$.get(URL,function(data){container.replaceWith($(data).find('div.ytVideo'));});e.preventDefault();};return{init:function(){$('ol.ytPlaylist li a').click(ajaxUpdate);}};}();$(function(){NewMind.ETWP.YouTube.init();});})();
NewMind.registerNameSpace("NewMind.ETWP.SiteSearch");NewMind.ETWP.SiteSearch=function(){return{DefaultText:function(){$('.ctl_SiteSearchForm .field input').focus(function(){var strDefaultText=$(this).attr('title');if(strDefaultText!==''){if($(this).val()===strDefaultText)$(this).val('').parent().removeClass('defaultText');}}).blur(function(){var strDefaultText=$(this).attr('title');if(strDefaultText!==''){if($(this).val()==='')$(this).val(strDefaultText).parent().addClass('defaultText');}}).blur();}};}();NewMind.dom.addEventListener(window,'load',NewMind.ETWP.SiteSearch.DefaultText);
NewMind.ETWP.Navigation=function(){return{InitialiseQuickFind:function(){var sels=document.getElementsByTagName('SELECT');if(sels!=null){for(var i=0;i<sels.length;i++){if(sels[i].className=='quickfindDrop'){NewMind.dom.addEventListener(sels[i],'change',NewMind.ETWP.Navigation.QuickFind_OnChange);}}}},QuickFind_OnChange:function(){var sel=GetEventSource(this);var elmForm=sel;do{elmForm=elmForm.parentNode;}while(elmForm.nodeName!='FORM'&&elmForm.nodeName!='BODY');if(elmForm.nodeName=='FORM'){elmForm.action=sel.value;elmForm.submit();}}};}();NewMind.dom.addEventListener(window,'load',NewMind.ETWP.Navigation.InitialiseQuickFind);
