d:\olympic holidays\dropbox\live/javascript/header.js

// Filename: /javascript/site.js
// Was: 220, now: 202, compression: 8%

var Site={degrade:Browser.Engine.trident&&(navigator.userAgent.toLowerCase().indexOf('msie 6')!=-1)&&(navigator.userAgent.toLowerCase().indexOf('msie 7')==-1)}
function AssertJSLoadedOk(){return true;}

// Filename: /javascript/shared/last_pages_visited.js
// Was: 4568, now: 2809, compression: 39%

var SKIP_LAST_PAGE_FEATURE=false;window.addEvent('domready',function(e){if($$('ul.pages_last_visited').length>0){if($('LastPagesVisited')){$('LastPagesVisited').setStyle("display","block");}
LastPagesVisited.Init();}});var LastPagesVisited={MAX_LAST_PAGES_VISITED:8,GetShortenedCookieUrl:function(){var theurl=location.pathname.indexOf("/q.")>-1?location.pathname.substring(location.pathname.indexOf("/q.")):location.pathname.replace(location.host,"").replace(location.protocol+"//","");if(theurl.indexOf("#")>-1)theurl=theurl.substring(0,theurl.indexOf("#"));return theurl;},Init:function(){if(window.location.href.contains("default.asp")){this.MAX_LAST_PAGES_VISITED=5;}
if(this.MyCookie.getLength){var removeAllButtonWrapper=$("ClearRecentlyVisited");if(removeAllButtonWrapper){removeAllButtonWrapper.show();removeAllButtonWrapper.getFirst().addEvent("click",function(event){event.stop();this.RemoveAll();}.bind(this));}
if(!SKIP_LAST_PAGE_FEATURE&&this.MyCookie.hasKey(this.GetShortenedCookieUrl())==false){var page_details={};page_details.querystring="";if(!location.search.match(/[^0-9A-Z&_]/ig)){var title=document.title;title=title.replace("Olympic Holidays - ","");title=title.replace("Olympic Holidays","");title=title.replace("Holidays to ","");title=title.indexOf("-")>-1?title.substring(0,title.indexOf("-")):title;title=title.length>50?title.substring(0,50):title;page_details.title=title;this.MyCookie.set(this.GetShortenedCookieUrl(),page_details);}}
var urls=this.MyCookie.getKeys();while(urls.length>this.MAX_LAST_PAGES_VISITED){this.MyCookie.erase(urls[0]);urls.erase(urls[0]);}
this.MyCookie.save();}
this.Render();},MyCookie:new Hash.Cookie('last_pages_visited',{autoSave:true,duration:365,path:'/'}),RemoveAll:function(){if(confirm("Are you sure you want to clear out this list?")){this.MyCookie.empty();this.MyCookie.save();var removeAllButtonWrapper=$("ClearRecentlyVisited");if(removeAllButtonWrapper){removeAllButtonWrapper.hide();}}
this.Render();},Render:function(){var lists=$$('ul.pages_last_visited');lists.each(function(ele){ele=$defined(ele)?ele:$('pages_last_visited');var pages=this.MyCookie;var urls=pages.getKeys();ele.getChildren().each(function(li){li.dispose();});if(urls.length==0){new Element("li",{html:"No recently visited pages"}).inject(ele,"top");}
else{while(urls.length>0){var url=urls.getLast();var props=pages.get(url);var plv_li=new Element('li');var plv_link=new Element('a',{'href':"http://www.olympicholidays.com"+url+(url.indexOf(props.querystring)==-1?escape(props.querystring):""),'title':'Return to one of your previously visited pages, '+props.title});plv_link.set("html",props.title.length>=25?props.title+"...":props.title);plv_li.adopt(plv_link);ele.adopt(plv_li);urls.erase(urls.getLast());}}},this);}};function AssertJSLoadedOk(){return true;}

// Filename: /javascript/mmscripts.js
// Was: 7775, now: 5621, compression: 28%

function MakePopUps(eles){eles.forEach(function(link){if(link.getAttribute('type')=='popup'){link.addEvent('click',function(){return popup(this.href)});link.title+=' (Popup)';}});}
window.addEvent('domready',function(){MakePopUps($(document.body).getElements('a'));});function slide(link,ele_id){if($(ele_id)){if(link){if(String(link.innerHTML).toLowerCase().indexOf('hide')>-1){sliders.get(ele_id).slideOut();link.innerHTML=link.innerHTML.replace('hide','show').replace('Hide','Show');}else{sliders.get(ele_id).slideIn();link.innerHTML=link.innerHTML.replace('show','hide').replace('Show','Hide');}}
else
{sliders.get(ele_id).slideIn();}}
return false;}
var sliders=new Hash();window.addEvent("domready",function(){$(document.documentElement).getElements('.slider').each(function(element){var elem=$(element.id).setStyle('display','block');var slider=new Fx.Slide(element.id,{mode:'vertical'}).slideOut();sliders.set(element.id,slider);});});function popup(url,name,options){name=name?name:"unknown";options=options?options:{};var width=options['width']?options['width']:1000;var height=options['height']?options['height']:500;newwindow=window.open(url,name,'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,width='+width+',height='+height);if(window.focus){newwindow.focus()}
return false;}
function selected_value(ele)
{return ele.options[ele.selectedIndex].value;}
function isVoid(p_strVal){return(typeof(p_strVal)=='undefined'||p_strVal==null||p_strVal==""||String(p_strVal)==""||String(p_strVal)=="undefined"||String(p_strVal)=="null");}
function check_for_debug_info(frm)
{if(location.search.length==0||location.search.indexOf("debug=")==-1)
{return;}
frm=frm||(document.forms.length>0?document.forms[0]:null);if(frm)
{if(frm.debug){frm.debug.value="true";}
eleArray=new Array();for(var i=0;i<frm.elements.length;i++)
{var ele=frm.elements[i];eleArray.push(ele.name+": \t"+ele.value);}
alert("Debug information for form: "+frm.id+":\n\n"+eleArray.join("\n\t"));}}
function addReferrerTag(ref_value,ref_tag)
{if(!document.getElementsByTagName)
{return;}
ref_tag=ref_tag?ref_tag:"ref";links=document.getElementsByTagName("a");var link_total=links.length;for(var i=0;i<link_total;i++)
{var link=links[i];if(link.href.indexOf(ref_tag+"=")==-1&&link.href.indexOf("javascript")==-1&&link.href.indexOf("#")<1)
{if(link.href.indexOf("?")>-1)
{link.href+="&"+ref_tag+"="+ref_value;}
else
{link.href+="?"+ref_tag+"="+ref_value;}}}}
function setCookie(name,value,expires,path,domain){var thisCookie=new String(escape(name)+'='+escape(value)),days=new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'),months=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');if(expires){expires=new Date(expires);thisCookie+=';EXPIRES='+
days[expires.getUTCDay()]+', '+
(expires.getUTCDate()<10?'0':'')+expires.getUTCDate()+'-'+
months[expires.getUTCMonth()]+'-'+
String(expires.getUTCFullYear()).substring(1)+' '+
(expires.getUTCHours()<10?'0':'')+expires.getUTCHours()+':'+
(expires.getUTCMinutes()<10?'0':'')+expires.getUTCMinutes()+':'+
(expires.getUTCSeconds()<10?'0':'')+expires.getUTCSeconds()+' GMT';}
if(path){thisCookie+=';PATH='+path;}
if(domain){thisCookie+=';DOMAIN='+domain;}
document.cookie=thisCookie;}
function getCookie(name){var c=new String(document.cookie).split(/; /),p;for(var i=0;i<c.length;i++){p=c[i].split('=');if(p[0]==escape(name))return unescape(String(p[1]).replace(/\+/g,' '));}
return'';}
function deleteCookie(name,path,domain){if(getCookie(name)){document.cookie=name+"="+
((path)?"; path="+path:"")+
((domain)?"; domain="+domain:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT";}}
function MM_preloadImages(){var d=document;if(d.images){if(!d.MM_p)d.MM_p=new Array();var i,j=d.MM_p.length,a=MM_preloadImages.arguments;for(i=0;i<a.length;i++)
if(a[i].indexOf("#")!=0){d.MM_p[j]=new Image;d.MM_p[j++].src=a[i];}}}
function MM_swapImgRestore(){var i,x,a=document.MM_sr;for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)x.src=x.oSrc;}
function MM_findObj(n,d){var p,i,x;if(!d)d=document;if((p=n.indexOf("?"))>0&&parent.frames.length){d=parent.frames[n.substring(p+1)].document;n=n.substring(0,p);}
if(!(x=d[n])&&d.all)x=d.all[n];for(i=0;!x&&i<d.forms.length;i++)x=d.forms[i][n];for(i=0;!x&&d.layers&&i<d.layers.length;i++)x=MM_findObj(n,d.layers[i].document);if(!x&&d.getElementById)x=d.getElementById(n);return x;}
function MM_swapImage(){var i,j=0,x,a=MM_swapImage.arguments;document.MM_sr=new Array;for(i=0;i<(a.length-2);i+=3)
if((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x;if(!x.oSrc)x.oSrc=x.src;x.src=a[i+2];}}
function MM_reloadPage(init){if(init==true)with(navigator){if((appName=="Netscape")&&(parseInt(appVersion)==4)){document.MM_pgW=innerWidth;document.MM_pgH=innerHeight;onresize=MM_reloadPage;}}
else if(innerWidth!=document.MM_pgW||innerHeight!=document.MM_pgH)location.reload();}
MM_reloadPage(true);function MM_showHideLayers(){var i,p,v,obj,args=MM_showHideLayers.arguments;for(i=0;i<(args.length-2);i+=3)if((obj=MM_findObj(args[i]))!=null){v=args[i+2];if(obj.style){obj=obj.style;v=(v=='show')?'visible':(v=='hide')?'hidden':v;}
obj.visibility=v;}}
function display(spanblock,condition,thisvalue){if(condition==""||condition=="&nbsp;"||condition==thisvalue)
{MM_findObj(spanblock).className="hidden"}}
function printformaton(){document.body.className="brandPRINT";}
function printformatoff(){document.body.className="";}
function setStyle(obj,style,value){if(typeof obj=="string"){obj=MM_findObj(obj);}
if(obj!=null){obj.style[style]=value;}}
function updateheader(){}
function AssertJSLoadedOk(){return true;}

// Filename: /dynamicbrochure/brochure.js
// Was: 7816, now: 5472, compression: 30%

function GetBrochureBaseUrl(){var base_url="";if(location.host!="olympic.offroadcode.com"&&location.host!="localhost")
{base_url="http://www.olympicholidays.com";}
return base_url;}
function AddToBrochure(url){window.open(GetBrochureBaseUrl()+"/dynamicbrochure/brochure.asp?"+url,"dynamicbrochure","width=700,height=450,scrollbars=yes").focus();}
function DeleteChecked(){if(confirm("Are you sure you want to delete all the selected pages?")){var hotel=null;var whichHotels=[];if(document.brochure.hotels&&document.brochure.hotels.length){for(var i=0;i<document.brochure.hotels.length;i++)
{hotel=document.brochure.hotels[i];if(hotel&&hotel.checked){whichHotels.push(hotel.value);}}}else{if(document.brochure.hotels.checked){whichHotels.push(document.brochure.hotels.value);}}
document.update.action.value="delete";document.update.id.value=whichHotels.join(",");document.update.submit();}}
function BuildAndSendBrochure(){if(CheckForEmail()){var shortlist=new ShortList();var url='action=addhotels';url+='&ids='+shortlist.Serialize();url+="&firstname="+$("firstname").getValue();url+="&surname="+$("surname").getValue();url+="&email="+$("email").getValue()+";"+$("additional_emails").getValue();AddToBrochure(url);}
return false;}
function SendBrochure(){}
function ViewBrochure()
{window.open(GetBrochureBaseUrl()+"/dynamicbrochure/brochure.asp","dynamicbrochure","width=700,height=450,scrollbars=yes").focus();}
function AddRegionToBrochure(url){window.open(GetBrochureBaseUrl()+"/dynamicbrochure/loading.asp?"+url,"dynamicbrochure","width=700,height=450,scrollbars=yes").focus();}
function CheckForEmail(){var shortlist=new ShortList();var errors=[];var fields_to_highlight=[];var emailsValid=true;var email=$("email")
if(email&&(email.value.search(/@/)==-1||email.value.length<5))
{errors.push("Please enter an email address.");fields_to_highlight.push(email);}
var firstname=$("firstname");if(firstname&&firstname.value.length==0)
{errors.push("Please enter your first name.");fields_to_highlight.push(firstname);}
var reply_to=$("additional_emails");if(reply_to&&(reply_to.value.search(/@/)==-1||reply_to.value.length<5))
{errors.push("Please enter the email address of who you would like to send the shortlist to.");fields_to_highlight.push(reply_to);}
if($('ids')){if(shortlist.Count()==0){errors.push("You do not have any hotels in your shortlist.");$("ids").value="";}else{$("ids").value=shortlist.Serialize();}}
if(errors.length>0){emailsValid=false;fields_to_highlight.each(function(field){field.setStyle("border","2px solid #FF0000");});alert(errors.join("\n"));}
return emailsValid;}
function PopPage(pageToPop,keepWindowOpenOnCompletion){keepWindowOpenOnCompletion=keepWindowOpenOnCompletion&&keepWindowOpenOnCompletion==true?true:false;if(pageToPop&&pageToPop!=null&&String(pageToPop)!="undefinded"&&String(pageToPop).length>0)
{if(window.opener&&!window.opener.closed)
{window.opener.location.href=pageToPop;window.opener.focus();}
else
{newWin=window.open('about:blank','parentwin','');newWin.location.href=pageToPop;newWin.focus();}
if(!keepWindowOpenOnCompletion)
{this.close();}}
else
{window.status="No url passed to popup function";}}
function UpdateTotals(whichHotel){var total=0;if(document.brochure.hotels&&document.brochure.hotels.length){for(i=0;i<document.brochure.hotels.length;i++){if(document.brochure.hotels[i].checked){total+=hotelFileSize;}}}else{if(document.brochure.hotels&&document.brochure.hotels.checked){if(document.brochure.hotels.checked){total+=hotelFileSize;}}}
if(document.brochure.regionFileSize){total+=parseInt(document.brochure.regionFileSize.value);}
if(document.brochure.resortFileSize){total+=parseInt(document.brochure.resortFileSize.value);}
if(document.brochure.includeTACInfo&&document.brochure.includeTACInfo.checked){total+=TACFileSize;}
if(document.brochure.includeFlightInfo&&document.brochure.includeFlightInfo.checked){total+=flightFileSize;}
var span=document.getElementById("totalFileSize");span.innerHTML=total+"kb";document.brochure.totalFileSize.value=total;document.update.action.value="check";document.update.id.value=whichHotel;document.update.submit();return false;}
function ChangeCheckBoxState(newState){var whichHotels="";if(document.brochure.hotels&&document.brochure.hotels.length){for(i=0;i<document.brochure.hotels.length;i++){if(document.brochure.hotels[i].checked!=newState){whichHotels+=i+",";document.brochure.hotels[i].checked=newState;}}}else{if(document.brochure.hotels&&document.brochure.hotels.checked!=newState){document.brochure.hotels.checked=newState;whichHotels+="0,";}}
if(document.brochure.includeTACInfo&&document.brochure.includeTACInfo.checked!=newState){document.brochure.includeTACInfo.checked=newState;whichHotels+="TACinfo,";}
if(document.brochure.includeFlightInfo&&document.brochure.includeFlightInfo.checked!=newState){document.brochure.includeFlightInfo.checked=newState;whichHotels+="flightinfo,";}
return UpdateTotals(whichHotels);}
function CheckForm()
{var errors="";var PageFound=false;if(document.brochure.hotels&&document.brochure.hotels.length)
{for(i=0;i<document.brochure.hotels.length;i++)
{if(document.brochure.hotels[i].checked)
{PageFound=true;break;}}}
else
{if(document.brochure.hotels&&document.brochure.hotels.checked)
{PageFound=true;}}
if(!PageFound)
{errors+="\nYou have not selected any brochure pages, you can do this by clicking on the boxes in the Include In My Brochure column.";}
if(errors!="")
{alert(errors);return false;}
return true;}

// Filename: /javascript/shared/slideshow.js
// Was: 26471, now: 19192, compression: 27%

String.prototype.stripHTML=function(){var matchTag=/<(?:.|\s)*?>/g;return this.replace(matchTag,"");};var Slideshow=new Class({Implements:[Chain,Events,Options],options:{captions:false,center:true,classes:[],controller:false,delay:2000,duration:750,fast:false,height:false,href:'',hu:'',linked:false,loader:{'animate':['css/loader-#.png',12]},loop:true,match:/\?slide=(\d+)$/,overlap:true,paused:false,random:false,replace:[/(\.[^\.]+)$/,'t$1'],resize:'width',slide:0,thumbnails:false,transition:function(p){return-(Math.cos(Math.PI*p)-1)/2;},width:false},initialize:function(el,data,options){this.setOptions(options);this.slideshow=$(el);if(!this.slideshow)
return;this.slideshow.set('styles',{'display':'block','position':'relative','z-index':0});var match=window.location.href.match(this.options.match);this.counter=this.delay=this.transition=0;this.direction='left';this.paused=false;if(!this.options.overlap)
this.options.duration*=2;var anchor=this.slideshow.getElement('a')||new Element('a');if(!this.options.href)
this.options.href=anchor.get('href')||'';if(this.options.hu.length&&!this.options.hu.test(/\/$/))
this.options.hu+='/';var keys=['slideshow','first','prev','play','pause','next','last','images','captions','controller','thumbnails','hidden','visible','inactive','active','loader'];var values=keys.map(function(key,i){return this.options.classes[i]||key;},this);this.classes=values.associate(keys);this.classes.get=function(){var str='.'+this.slideshow;for(var i=0,l=arguments.length;i<l;i++)
str+=('-'+this[arguments[i]]);return str;}.bind(this.classes);if(!data){this.options.hu='';data={};var thumbnails=this.slideshow.getElements(this.classes.get('thumbnails')+' img');this.slideshow.getElements(this.classes.get('images')+' img').each(function(img,i){var src=img.get('src');var caption=img.get('alt')||img.get('title')||'';var href=img.getParent().get('href')||'';var thumbnail=thumbnails[i].get('src')||'';data[src]={'caption':caption,'href':href,'thumbnail':thumbnail};});}
var loaded=this.load(data);if(!loaded)
return;this.slide=(this.options.match&&match)?match[1].toInt():((this.options.random&&this.data.images.length>1)?$random(0,this.data.images.length-1):this.options.slide);this.events=$H({'keydown':[],'keyup':[],'mousemove':[]});var keyup=function(e){switch(e.key){case'left':this.prev(e.shift);break;case'right':this.next(e.shift);break;case'p':this.pause();break;}}.bind(this);this.events.keyup.push(keyup);document.addEvent('keyup',keyup);var el=this.slideshow.getElement(this.classes.get('images'));var images=(el)?el.empty():new Element('div',{'class':this.classes.get('images').substr(1)}).inject(this.slideshow);var div=images.getSize();this.height=this.options.height||div.y;this.width=this.options.width||div.x;images.set({'styles':{'display':'block','height':this.height,'overflow':'hidden','position':'relative','width':this.width}});this.slideshow.store('images',images);this.a=this.image=this.slideshow.getElement('img')||new Element('img');this.a.set('styles',{'display':'none','position':'absolute','zIndex':1});this.b=this.a.clone();[this.a,this.b].each(function(img){anchor.clone().grab(img).inject(images);});if(this.options.captions)
this._captions();if(this.options.controller)
this._controller();if(this.options.loader)
this._loader();if(this.options.thumbnails)
this._thumbnails();this._preload();},go:function(n,direction){if((this.slide-1+this.data.images.length)%this.data.images.length==n||$time()<this.transition)
return;$clear(this.timer);this.delay=0;this.direction=(direction)?direction:((n<this.slide)?'right':'left');this.slide=n;if(this.preloader)
this.preloader=this.preloader.destroy();this._preload(this.options.fast||this.paused);},first:function(){this.prev(true);},prev:function(first){var n=0;if(!first){if(this.options.random){if(this.showed.i<2)
return;this.showed.i-=2;n=this.showed.array[this.showed.i];}
else
n=(this.slide-2+this.data.images.length)%this.data.images.length;}
this.go(n,'right');},pause:function(p){if($chk(p))
this.paused=(p)?false:true;if(this.paused){this.paused=false;this.delay=this.transition=0;this.timer=this._preload.delay(100,this);[this.a,this.b].each(function(img){['morph','tween'].each(function(p){if(this.retrieve(p))this.get(p).resume();},img);});if(this.options.controller)
this.slideshow.getElement('.'+this.classes.pause).removeClass(this.classes.play);}
else{this.paused=true;this.delay=Number.MAX_VALUE;this.transition=0;$clear(this.timer);[this.a,this.b].each(function(img){['morph','tween'].each(function(p){if(this.retrieve(p))this.get(p).pause();},img);});if(this.options.controller)
this.slideshow.getElement('.'+this.classes.pause).addClass(this.classes.play);}},next:function(last){var n=(last)?this.data.images.length-1:this.slide;this.go(n,'left');},last:function(){this.next(true);},load:function(data){this.firstrun=true;this.showed={'array':[],'i':0};if($type(data)=='array'){this.options.captions=false;data=new Array(data.length).associate(data.map(function(image,i){return image+'?'+i}));}
this.data={'images':[],'captions':[],'hrefs':[],'thumbnails':[]};var obj,caption,href,thumbnail;for(image in data){obj=data[image]||{};caption=(obj.caption)?obj.caption.trim():'';href=(obj.href)?obj.href.trim():((this.options.linked)?this.options.hu+image:this.options.href);thumbnail=(obj.thumbnail)?obj.thumbnail.trim():image.replace(this.options.replace[0],this.options.replace[1]);this.data.images.push(image);this.data.captions.push(caption);this.data.hrefs.push(href);this.data.thumbnails.push(thumbnail);}
if(this.options.thumbnails&&this.slideshow.retrieve('thumbnails'))
this._thumbnails();if(this.slideshow.retrieve('images')){[this.a,this.b].each(function(img){['morph','tween'].each(function(p){if(this.retrieve(p))this.get(p).cancel();},img);});this.slide=this.transition=0;this.go(0);}
return this.data.images.length;},destroy:function(p){this.events.each(function(array,e){array.each(function(fn){document.removeEvent(e,fn);});});this.pause(1);if(this.options.loader)
$clear(this.slideshow.retrieve('loader').retrieve('timer'));if(this.options.thumbnails)
$clear(this.slideshow.retrieve('thumbnails').retrieve('timer'));this.slideshow.uid=Native.UID++;if(p)
this.slideshow[p]();},_preload:function(fast){if(!this.preloader)
this.preloader=new Asset.image(this.options.hu+this.data.images[this.slide],{'onload':function(){this.store('loaded',true);}});if(this.preloader.retrieve('loaded')&&$time()>this.delay&&$time()>this.transition){if(this.stopped){if(this.options.captions)
this.slideshow.retrieve('captions').get('morph').cancel().start(this.classes.get('captions','hidden'));this.pause(1);if(this.end)
this.fireEvent('end');this.stopped=this.end=false;return;}
this.image=(this.counter%2)?this.b:this.a;this.image.set('styles',{'display':'block','height':'auto','visibility':'hidden','width':'auto','zIndex':this.counter});['src','height','width'].each(function(prop){this.image.set(prop,this.preloader.get(prop));},this);this._resize(this.image);this._center(this.image);var anchor=this.image.getParent();if(this.data.hrefs[this.slide]){anchor.set('href',this.data.hrefs[this.slide]);}else{anchor.erase('href');}
if(this.data.captions[this.slide]){anchor.erase('title');}
if(this.options.loader)
this.slideshow.retrieve('loader').fireEvent('hide');if(this.options.captions)
this.slideshow.retrieve('captions').fireEvent('update',fast);if(this.options.thumbnails)
this.slideshow.retrieve('thumbnails').fireEvent('update',fast);this._show(fast);this._loaded();}
else{if($time()>this.delay&&this.options.loader)
this.slideshow.retrieve('loader').fireEvent('show');this.timer=(this.paused&&this.preloader.retrieve('loaded'))?null:this._preload.delay(100,this,fast);}},_show:function(fast){if(!this.image.retrieve('morph')){var options=(this.options.overlap)?{'duration':this.options.duration,'link':'cancel'}:{'duration':this.options.duration/2,'link':'chain'};$$(this.a,this.b).set('morph',$merge(options,{'onStart':this._start.bind(this),'onComplete':this._complete.bind(this),'transition':this.options.transition}));}
var hidden=this.classes.get('images',((this.direction=='left')?'next':'prev'));var visible=this.classes.get('images','visible');var img=(this.counter%2)?this.a:this.b;if(fast){img.get('morph').cancel().set(hidden);this.image.get('morph').cancel().set(visible);}
else{if(this.options.overlap){img.get('morph').set(visible);this.image.get('morph').set(hidden).start(visible);}
else{var fn=function(hidden,visible){this.image.get('morph').set(hidden).start(visible);}.pass([hidden,visible],this);hidden=this.classes.get('images',((this.direction=='left')?'prev':'next'));img.get('morph').set(visible).start(hidden).chain(fn);}}},_loaded:function(){this.counter++;this.delay=(this.paused)?Number.MAX_VALUE:$time()+this.options.duration+this.options.delay;this.direction='left';this.transition=(this.paused||this.options.fast)?0:$time()+this.options.duration;if(this.slide+1==this.data.images.length&&!this.options.loop&&!this.options.random)
this.stopped=this.end=true;if(this.options.random){this.showed.i++;if(this.showed.i>=this.showed.array.length){var n=this.slide;if(this.showed.array.getLast()!=n)this.showed.array.push(n);while(this.slide==n)
this.slide=$random(0,this.data.images.length-1);}
else
this.slide=this.showed.array[this.showed.i];}
else
this.slide=(this.slide+1)%this.data.images.length;if(this.preloader)
this.preloader=this.preloader.destroy();this._preload();},_center:function(img){if(this.options.center){var size=img.getSize();img.set('styles',{'left':(size.x-this.width)/-2,'top':(size.y-this.height)/-2});}},_resize:function(img){if(this.options.resize){var h=this.preloader.get('height'),w=this.preloader.get('width');var dh=this.height/h,dw=this.width/w,d;if(this.options.resize=='length')
d=(dh>dw)?dw:dh;else
d=(dh>dw)?dh:dw;img.set('styles',{height:Math.ceil(h*d),width:Math.ceil(w*d)});}},_start:function(){this.fireEvent('start');},_complete:function(){if(this.firstrun&&this.options.paused){this.firstrun=false;this.pause(1);}
this.fireEvent('complete');},_captions:function(){if(this.options.captions===true)
this.options.captions={};var el=this.slideshow.getElement(this.classes.get('captions'));var captions=(el)?el.empty():new Element('div',{'class':this.classes.get('captions').substr(1)}).inject(this.slideshow);captions.set({'events':{'update':function(fast){var captions=this.slideshow.retrieve('captions');var empty=(this.data.captions[this.slide]==='');if(fast){var p=(empty)?'hidden':'visible';captions.set('html',this.data.captions[this.slide]).get('morph').cancel().set(this.classes.get('captions',p));}
else{var fn=(empty)?$empty:function(n){var caption_html=this.data.captions[n];var href=this.data.hrefs[n];if(href){caption_html='<a href="'+href+'">'+caption_html+'</a>';}
this.slideshow.retrieve('captions').set('html',caption_html).morph(this.classes.get('captions','visible'))}.pass(this.slide,this);captions.get('morph').cancel().start(this.classes.get('captions','hidden')).chain(fn);}}.bind(this)},'morph':$merge(this.options.captions,{'link':'chain'})});this.slideshow.store('captions',captions);},_controller:function(){if(this.options.controller===true)
this.options.controller={};var el=this.slideshow.getElement(this.classes.get('controller'));var controller=(el)?el.empty():new Element('div',{'class':this.classes.get('controller').substr(1)}).inject(this.slideshow);var ul=new Element('ul').inject(controller);$H({'first':'Shift + Leftwards Arrow','prev':'Leftwards Arrow','pause':'P','next':'Rightwards Arrow','last':'Shift + Rightwards Arrow'}).each(function(accesskey,action){var li=new Element('li',{'class':(action=='pause'&&this.options.paused)?this.classes.play+' '+this.classes[action]:this.classes[action]}).inject(ul);var a=this.slideshow.retrieve(action,new Element('a',{'title':((action=='pause')?this.classes.play.capitalize()+' / ':'')+this.classes[action].capitalize()+' ['+accesskey+']'}).inject(li));a.set('events',{'click':function(action){this[action]();}.pass(action,this),'mouseenter':function(active){this.addClass(active);}.pass(this.classes.active,a),'mouseleave':function(active){this.removeClass(active);}.pass(this.classes.active,a)});},this);controller.set({'events':{'hide':function(hidden){if(!this.retrieve('hidden'))
this.store('hidden',true).morph(hidden);}.pass(this.classes.get('controller','hidden'),controller),'show':function(visible){if(this.retrieve('hidden'))
this.store('hidden',false).morph(visible);}.pass(this.classes.get('controller','visible'),controller)},'morph':$merge(this.options.controller,{'link':'cancel'})}).store('hidden',false);var keydown=function(e){if(['left','right','p'].contains(e.key)){var controller=this.slideshow.retrieve('controller');if(controller.retrieve('hidden'))
controller.get('morph').set(this.classes.get('controller','visible'));switch(e.key){case'left':this.slideshow.retrieve((e.shift)?'first':'prev').fireEvent('mouseenter');break;case'right':this.slideshow.retrieve((e.shift)?'last':'next').fireEvent('mouseenter');break;default:this.slideshow.retrieve('pause').fireEvent('mouseenter');break;}}}.bind(this);this.events.keydown.push(keydown);var keyup=function(e){if(['left','right','p'].contains(e.key)){var controller=this.slideshow.retrieve('controller');if(controller.retrieve('hidden'))
controller.store('hidden',false).fireEvent('hide');switch(e.key){case'left':this.slideshow.retrieve((e.shift)?'first':'prev').fireEvent('mouseleave');break;case'right':this.slideshow.retrieve((e.shift)?'last':'next').fireEvent('mouseleave');break;default:this.slideshow.retrieve('pause').fireEvent('mouseleave');break;}}}.bind(this);this.events.keyup.push(keyup);var mousemove=function(e){var images=this.slideshow.retrieve('images').getCoordinates();if(e.page.x>images.left&&e.page.x<images.right&&e.page.y>images.top&&e.page.y<images.bottom)
this.slideshow.retrieve('controller').fireEvent('show');else
this.slideshow.retrieve('controller').fireEvent('hide');}.bind(this);this.events.mousemove.push(mousemove);document.addEvents({'keydown':keydown,'keyup':keyup,'mousemove':mousemove});this.slideshow.retrieve('controller',controller).fireEvent('hide');},_loader:function(){if(this.options.loader===true)
this.options.loader={};var loader=new Element('div',{'class':this.classes.get('loader').substr(1),'morph':$merge(this.options.loader,{'link':'cancel'})}).store('hidden',false).store('i',1).inject(this.slideshow.retrieve('images'));if(this.options.loader.animate){for(var i=0;i<this.options.loader.animate[1];i++)
img=new Asset.image(this.options.loader.animate[0].replace(/#/,i));if(Browser.Engine.trident4&&this.options.loader.animate[0].contains('png'))
loader.setStyle('backgroundImage','none');}
loader.set('events',{'animate':function(){var loader=this.slideshow.retrieve('loader');var i=(loader.retrieve('i').toInt()+1)%this.options.loader.animate[1];loader.store('i',i);var img=this.options.loader.animate[0].replace(/#/,i);if(Browser.Engine.trident4&&this.options.loader.animate[0].contains('png'))
loader.style.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src="'+img+'", sizingMethod="scale")';else
loader.setStyle('backgroundImage','url('+img+')');}.bind(this),'hide':function(){var loader=this.slideshow.retrieve('loader');if(!loader.retrieve('hidden')){loader.store('hidden',true).morph(this.classes.get('loader','hidden'));if(this.options.loader.animate)
$clear(loader.retrieve('timer'));}}.bind(this),'show':function(){var loader=this.slideshow.retrieve('loader');if(loader.retrieve('hidden')){loader.store('hidden',false).morph(this.classes.get('loader','visible'));if(this.options.loader.animate)
loader.store('timer',function(){this.fireEvent('animate');}.periodical(50,loader));}}.bind(this)});this.slideshow.retrieve('loader',loader).fireEvent('hide');},_thumbnails:function(){if(this.options.thumbnails===true)
this.options.thumbnails={};var el=this.slideshow.getElement(this.classes.get('thumbnails'));var thumbnails=(el)?el.empty():new Element('div',{'class':this.classes.get('thumbnails').substr(1)}).inject(this.slideshow);thumbnails.setStyle('overflow','hidden');var ul=new Element('ul',{'tween':{'link':'cancel'}}).inject(thumbnails);this.data.thumbnails.each(function(thumbnail,i){var li=new Element('li').inject(ul);var a=new Element('a',{'events':{'click':function(i){this.go(i);return false;}.pass(i,this),'loaded':function(){this.data.thumbnails.pop();if(!this.data.thumbnails.length){var div=thumbnails.getCoordinates();var props=thumbnails.retrieve('props');var limit=0,pos=props[1],size=props[2];thumbnails.getElements('li').each(function(li){var li=li.getCoordinates();if(li[pos]>limit)limit=li[pos];},this);thumbnails.store('limit',div[size]+div[props[0]]-limit);}}.bind(this)},'href':this.options.hu+this.data.images[i],'morph':$merge(this.options.thumbnails,{'link':'cancel'}),'title':this.data.captions[i]}).inject(li);var img=new Asset.image(this.options.hu+thumbnail,{'onload':function(){this.fireEvent('loaded');}.bind(a)}).inject(a);},this);thumbnails.set('events',{'scroll':function(n,fast){var div=this.getCoordinates();var ul=this.getElement('ul').getPosition();var props=this.retrieve('props');var axis=props[3],delta,pos=props[0],size=props[2],value;var tween=this.getElement('ul').get('tween',{'property':pos});if($chk(n)){var li=this.getElements('li')[n].getCoordinates();delta=div[pos]+(div[size]/2)-(li[size]/2)-li[pos]
value=(ul[axis]-div[pos]+delta).limit(this.retrieve('limit'),0);if(fast)
tween.set(value);else
tween.start(value);}
else{var area=div[props[2]]/3,page=this.retrieve('page'),velocity=-0.2;if(page[axis]<(div[pos]+area))
delta=(page[axis]-div[pos]-area)*velocity;else if(page[axis]>(div[pos]+div[size]-area))
delta=(page[axis]-div[pos]-div[size]+area)*velocity;if(delta){value=(ul[axis]-div[pos]+delta).limit(this.retrieve('limit'),0);tween.set(value);}}}.bind(thumbnails),'update':function(fast){var thumbnails=this.slideshow.retrieve('thumbnails');thumbnails.getElements('a').each(function(a,i){if(i==this.slide){if(!a.retrieve('active',false)){a.store('active',true);var active=this.classes.get('thumbnails','active');if(fast)a.get('morph').set(active);else a.morph(active);}}
else{if(a.retrieve('active',true)){a.store('active',false);var inactive=this.classes.get('thumbnails','inactive');if(fast)a.get('morph').set(inactive);else a.morph(inactive);}}},this);if(!thumbnails.retrieve('mouseover'))
thumbnails.fireEvent('scroll',[this.slide,fast]);}.bind(this)})
var div=thumbnails.getCoordinates();thumbnails.store('props',(div.height>div.width)?['top','bottom','height','y']:['left','right','width','x']);var mousemove=function(e){var div=this.getCoordinates();if(e.page.x>div.left&&e.page.x<div.right&&e.page.y>div.top&&e.page.y<div.bottom){this.store('page',e.page);if(!this.retrieve('mouseover')){this.store('mouseover',true);this.store('timer',function(){this.fireEvent('scroll');}.periodical(50,this));}}
else{if(this.retrieve('mouseover')){this.store('mouseover',false);$clear(this.retrieve('timer'));}}}.bind(thumbnails);this.events.mousemove.push(mousemove);document.addEvent('mousemove',mousemove);this.slideshow.store('thumbnails',thumbnails);}});function AssertJSLoadedOk(){return true;}

// Filename: /javascript/google_search_code.js
// Was: 1212, now: 840, compression: 31%

window.addEvent("domready",function(e){var DEFAULT_SEARCH_TEXT="Keyword/Resort/Hotel Name or Code";var search_box=$("google_query");var cookie_key="last_google_search";if(search_box){if(search_box.value==""){var cookie_value=Cookie.get(cookie_key);if(cookie_value){search_box.value=cookie_value;}
else{search_box.value=DEFAULT_SEARCH_TEXT;}}
search_box.addEvent("focus",function(){if(search_box.value==DEFAULT_SEARCH_TEXT){search_box.value="";}});search_box.addEvent("blur",function(){if(search_box.value==""){search_box.value=DEFAULT_SEARCH_TEXT;}});var search_form=$("globalSearch")||$("google_search_form");if(search_form){search_form.addEvent("submit",function(){if(search_box.value==DEFAULT_SEARCH_TEXT){search_box.value="";}
else{Cookie.set(cookie_key,search_box.value,{duration:7});}});}}});function AssertJSLoadedOk(){return true;}

// Filename: /javascript/header.js
// Was: 0, now: 0, compression: NaN%

