﻿function CitybreakCalendar(k,m,s,x,n,a){var j=this;var v=m;var p=s;var t=x;var d=n;var w=[];var h=document.getElementById(k);var q=new Calendar(k,false,true,false,new Date());var g=a;var l=false;this.ArrivalDate=new Date();this.OSD={StoreId:0,StoreItemId:0};this.DateSelected=new Date(1900,0,1);$(q).bind("OnDayRendered",c);$(q).bind("OnMonthChanged",b);$(q).bind("OnDayClicked",u);this.Init=function(){if(this.DateSelected>new Date(1900,0,1)){l=true}if(d){f(!l)}else{q.Render()}};this.Dispose=function(){q=null;j=null};function f(){$(h).loaderShow();var y=false;if(arguments.length>0&&arguments[0]==true){y=true}window.AjaxMgr.ReqJSON("/Ajax/CityBreak/Calendar.ashx",{a:"arrival",p:v,pl:p,f:y,d:q.GetDate().toFormat("y-m-d"),l:t},false,e,g)}function e(z,y){$(h).loaderHide();q.SetDate(new Date(z.First));w=z.Dates;j.OSD.StoreId=z.StoreId;j.OSD.StoreItemId=z.StoreItemId;$(j).trigger({type:"OnArrivalLoaded",Date:j.DateSelected,Osd:j.OSD});q.Render()}this.Departure=o;function o(){if((j.OSD.StoreId>0&&w.length===0)){$(h).loaderShow();window.AjaxMgr.ReqJSON("/Ajax/CityBreak/Calendar.ashx",{a:"departure",sid:j.OSD.StoreId,siid:j.OSD.StoreItemId,d:j.ArrivalDate.toFormat("y-m-d"),l:t},false,r,g)}else{q.Render()}}function r(z){if(z.Dates.length==0){w=[];$(h).loaderHide();$.prompt(window.Translate.CBNoDepartureDate);$(j).trigger({type:"OnNoDates"});return}minDate=new Date().add("y",2);for(var y=0;y<z.Dates.length;y++){if(z.Dates[y]<minDate){minDate=z.Dates[y]}}q.SetDate(new Date(minDate));w=z.Dates;$(h).loaderHide();q.Render()}this.SetArrival=function(y,z){this.ArrivalDate=y;this.OSD=z;w=[]};this.GetDate=function(){return q.GetDate()};this.SetDate=function(y){q.SetDate(new Date(y))};this.ClearArrival=function(){this.ArrivalDate=new Date();this.OSD={StoreId:0,StoreItemId:0};this.DateSelected=new Date(1900,0,1)};this.Clear=function(){w=[];this.ArrivalDate=new Date();this.OSD={StoreId:0,StoreItemId:0};this.DateSelected=new Date(1900,0,1)};this.Render=function(){q.Render()};function b(y){if(d){f()}else{o()}$(j).trigger({type:"OnMonthChanged",CurrentDate:y.CurrentDate,PreviousDate:y.PreviousDate})}function c(y){if(l&&j.DateSelected.compare("d",y.Date)){y.Div.addClass("CalDaySelected");l=false}else{if(i(y.Date)){y.Div.addClass("CalDayAvailable")}}}function u(y){if(!i(y.Date)){y.Day.removeClass("CalDaySelected");return}if(!d&&j.OSD.StoreId===0){$.prompt(window.Translate.PromptNoDates)}j.DateSelected=y.Date;$(j).trigger({type:"OnDaySelected",Date:y.Date,Osd:j.OSD})}function i(y){if(y<new Date().setHours(0,0,0,0)){return false}var A=false;for(var z=0;z<w.length;z++){if(w[z].compare("d",y)){A=true;break}}return A}};
function RoomConfig(n){var r=[];var d="#"+n;var l=this;this.SetRooms=g;this.SetAdults=b;this.SetChildren=a;this.SetChildAge=s;this.ToString=o;this.Render=t;this.GetRoomCount=k;if(arguments.length>1&&arguments[1]!==""){var e=arguments[1];var u=e.split("|");for(var q=0;q<u.length;q++){r.push(f());var m=u[q].split("#");r[q][0]=parseInt(m[0]);var c=m[1].split(";");if(c.length>0&&c[0]!==""){for(var p=0;p<c.length;p++){r[q][1].push(c[p])}}}}else{r.push(f());r[0][0]=2}function k(){return r.length}function g(v){var w=Math.abs(r.length-v);if(r.length>v){r.splice(v,w)}else{for(var j=0;j<w;j++){r.push(f())}}this.Render()}function s(v){var j=(v.currentTarget)?v.currentTarget:v.srcElement;var i=j.options[j.options.selectedIndex].value;r[v.data.room][1][v.data.child]=i}function b(){if(arguments.length==1){var v=arguments[0];var j=(v.currentTarget)?v.currentTarget:v.srcElement;var i=parseInt(j.options[j.options.selectedIndex].value);r[v.data.room][0]=i}else{if(arguments.length==2){r[arguments[0]][0]=arguments[1]}}}function a(z){var y=(z.currentTarget)?z.currentTarget:z.srcElement;var A=y.options[y.options.selectedIndex].value;if(A==""){A="0"}var v=parseInt(A);var x=z.data.room;var w=Math.abs(r[x][1].length-v);if(v==0){r[x][1]=[]}else{if(r[x][1].length>v){r[x][1].splice(v,w)}else{for(var j=0;j<w;j++){r[x][1].push("1-3")}}}this.Render()}function o(){var x="";for(var w=0;w<r.length;w++){x+=r[w][0]+"#";for(var v=0;v<r[w][1].length;v++){x+=r[w][1][v]+";"}if(r[w][1].length>0){x=x.substr(0,x.length-1)}x+="|"}if(x.length>0){x=x.substr(0,x.length-1)}return x}function t(){var v=r;$(d).empty();for(var y=0;y<r.length;y++){var x=$(d).createAppend("div",{id:"BookingRoomConfig"+y,className:"BookingRoomConfig"},["span",{},window.Translate.RoomNo(y+1),"select",{id:"Room"+y+"_Adults"},["option",{value:1},"1 "+window.Translate.Adult,"option",{value:2},"2 "+window.Translate.Adults,"option",{value:3},"3 "+window.Translate.Adults,"option",{value:4},"4 "+window.Translate.Adults,"option",{value:5},"5 "+window.Translate.Adults,"option",{value:6},"6 "+window.Translate.Adults],"select",{id:"Room"+y+"_Children"},["option",{value:0},"0 "+window.Translate.Children,"option",{value:1},"1 "+window.Translate.Child,"option",{value:2},"2 "+window.Translate.Children,"option",{value:3},"3 "+window.Translate.Children,"option",{value:4},"4 "+window.Translate.Children,"option",{value:5},"5 "+window.Translate.Children,"option",{value:6},"6 "+window.Translate.Children]]).children("select");h(x.eq(0)[0],r[y][0]);h(x.eq(1)[0],r[y][1].length);x.eq(0).bind("change",{room:y},function(i){l.SetAdults(i)});x.eq(1).bind("change",{room:y},function(i){l.SetChildren(i)});for(var w=0;w<r[y][1].length;w++){x=$("#BookingRoomConfig"+y).createAppend("div",{},["span",{},window.Translate.ChildAge(w+1),"select",{id:"Room"+y+"_Child"+w+"_Age"},["option",{value:"1-3"},"1-3","option",{value:"4-6"},"4-6","option",{value:"7-10"},"7-10","option",{value:"11-13"},"11-13","option",{value:"14-16"},"14-16"]]).children();h(x.eq(1)[0],r[y][1][w]);x.eq(1).bind("change",{room:y,child:w},function(i){l.SetChildAge(i)})}}}function f(){var i=[];i.push(1);i.push([]);return i}function h(v,x){for(var w=0;w<v.options.length;w++){var j=(v.options[w].defaultValue)?v.options[w].defaultValue:v.options[w].value;if(j==x){v.options.selectedIndex=w;break}}}}RoomConfig.prototype.toString=function(){return this.ToString()};

