/* http://www.cvtravel.co.uk/ProfileUIResources/JS/kuoni.style.filter.js */
Valtech.Namespace.create("Kuoni.Style.Filtering");Kuoni.Style.Filtering=(function(){var cont="#search-result",filterSelector=".filter",sliderSelector=".slider",item="li",container="ul",itemSelector="li.result";var $cont,$filters,$items,tries,mapData;var debug=true;function log(){if(window.console&&window.console.log&&debug){window.console.log("[Kuoni.Style.Filtering] "+Array.prototype.join.call(arguments,""));}}var init=function(divId,paramItem,paramContainer){if(divId==undefined){$cont=$(cont);}else{$cont=$(divId);}if(paramItem!=undefined){item=paramItem;}if(paramContainer!=undefined){container=paramContainer;}itemSelector=item+".result";filters.tozero();results.tozero();filters.init();results.init();filters.remember();filters.count();};var filters={templates:{dualslider_label:'<span class="min"></span>&nbsp;-&nbsp;<span class="max"></span>',singleslider_label:'<span class="max"></span>',counter_label:'<span class="count"></span>'},tozero:function(){while(filters.hash.data.length>0){filters.hash.data.pop();}while(filters.masters.data.length>0){filters.masters.data.pop();}},init:function(){$filters=$(filterSelector,$cont);var sliders=$(sliderSelector,$filters);$.each(sliders,function(i,val){var $slider=$(val);var opts=$slider.metadata();var $el=$(this);var filter=$el.metadata().name;if(filter==""){return;}var dep=opts.dependency||false;if(opts.range&&opts.range==true){var units=(opts.unit&&true)?opts.unit:"";$slider.parent().prev("label").append(filters.templates.dualslider_label+" "+units).find(".min").text(opts.min).end().find(".max").text(opts.max);if($.cookie(opts.name)){opts.values=[parseInt($.cookie(opts.name).substring(0,$.cookie(opts.name).indexOf("|"))),parseInt($.cookie(opts.name).substring($.cookie(opts.name).indexOf("|")+1))];}else{opts.values=[opts.min,opts.max];}opts.change=function(e,ui){var min=ui.values[0];var max=ui.values[1];if(min==$el.metadata().min&&max==$el.metadata().max){min=max="off";}filters.hash.update(filter,{min:min,max:max});results.filter();$.cookie($el.metadata().name,ui.values[0]+"|"+ui.values[1]);filters.count();};opts.slide=function(e,ui){var min=ui.values[0];var max=ui.values[1];$el.parent().prev("label").find(".min").text(min).end().find(".max").text(max);};filters.hash.add(opts.name,{min:"off",max:"off"},false,dep);}else{$slider.parent().prev("label").append(filters.templates.singleslider_label).find(".max").text(opts.max);opts.value=opts.max;opts.change=function(e,ui){var max=ui.value==$el.metadata().max?"off":ui.value;filters.hash.update(filter,{min:0,max:max});results.filter();};opts.slide=function(e,ui){$el.parent().prev("label").find(".max").text(ui.value);};filters.hash.add($slider.metadata().name,{},false,dep);}$slider.slider(opts);});$.each($("input, select",$filters),function(i,input){var el=$(input);var name=el.metadata().name;if($.cookie(name)){for(j=0;j<input.length;j++){if(input[j].value==$.cookie(name)){input[j].selected=true;}else{input[j].selected=false;}}}});$("select",$filters).change(function(){var el=$(this);if(el.metadata().name=="sort_by"){results.sort(this.value);$.cookie(el.metadata().name,this.value);}else{if(el.metadata().master=="true"){filters.masters.update(el.metadata().name,el.val());results.filter();$.cookie(el.metadata().name,this.value);}else{filters.hash.update(el.metadata().name,el.val());results.filter();$.cookie(el.metadata().name,this.value);}}filters.count();});$("input[type=checkbox]").click(function(){var el=$(this);var name=el.metadata().name;var option=el.metadata().value||false;filters.hash.update(name,el.attr("checked"),option);results.filter();filters.count();$.cookie(el.metadata().name+option,el.attr("checked"));});$.each($("input, select",$filters),function(i,input){var el=$(input);var name=el.metadata().name;if(name=="sort_by"){return;}if(el.metadata().master=="true"){filters.masters.data.push({name:name,value:el.val()});}else{var value=el.attr("type")=="checkbox"?el.attr("checked"):el.val();var option=el.metadata().value||false;var dep=el.metadata().dependency||false;filters.hash.add(name,value,option,dep);var cbClass=el[0].className.split("'");el.parent().append(filters.templates.counter_label);}});filters.masters.updateSlaves();},remember:function(){$filters=$(filterSelector,$cont);var sliders=$(sliderSelector,$filters);$.each(sliders,function(i,val){var $slider=$(val);var opts=$slider.metadata();var $el=$(this);var filter=$el.metadata().name;var dep=opts.dependency||false;if($.cookie(opts.name)){var min=parseInt($.cookie(opts.name).substring(0,$.cookie(opts.name).indexOf("|")));var max=parseInt($.cookie(opts.name).substring($.cookie(opts.name).indexOf("|")+1));$el.parent().prev("label").find(".min").text(min).end().find(".max").text(max);if(min==$el.metadata().min&&max==$el.metadata().max){min=max="off";}filters.hash.update(filter,{min:min,max:max});results.filter();}});$.each($("input, select",$filters),function(i,input){var el=$(input);var name=el.metadata().name;if($.cookie(name)){var value=$.cookie(name);if(name=="sort_by"){results.sort($.cookie("sort_by"));}else{filters.hash.update(name,value);results.filter();}}});$.each($("input[type=checkbox]",$filters),function(i,input){var el=$(input);var name=el.metadata().name+el.metadata().value;if($.cookie(name)){if($.cookie(name)=="true"){el.attr("checked",true);var elClass=el[0].className.split("'");filters.hash.update(elClass[1],true,elClass[3]);}else{el.attr("checked",false);}}});},count:function(){var checkBox=$("input[type=checkbox]",$filters);$.each(checkBox,function(i,val){var el=$(val);var cbClass=el[0].className.split("'");filters.hash.update(cbClass[1],true,cbClass[3]);results.filter();count=0;for(i=0;i<results.data.length;i++){if(results.data[i].show==true){count=count+1;}}if(count==0){el.attr("disabled",true);el.parent().find(".count").text(" (-)");}else{el.attr("disabled",false);el.parent().find(".count").text(" ("+count+")");}filters.hash.update(cbClass[1],el.attr("checked"),cbClass[3]);results.filter();});},masters:{data:[],update:function(name,val){$.each(filters.masters.data,function(i,mas){filters.masters.data[i].value=val;});filters.masters.updateSlaves();},updateSlaves:function(){$.each(filters.hash.data,function(i,fil){if(!fil.dependency){return;}$.each(filters.masters.data,function(j,mas){if(fil.dependency==mas.name){var name=fil.template.replace(/_REPLACE_/,mas.value);fil.name=name;}});});}},hash:{data:[],update:function(filter,val,opt){opt=opt||false;$.each(filters.hash.data,function(i,d){if(d.name==filter||d.template==filter){if(opt&&d.option!=opt){return;}filters.hash.data[i].value=val;}});},add:function(filter,val,opt,dep){opt=opt||false;dep=dep||false;var template=!!dep?filter:false;filters.hash.data.push({name:filter,value:val,option:opt,dependency:dep,template:template});}}};var results={data:[],tozero:function(){while(results.data.length>0){results.data.pop();}},init:function(){$items=$(itemSelector,$cont);mapData=[];$.each($items,function(i,item){var $item=$(item);var tmp={el:$item.get(),data:$item.metadata({type:"elem",name:"script"}),show:true};results.data.push(tmp);var marker={};if(tmp.data.ACLatitude!=""&&tmp.data.ACLongitude!=""){marker.Title=tmp.data.Title.replace(/&amp;/g,"&");marker.ACLatitude=tmp.data.ACLatitude;marker.ACLongitude=tmp.data.ACLongitude;mapData.push(marker);}});updateMap();$(".total,.showing",$cont).text(results.data.length+" ");},filter:function(){results.filtered=[];$.each(results.data,function(iR,res){var show=true;$.each(filters.hash.data,function(iF,fil){if(res.data[fil.name] instanceof Array){if(fil.option){if(fil.value===true&&$.inArray(fil.option,res.data[fil.name])==-1){show=false;}}else{if(fil.value!="All"&&fil.value!=""&&$.inArray(fil.value,res.data[fil.name])==-1){show=false;}}}else{if(typeof fil.value=="boolean"&&fil.value===true){if(res.data[fil.name]===false){show=false;}}else{if(typeof fil.value=="object"){if(!(fil.value.max=="off")&&((fil.value.min>res.data[fil.name]||fil.value.max<res.data[fil.name])||res.data[fil.name]=="")){show=false;}}else{if(typeof fil.value=="string"){if(fil.value!=""&&fil.value.toUpperCase()!=res.data[fil.name].toUpperCase()){show=false;}}}}}});results.data[iR].show=show;});results.display();},sort:function(attr){if(typeof results.data[0].data[attr]=="undefined"){log("sorting attribute missing");return;}results.data.sort(function(a,b){if(attr.match("Price")){var valA=parseInt(a.data[attr])||-1;var valB=parseInt(b.data[attr])||-1;if(valA==-1&&valB!=-1){return 1;}else{if(valA!=-1&&valB==-1){return -1;}else{if(valA==-1&&valB==-1){return 0;}else{return valA-valB;}}}}else{var valA=a.data[attr].toUpperCase();var valB=b.data[attr].toUpperCase();if(valA<valB){return -1;}if(valA>valB){return 1;}return 0;}});$.each(results.data,function(i,val){var item=val.el;$cont.find(".result-list > ul").append(val.el);});},display:function(){var shown=0;mapData=[];$.each(results.data,function(i,val){var $el=$(val.el);if(val.show){$el.show();shown++;var marker={};if(val.data.ACLatitude!=""&&val.data.ACLongitude!=""){marker.Title=val.data.Title.replace(/&amp;/g,"&");marker.ACLatitude=val.data.ACLatitude;marker.ACLongitude=val.data.ACLongitude;mapData.push(marker);}}else{$el.hide();}});updateMap();$(".showing",$cont).text(shown+" ");if(shown>0){$(item+".noresult",$cont).hide();}else{$(item+".noresult",$cont).show();}}};var updateMap=function(){tries=(typeof tries=="undefined")?10:tries;if($("#flash-multiplayer").length>0){try{document.getElementById("flash-multiplayer").refreshMap(mapData);}catch(e){}}if(tries&&tries>0){tries=tries-1;setTimeout(updateMap,1000);}};return{init:init,filters:filters,results:results};})();$(document).ready(function(){if($("#search-result").length>0){Kuoni.Style.Filtering.init();}});
/* http://www.cvtravel.co.uk/ProfileUIResources/JS/kuoni.style.navigation.layerspot.js */
Valtech.Namespace.create("Kuoni.Style.Navigation");Kuoni.Style.Navigation.LayerSpot=(function(){var openDuration=250,closeDuration=250,openDelay=250,closeDelay=100,easing="swing",z=200,boxShadowStyle="0px 0px 15px #666";var $container;var init=function(){$container.bind("mouseover",function(e){var target=$(e.target);if(target.parents().hasClass("zoomspot")&&true){activateSpot(target.parents(".zoomspot"));e.stopPropagation();}});if(window.console&&window.console.log){console.log("[Navigation.LayerSpot] inited");}};var activateSpot=function(target){var target=$(target);var t=setTimeout(function(){zoomIn(target);},openDelay);target.bind("mouseout",function(){clearTimeout(t);$(this).unbind("mouseout");});};var backdropPreload=function($clone){var src=$clone.find(".data").metadata().img_link;if(src){var img=new Image();$(img).load(function(){backdropLoaded($clone,src);}).attr("src",src);}};var backdropLoaded=function(el,src){$(el).find("a > img").attr("src",src);};var textImgPreload=function($clone){var src=$clone.find(".data").metadata().big_info_img;if(src){var img=new Image();$(img).load(function(){textImgLoaded($clone,src);}).attr("src",src);}};var textImgLoaded=function(el,src){$(el).find(".info > img").attr("src",src);if($.browser.msie&&$.browser.version==6){IEPNGFix.fix($(el).find(".info > img")[0],src);}};var addClosingEvents=function($clone){var t;$($clone).bind("mouseout",function(){t=setTimeout(function(){zoomOut($clone);},closeDelay);}).bind("mouseover",function(){clearTimeout(t);});};var zoomIn=function($el){var pos=$el.offset();var width=$el.width();var height=$el.height();z++;$clone=$el.clone().prependTo("body");$clone.data("top",pos.top);$clone.data("left",pos.left);$clone.data("width",width);$clone.data("height",height);$clone.css({position:"absolute",top:pos.top+"px",left:pos.left+1+"px","z-index":z,"-webkit-box-shadow":boxShadowStyle,"-khtml-box-shadow":boxShadowStyle,"-moz-box-shadow":boxShadowStyle,"box-shadow":boxShadowStyle});var opened=$clone.siblings(".zoomspot");zoomOut(opened);textImgPreload($clone);backdropPreload($clone);var parent=$el.parents(".sublayer");var parentPos=parent.offset();var zoomedLeft=pos.left-90<parentPos.left?parentPos.left-40:pos.left-90;zoomedLeft=zoomedLeft+310>parentPos.left+parent.width()?parentPos.left+parent.width()-310:zoomedLeft;var zoomedTop=pos.top-60<parentPos.top?parentPos.top-20:pos.top-60;zoomedTop=zoomedTop+200>parentPos.top+parent.height()?parentPos.top+parent.height()-200:zoomedTop;$clone.stop().animate({top:zoomedTop+"px",left:zoomedLeft+"px",width:"340px",height:"230px"},{duration:openDuration,easing:easing,complete:function(){if($.browser.msie?true:!($clone.css("-webkit-box-shadow")||$clone.css("-moz-box-shadow")||$clone.css("-khtml-box-shadow")||$clone.css("box-shadow"))){var shadow=$clone.find(".shadow");if($.browser.msie){shadow.show();}else{shadow.fadeIn("fast");}}}});var $info=$(".info, .bg",$clone);$info.stop().animate({height:"100px"},{duration:openDuration,easing:easing});var $h=$(".info img",$clone);$h.stop().animate({height:"41px",width:"251px",marginTop:"4px",marginLeft:"44px",marginRight:"44px"},{duration:openDuration,easing:easing});addClosingEvents($clone);};var zoomOut=function($clone){if($clone.length<1||$clone.data("closing")==true){return;}else{$clone.data("closing",true);}var top=$clone.data("top");var left=$clone.data("left");var width=$clone.data("width");var height=$clone.data("height");$clone.find(".shadow").hide();var $info=$(".info, .bg",$clone);$info.stop().animate({height:"30px"},{duration:closeDuration,easing:easing});var $h=$(".info img",$clone);$h.stop().animate({height:"30px",width:"160px",marginTop:"2px",marginLeft:"0px",marginRight:"0px"},{duration:closeDuration,easing:easing});$clone.stop().animate({top:top+"px",left:left+"px",width:width+"px",height:height+"px"},{duration:closeDuration+5,easing:easing,complete:function(){$clone.unbind().remove();}});};return{init:function(){$container=$("#layer-navigation");init();}};})();$(document).ready(Kuoni.Style.Navigation.LayerSpot.init);
