jQuery(document).ready(function(){$(".room_container .title h3").mouseover(function(){$(this).css("text-decoration","underline")});$(".room_container .title h3").mouseout(function(){$(this).css("text-decoration","none")});$(".youtube_container").each(function(){if($(this).find("embed").length<=0&&$(this).find("iframe").length<=0){$(this).hide()}});var c=$("#subheader_sidebar").text();if(c!=0){$("#subheader_sidebar").css("min-height","400px")}var b=$("#blog_container").text();var a=$("#page_title").text();if(b==0){$("#blog_container").css("display","none")}if(a==0){$("#page_title").css("display","none")}if($("#subheader_gallery_container").length>0){}else{$("#main_content").css("min-height","300px")}$("#home_gal_thumb_list li .property").live("click",function(){url_clicked_thumb=$(this).attr("src");url_clicked_thumb=url_clicked_thumb.replace(/t_/,"m_");curr_big_img_arr=$(".med_img_placeholder").css("background-image").split("/");curr_big_img="";for(i=0;i<curr_big_img_arr.length;i++){if(i>=3){curr_big_img+="/"+curr_big_img_arr[i]}}curr_big_img=curr_big_img.substring(0,(curr_big_img.length-1));if(url_clicked_thumb!=curr_big_img){var d=[url_clicked_thumb];$(".gallery_big_loading").fadeIn();$.each(d,function(f){$(new Image()).load(function(){$(".gallery_fade_placeholder").show();$(".med_img_placeholder").css({background:"#333333 url('"+url_clicked_thumb+"') no-repeat scroll center center"});$(".gallery_big_loading").hide();$(".gallery_fade_placeholder").fadeOut("slow")}).attr("src",this)})}});$(".help_book").live("mouseover",function(){$("span",this).show()});$(".help_book").live("mouseout",function(){$("span",this).hide()});if($("li.small_room_thumb").length<=0&&$(".room_list_facilities li").length<=0){$(".room .link").hide();$(".room .thumb").css("cursor","default")}if($(".room").length==1){$(".room_hidden",this).css("display","block")}else{$(".room_hidden",this).css("display","none")}});$(function(){$("#nav>li>ul").hide();$("#nav>li").live("mouseover",function(){if($("#nav ul:animated").size()==0){$heading=$(this);$expandedSiblings=$heading.siblings().find("ul:visible");$expandedSiblings.css("opacity","none");if($expandedSiblings.size()>0){$expandedSiblings.slideUp(100,function(){$heading.find("ul").slideDown(100)})}else{$heading.find("ul").slideDown(100)}}});$("#header").live("mouseover",function(){if($("#nav ul:animated").size()==0){$("#nav>li>ul").fadeOut()}});$("#page").live("mouseover",function(){if($("#nav ul:animated").size()==0){$("#nav>li>ul").fadeOut()}});$("#nav>li>ul").mouseleave(function(){if($("#nav ul:animated").size()==0){$("#nav>li>ul").fadeOut()}})});function booking_request(){$("#booking_request_textarea").animate({height:"toggle",opacity:"none"})}function animate_room(a){if($("#block___"+a+" li.small_room_thumb").length>0||$("#block___"+a+" .room_list_facilities li").length>0){$("#room_hidden_"+a).animate({height:"toggle",opacity:"none"})}}function checkForm(){var d=$("#datepicker").datepicker("getDate");var e=$("#datepicker2").datepicker("getDate");if(($("#datepicker").val()=="")||($("#datepicker").val()=="DD/MM/YYYY")){alert("Data di arrivo obbligatoria.");return false}if(($("#datepicker2").val()=="")||($("#datepicker2").val()=="DD/MM/YYYY")){alert("Data di partenza obbligatoria.");return false}if(d>e){alert("La data della partenza non può essere maggiore della data di arrivo.");return false}var b=$("#reservation_nome").val();if(b==""){alert(error_booking.name_req);return false}var a=$("#reservation_email").val();if(a==""){alert(error_booking.email_req);return false}var c=/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/;if(!c.test(a)){alert("La mail inserita non è valida!");return false}}function checkFormBook(){var b=$("#book_nome").val();if(b==""){alert("Il nome è obbligatorio.");return false}var a=$("#book_email").val();if(a==""){alert("Email è obbligatoria.");return false}var c=/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/;if(!c.test(a)){alert("La mail inserita non è valida!");return false}}$(function(){var a=2020;$("#datepicker").datepicker({minDate:0,maxDate:new Date(a,12-1,31)});$("#datepicker2").datepicker({minDate:0,maxDate:new Date(a,12-1,31)})});function showPrivacy(){$("#privacy_hidden").fadeIn()}function hidePrivacy(){$("#privacy_hidden").fadeOut()}function verifyDateFormat(b,d){var c;var a;var g=false;try{c=b.match(/^(\d?\d)\D(\d?\d)\D(\d{4}|\d{2})$/);if(c!=null){if(d=="en"){a=new Date(c[3],c[1]-1,c[2]);g=((a.getMonth()==c[1]-1)&&(a.getDate()==c[2]))}else{if(d=="it"){a=new Date(c[3],c[2]-1,c[1]);g=((a.getMonth()==c[2]-1)&&(a.getDate()==c[1]))}}}}catch(f){alert(f.message)}finally{return g}}function add0(a){if(a<10){a="0"+a}return(a)}function imposta_domani(){var c=new Array();c=$("#datepicker").val();var d=c.substring(0,2);var g=c.substring(3,5);var f=c.substring(6,10);d=d+"/";g=g+"/";var e=parseInt(d,10)+1;e=add0(e);e=e+"/";var b=e+g+f;var a=verifyDateFormat(b,"it");if(a==false){g=parseInt(g,10);f=parseInt(f,10);e="01/";if(g<12){g=g+1;g=add0(g);g=g+"-"}else{g="01/";f=f+1}b=e+g+f}if($("#datepicker").val()==""){$("#datepicker2").val("")}else{$("#datepicker2").val(b)}}function add_room2cart(g){var f;var h=ShopCart.find_by_room_id(g);if(h.contingente==0){alert("Non ci sono più camere disponibili di questa tipologia.");return false}if(h.contingente==1){$("#block___"+g).find("input.button_add").addClass("button_add_opacity")}update_contingente(h,-1);var j=ShopCart.add_item(h);update_rooms_total();check_submit_status();$("#booking_options_cont").append($("#booking_options_template").html());var b=$("#booking_options_cont").find(".booking_option:last");b.attr("id","item_"+j);b.find(".trattamento_list").attr("id","trattamento_list_"+j);var a=$("#trattamento_list_"+j);a.find("input").attr("name","trattamento_"+j+"[]");b.find("div.booking_option_box_title").html(h.title);a.find("input.tratt_bb").attr("id","tratt_bb_"+j);a.find("input.tratt_pc").attr("id","tratt_pc_"+j);a.find("input.tratt_mp").attr("id","tratt_mp_"+j);if(h.bb.status==0){$("#tratt_bb_"+j).parent().remove()}if(h.pc.status==0){$("#tratt_pc_"+j).parent().remove();$("#tratt_mp_"+j).parent().remove()}else{if(h.pc.mp_status==0){$("#tratt_mp_"+j).parent().remove()}}var d=a.find("input:first");d.attr("checked","checked");if(a.find("input").length==1){a.find("input").attr("disabled",true)}var c=b.find("select.select_adulti");c.attr("id","select_adulti_"+j);for(f=1;f<=h.total;f++){c.append('<option value="'+f+'">'+f+"</option>")}c.bind("change",function(){var q=retNum(h.total);var p=retNum($(this).val());var o=q-p;var l=b.find("select.select_bambini");var n=l.find("option");var k=l.val();if(l.length>0){n.hide();n.each(function(r){if(r<=o){$(this).show()}});var m=l.find("option:visible:last").attr("value");if(k>m){l.val(m)}}update_people_total();get_new_price(j)});a.find("input.booking_option_check_box").bind("click",function(){price_by_tratt(h,$(this),j)});b.find("div.booking_option_box_title_delete").bind("click",function(){ShopCart.rm_item(j);b.animate({height:"toggle"},function(){$(this).remove();update_rooms_total();update_people_total();update_price();update_contingente(h,1);$("#block___"+g).find("input.button_add").removeClass("button_add_opacity")});check_submit_status()});if(h.add==0){b.find(".lista_bambini").remove();b.find(".eta_bambini").remove()}else{var e=b.find("select.select_bambini");e.attr("id","select_bambini_"+j);for(f=0;f<=h.add;f++){e.append('<option value="'+f+'">'+f+"</option>")}e.bind("change",function(){var q;var o=retNum($(this).val());var u=retNum(h.total);var m=u-o;var k=b.find("select.select_adulti");var p=k.find("option");var v=retNum(k.val());p.hide();p.each(function(w){if(w<m){$(this).show()}});var r=k.find("option:visible:last").attr("value");if(v>r){k.val(r)}if(o!="0"){var n=b.find("li.eta_bambini").length;if(n>o){var s=n-o;for(q=0;q<s;q++){b.find("li.eta_bambini:last").remove()}}else{if(n<o){var s=o-n;var l=$("#booking_options_template").find("li.eta_bambini").html();for(q=0;q<s;q++){if(n==0){var t=$(this).parent()}else{var t=b.find(".lista_bambini:last")}t.after("<li class='eta_bambini eta_bambini_"+j+"'>"+l+"</li>");$(".eta_bambini_"+j).bind("change",function(){get_new_price(j)})}}}b.find("li.eta_bambini").show();culla_status(h,b.find("#trattamento_list_"+j+" input:checked"),j)}else{b.find("li.eta_bambini").remove();b.find("li.culla_disponibile").hide()}b.find("input.checkbox_culla").attr("id","culla_"+j);get_new_price(j);update_people_total()})}b.find("select.select_eta_bambini").bind("change",function(){get_new_price(j)});b.find(".checkbox_culla").bind("click",function(){get_new_price(j)});b.hide().animate({height:"toggle",opacity:"toggle"});price_by_tratt(h,d,j);update_people_total()}function check_submit_status(){if(ShopCart.current_cart.length>0){$("#container_bottom").removeClass("submit_disabled")}else{$("#container_bottom").addClass("submit_disabled")}}function culla_status(e,d,b){if(retNum($("#select_bambini_"+b).val())==0){$("#item_"+b).find(".culla_disponibile").hide();return}var c=get_selected_tratt(b);var a=false;if((c=="pc"||c=="mp")&&e.pc.culla_status==1){a=true}else{if(c=="bb"&&e.bb.culla_status==1){a=true}}if(a==true){$("#item_"+b).find(".culla_disponibile").show()}else{$("#item_"+b).find(".culla_disponibile").hide()}}function price_by_tratt(e,d,b){culla_status(e,d,b);if($("#select_adulti_"+b).val()!="1"||$("#select_bambini_"+b).val()!="0"){get_new_price(b);return}var a=e;var c=0;if($(d).hasClass("tratt_bb")){c=retFloat(a.bb.price_base)+retFloat(a.bb.price_dus)+retFloat(a.bb.price_book)+retFloat(a.bb.price_stay);price_base=retFloat(a.bb.price_base)}else{if($(d).hasClass("tratt_pc")){c=retFloat(a.pc.price_base)+retFloat(a.pc.price_dus)+retFloat(a.pc.price_book)+retFloat(a.pc.price_stay);price_base=retFloat(a.pc.price_base)}else{if($(d).hasClass("tratt_mp")){get_new_price(b);return}}}item_price_html(c,price_base,b);update_price()}function update_contingente(c,b){c.contingente+=b;var a=$("#block___"+c.block_room_id);if(c.contingente==0){a.find(".button_add").addClass("disabled_add_btn")}else{a.find(".button_add").removeClass("disabled_add_btn")}a.find("span.lista_camere_contingente").html(c.contingente)}function item_price_html(d,c,b){var a=$("#item_"+b);$("#booking_button_box").removeClass("price_loading_bg_2");$("#item_"+b).find(".price_box").removeClass("price_loading_bg");a.find(".single_unit_price").removeClass("price_loading");a.find(".single_unit_price span.price_number").html(d);a.find(".single_unit_price span.euro_price").show();if(d!=c){a.find(".single_unit_prev_price span").html(c);a.find(".single_unit_prev_price").show()}else{a.find(".single_unit_prev_price").hide()}}function update_price(){var b=0;var a=0;$(".single_unit_price:visible span.price_number").each(function(){b=b+retFloat($(this).html())});$("#booking_button_box").removeClass("price_loading_bg_2");$("#total_price").removeClass("price_loading");$("#total_price").html("€ "+b)}function change_trattamento(c,d){var a=null;var b=0;if($(c).hasClass("tratt_bb")){a="bb";b=d.bb.price_base-d.bb.price_book-d.bb.price_stay}else{if($(c).hasClass("tratt_pc")){a="pc";b=d.pc.price_base-d.pc.price_book-d.pc.price_stay}else{if($(c).hasClass("tratt_mp")){a="mp"}}}if(a==null){return}if(a=="mp"){update_price()}}function update_rooms_total(){var a=ShopCart.current_cart.length;$("#rooms_total").html(a);$("#room_total_name").html(fr_camere_inflection(a))}function update_people_total(){var c=$("select.select_adulti:visible");var b=$("select.select_bambini:visible");var a=0;c.each(function(){a+=retNum($(this).val())});b.each(function(){a+=retNum($(this).val())});$("#people_total").html(a);$("#people_total_name").html(fr_persone_inflection(a))}function show_price_loading(b){$("#booking_button_box").addClass("price_loading_bg_2");$("#total_price").html("").addClass("price_loading");var a=$("#item_"+b);a.find(".price_box").addClass("price_loading_bg");a.find(".single_unit_price").addClass("price_loading");a.find(".euro_price").hide()}function hide_price_loading(b){$("#total_price").removeClass("price_loading");$("#booking_button_box").removeClass("price_loading_bg_2");var a=$("#item_"+b);a.find(".price_box").removeClass("price_loading_bg");a.find(".single_unit_price").removeClass("price_loading")}var intervalID=window.setInterval(request_all_prices,5000);var REQUEST_PRICE=false;var items2request_price=new Array();function get_new_price(b){var d=$("#item_"+b).find(".single_unit_price");d.find("span.price_number").html("");$("#item_"+b).find(".single_unit_prev_price").hide();show_price_loading(b);removeByValue(items2request_price,b);var c=gen_price_req_data(b);var e=[b,c];var a=ShopCart.Cache.find_first(c);if(a!=null){hide_price_loading(b);item_price_html(a.price,a.price_base,a.cart_item_id);update_price()}else{REQUEST_PRICE=true;items2request_price.push(e)}}function request_all_prices(){if(REQUEST_PRICE==false){return}for(i in items2request_price){new_price_req(items2request_price[i])}items2request_price=new Array();REQUEST_PRICE=false}function gen_price_req_data(b){var e={cart_item_id:b,authenticity_token:form_authenticity_token,from:null,to:null,block_room_id:null,adulti:0,bambini:0,eta_bambini_1:null,eta_bambini_2:null,eta_bambini_3:null,tratta:null,culla:0,mezzapensione:0,price:0,price_base:0};e.from=$("#booking_search_from").val();e.to=$("#booking_search_to").val();var d=get_selected_tratt(b);if(d==null){return}if(d=="bb"){e.trattamento=1}else{if(d=="pc"){e.trattamento=3;e.mezzapensione=0}else{if(d=="mp"){e.trattamento=3;e.mezzapensione=1}}}var f=ShopCart.find_item(b);if(f==null){return}e.block_room_id=f.block_room_id;e.adulti=retNum($("#select_adulti_"+b).val());e.bambini=retNum($("#select_bambini_"+b).val());var a=$("#item_"+b).find("select.select_eta_bambini");var c=new Array();c[0]=null;c[1]=null;c[2]=null;if(e.bambini>0&&a.length>0){a.each(function(g){if(g>2){return}c[g]=retNum($(this).val())})}e.eta_bambini_1=c[0];e.eta_bambini_2=c[1];e.eta_bambini_3=c[2];if($("#culla_"+b).attr("checked")==true){e.culla=1}else{e.culla=0}return e}function new_price_req(a){ShopCart.ajax_req.update_price(a[1])}function get_selected_tratt(a){var b=$("#trattamento_list_"+a).find("input:checked");if(b.hasClass("tratt_bb")){return"bb"}else{if(b.hasClass("tratt_pc")){return"pc"}else{if(b.hasClass("tratt_mp")){return"mp"}}}return null}function tratt_to_id(a){if(a=="bb"){return 1}else{return 3}}var ShopCart={current_cart:new Array(),current_room:null,ajax_req:{update_price:function(b){var a=jQuery.extend(true,{},b);$.ajax({type:"POST",url:"/booking/update_price",data:{authenticity_token:form_authenticity_token,from:a.from,to:a.to,block_room_id:a.block_room_id,adulti:a.adulti,bambini:a.bambini,eta_bambini_1:a.eta_bambini_1,eta_bambini_2:a.eta_bambini_2,eta_bambini_3:a.eta_bambini_3,tratta:a.trattamento,culla:a.culla,mezzapensione:a.mezzapensione},dataType:"json",success:function(c){if(c.status=="ok"&&$("#booking_resoconto:visible").length==0){if(a.trattamento==tratt_to_id(get_selected_tratt(a.cart_item_id))){hide_price_loading(a.cart_item_id);item_price_html(c.prezzo,c.prezzo_base,a.cart_item_id);update_price()}a.price=c.prezzo;a.price_base=c.prezzo_base;ShopCart.Cache.add_item(a)}}})}},Cache:{items:new Array(),add_item:function(b){var a=this.find_first(b);if(a==null){this.items.push(b)}else{a.price=b.price;a.price_base=b.price_base}},find_first:function(b){for(i in this.items){var a=this.items[i];if(this.compare_items(b,a)){return a}}return null},compare_items:function(b,a){if(b.adulti==a.adulti&&b.bambini==a.bambini&&b.block_room_id==a.block_room_id&&b.cart_item_id==a.cart_item_id&&b.culla==a.culla&&b.eta_bambini_1==a.eta_bambini_1&&b.eta_bambini_2==a.eta_bambini_2&&b.eta_bambini_3==a.eta_bambini_3&&b.from==a.from&&b.mezzapensione==a.mezzapensione&&b.to==a.to&&b.tratta==a.tratta&&b.trattamento==a.trattamento){return true}return false}},find_by_room_id:function(a){for(i in listall){if(listall[i].unit==null){continue}if(listall[i].unit.block_room_id==a){return listall[i].unit}}return null},find_item:function(a){for(i in this.current_cart){if(this.current_cart[i].item_id==a){return this.current_cart[i]}}return null},add_item:function(c){var b=this.gen_cart_id();var a={room_id:c.id,item_id:b,block_room_id:c.block_room_id};this.current_cart.push(a);return a.item_id},rm_item:function(a){for(i in this.current_cart){if(this.current_cart[i].item_id==a){this.current_cart.splice(i,1)}}},item_id_is_unique:function(a){for(i in this.current_cart){if(this.current_cart[i].item_id==a){return false}}return true},gen_cart_id:function(){var a=Math.floor(Math.random()*100000000000000000);if(this.item_id_is_unique(a)==false){this.gen_cart_id()}else{return a}}};function checkFormFront(){$period_dal=$("#period_dal");$period_al=$("#period_al");var a=$period_dal.datepicker("getDate");var b=$period_al.datepicker("getDate");if($period_dal.val()==""){alert(error_booking.error_checkin);return false}if($period_al.val()==""){alert(error_booking.error_checkout);return false}if(a>=b){alert(error_booking.error_date);return false}}$(function(){var a=$("#period_dal, #period_al").datepicker({dateFormat:"dd/mm/yy",minDate:0,onSelect:function(d){$period_dal=$("#period_dal");$period_al=$("#period_al");var e=this.id=="period_dal"?"minDate":"maxDate";var b=$(this).data("datepicker");var c=$.datepicker.parseDate(b.settings.dateFormat||$.datepicker._defaults.dateFormat,d,b.settings);a.not(this).datepicker("option",e,c);if($period_al.val()==""){$period_al.val(Date.parse("tomorrow").toString("dd/MM/yyyy"))}}})});function verifyDateFormat(b,d){var c;var a;var g=false;try{c=b.match(/^(\d?\d)\D(\d?\d)\D(\d{4}|\d{2})$/);if(c!=null){if(d=="en"){a=new Date(c[3],c[1]-1,c[2]);g=((a.getMonth()==c[1]-1)&&(a.getDate()==c[2]))}else{if(d=="it"){a=new Date(c[3],c[2]-1,c[1]);g=((a.getMonth()==c[2]-1)&&(a.getDate()==c[1]))}}}}catch(f){alert(f.message)}finally{return g}}var InfoPersCart={name:"",email:"",phone:"",comment:""};$(document).ready(function(){$("#book_nome").live("keyup",function(){InfoPersCart.name=$(this).val()});$("#book_email").live("keyup",function(){InfoPersCart.email=$(this).val()});$("#book_tel").live("keyup",function(){InfoPersCart.phone=$(this).val()});$("#booking_request_textarea textarea").live("keyup",function(){InfoPersCart.comment=$(this).val()});$("#cambia_id").click(function(){$("#booking_results_id").hide();$("#booking_search_id").show()});$("#booking_button_box").live("click",function(){if($(this).parents("#booking_resoconto").length>0||$("#container_bottom").hasClass("submit_disabled")){return}$("#container_bottom").addClass("submit_disabled");var a=new Array();for(i in ShopCart.current_cart){a.push(gen_price_req_data(ShopCart.current_cart[i].item_id))}$.ajax({type:"POST",url:"/booking/resoconto",dataType:"text",data:{"data[]":$.toJSON(a),authenticity_token:form_authenticity_token,lang:glob_curr_lang_acronym},success:function(b){$("#booking_options_cont").hide().after(b);$("#container_bottom, div.room_container input.button_add, #booking_search_id, #booking_results_id, .booking_online_text").hide();$("#book_nome").val(InfoPersCart.name);$("#book_email").val(InfoPersCart.email);$("#book_tel").val(InfoPersCart.phone);if(InfoPersCart.comment!=""){$("#booking_request_textarea textarea").val(InfoPersCart.comment);$("#booking_request_textarea").show()}$("#booking_resoconto").find("input.payment_type_switch").bind("click",function(){var c=retFloat($(this).val());$("#booking_button_box .resoconto_button").html("€ "+c)})}})});$("#change_cart_data").live("click",function(){$("#booking_options_cont, #container_bottom, div.room_container input.button_add, #booking_results_id, .booking_online_text").show();$("#booking_resoconto").remove();$("#container_bottom").removeClass("submit_disabled")})});function trim(a){if(a){return a.replace(/^\s+|\s+$/g,"")}return false}function retNum(b){var a=parseInt(b);return(isNaN(a))?0:a}function retFloat(b){var a=parseFloat(b);return(isNaN(a))?0:a}function removeByValue(a,c){for(var b=0;b<a.length;b++){if(a[b]==c){a.splice(b,1);break}}}function removeByIndex(a,b){a.splice(b,1)}function no_zero_leading(b){var a=false;for(i=0;i<b.length;i++){if(b.charAt(i)=="0"&&a==false){continue}if(a==true||b.charAt(i)!="0"){return b.substring(i,b.length)}}return b}function camere_inflection(a){camere=(retNum(a)==1)?" camera":" camere";return a+camere}function notti_inflection(a){giorni=(retNum(a)==1)?" notte":" notti";return a+giorni}function persone_inflection(a){persone=(retNum(persone)==1)?" persone":" persone";return a+persone}function fr_camere_inflection(b){var a=(retNum(b)==1)?i18n.camera:i18n.camere;return a}function fr_persone_inflection(a){var b=(retNum(a)==1)?i18n.persona:i18n.persone;return b}if(!Array.prototype.indexOf){Array.prototype.indexOf=function(d,c){if(c==null){c=0}else{if(c<0){c=Math.max(0,this.length+c)}}for(var b=c,a=this.length;b<a;b++){if(this[b]===d){return b}}return -1}};