﻿
(function(){if(typeof BA==='undefined'){BA={};}
if(typeof BA.Testimonial==='undefined'){BA.Testimonial={};}
var convertDate=function(value)
{var a=/^\\?\/Date\((-?\d+)\)\\?\/$/.exec(value);var d=new Date();if(a!==null)
{d=new Date(+a[1]);}
return d;};Cuke.apply(BA.Testimonial,{currentPage:null,cache:{},maxPage:{},limit:5,itemsWrapper:{},isLogged:false,currentPageNumber:null,cityId:0,init:function(wrapperId,isLogged,cityId)
{var self=this;self.itemsWrapper=$j('#'+wrapperId);self.isLogged=isLogged;self.cityId=cityId;self.getUrlAndLoadPage();$j(window).bind('hashchange',function(event)
{self.getUrlAndLoadPage();});$j(".pager .button").hover(function(){$j(this).addClass("hover");},function(){$j(this).removeClass("hover");});$j(".pager .prev.button").click(function()
{var pageNumber=BA.Testimonial.currentPageNumber-1;if(pageNumber>=1)
{$j.bbq.pushState({page:pageNumber});}});$j(".pager .next.button").click(function()
{var pageNumber=BA.Testimonial.currentPageNumber+1;if(pageNumber<=BA.Testimonial.maxPage)
{$j.bbq.pushState({page:pageNumber});}});},getUrlAndLoadPage:function()
{var self=this;var url=$j.param.fragment();var pageNumber=$j.bbq.getState('page');if((parseFloat(pageNumber)==parseInt(pageNumber))&&!isNaN(parseInt(pageNumber)))
{pageNumber=parseInt(pageNumber);if(pageNumber>self.maxPage)
{self.loadPage(self.maxPage);}
else if(pageNumber<1)
{self.loadPage(1);}
else
{self.loadPage(pageNumber);}}
else
{self.loadPage(1);}},createPage:function(testimonials,isLogged,pageNumber)
{var self=this;var i;var page=$j('<div class="page">').appendTo(self.itemsWrapper).hide();for(i=0;i<testimonials.length;i++)
{var item=$j('<div class="item">').appendTo(page);var testimonial=testimonials[i];var flat=testimonial.BookingInfo.Flat;var html=$j(BA.FlatThumbnail.getHtml(flat,isLogged));item.append(html.addClass("large"));BA.FlatThumbnail.bindEventAndLaunchCycle(flat,page);item.append('<div class="comment">');$j("<div class='booking-info'><p>"+testimonial.BookingInfo.CustomerIdentity+"</p><p>"+Cuke.GetString("BeApart.DateFrom")+' '+convertDate(testimonial.BookingInfo.StartDate).format("dd mmmm yyyy",Cuke.cultureName)+' '+Cuke.GetString("BeApart.DateTo")+' '+convertDate(testimonial.BookingInfo.EndDate).format("dd mmmm yyyy",Cuke.cultureName)+"</p></div>").appendTo(item);item.append('<p class="date">'+Cuke.GetString("BeApart.From")+' '+testimonial.Date+'</p>');item.append('<div>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="0.5"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="1"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="1.5"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="2"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="2.5"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="3"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="3.5"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="4"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="4.5"/>');item.append('<input type="radio" class="star" name="rank'+testimonial.i+'" value="5"/>');item.append('</div>');item.append('<div><p><br/><br/>'+testimonial.HtmlText+'</p></div></div>');var rank=Math.ceil(testimonial.BookingInfo.Rank*2)/2;$j('input[value='+rank+']').attr('checked','true');$j('.star').rating({split:2,readOnly:true,});}
self.cache[pageNumber]=page;self.loadPage(pageNumber);},loadPage:function(pageNumber)
{var self=this;if(self.cache[pageNumber])
{if(self.currentPage!==null)
{self.currentPage.hide();}
$j('.pager').show();self.currentPage=self.cache[pageNumber];self.currentPage.fadeIn('normal');self.currentPageNumber=pageNumber;self.updatePager();$j("html, body").animate({scrollTop:0},0);}
else
{$j.ajax({type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({start:(pageNumber*self.limit)-self.limit,limit:self.limit,sort:'Date',dir:'Desc',cultureName:Cuke.CultureName,cityId:self.cityId}),dataType:"json",url:Cuke.RootUrl+"BeApart/Basic/Service/TestimonialService.asmx/GetPublishedTestimonial",success:function(data){self.maxPage=Math.ceil(data.d.Data.TotalCount/self.limit);self.createPage(data.d.Data.DisplayItems,self.isLogged,pageNumber);$j("html, body").animate({scrollTop:0},0);}});}},updatePager:function()
{if(this.currentPageNumber>this.maxPage){this.currentPageNumber=this.maxPage;}
$j(".pager .page-info .page-number").text(this.currentPageNumber);$j(".pager .page-info .total-page-count").text(this.maxPage);if(this.currentPageNumber<=1){$j(".pager .prev.button",this.wrapper).hide();}
else{$j(".pager .prev.button").show();}
if(this.currentPageNumber>=this.maxPage){$j(".pager .next.button",this.wrapper).hide();}
else{$j(".pager .next.button").show();}}});})();
