var buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.facebookWizard=function(n){function y(){p();w()}function p(){typeof n!="object"&&(n={});r=typeof n.parent=="undefined"?null:n.parent;f=typeof n.$section=="undefined"?null:n.$section;c=f.find("div.pageTitle");t=f.find("div.wrapper");u=f.find(".back");o=buyseasons.reviews.userImagesDao();o.init()}function w(){var n=$(".PDReviewTabs .data .FacebookData"),t=n.data("sdkurl"),r=n.data("appid");t&&r&&($.ajaxSetup({cache:!0}),$.getScript(t,function(){i=FB;FB.init({appId:r,status:!0,cookie:!0})}))}function b(){t.html("");u.hide();r.setPage("facebook");a()}function l(n){c.text(n)}function k(){r.setPage("mainPage")}function a(){i.Event.subscribe("auth.authResponseChange",function(n){n.status!=="connected"&&a()});i.login(function(n){d(n)},{scope:"user_photos,friends_photos",return_scopes:!0})}function d(n){n.status==="connected"&&e(1)}function v(n,t){return buyseasons.common.getPage(n,t,s)}function e(n){i.api("/me/albums",function(t){g(t,n)})}function g(n,r){l("My Albums:");t.html("");t.append('<div class="imageCategory"><\/div><div class="previous"><\/div><div class="next"><\/div>');var o=t.find("div.imageCategory:last"),u=t.find("div.next"),f=t.find("div.previous"),c=Math.ceil(n.data.length/s),a=$(v(n.data,r));a.each(function(){var n=this;n.count>0&&i.api("/"+n.cover_photo,{fields:"picture"},function(t){o.append("<div><\/div>");var i=o.find("div:last");i.attr("title",n.name);i.addClass("photo");t.picture&&i.css("background-image","url("+t.picture+")");i.on("click",function(){h(n.id,n.name,r,1)});i.hover(function(){$(this).addClass("hover")},function(){$(this).removeClass("hover")})})});r==1?f.hide():f.show();r<c?u.show():u.hide();u.on("click",function(){e(r+1)});f.on("click",function(){e(r-1)})}function h(n,t,r,u){i.api("/"+n+"/photos",function(i){nt(i,n,t,r,u)})}function nt(n,i,r,f,o){var p,w;l(r+":");t.html("");t.append('<div class="imageCategory"><\/div><div class="previous"><\/div><div class="next"><\/div>');var c=t.find("div.imageCategory:last"),a=t.find("div.next"),y=t.find("div.previous");u.show();c.attr("title",r);p=Math.ceil(n.data.length/s);w=$(v(n.data,o));w.each(function(){var t=this,n;c.append("<div><\/div>");n=c.find("div:last");n.addClass("photo");n.attr("title",t.name);t.picture&&n.css("background-image","url("+t.picture+")");n.on("click",function(){tt(t.source)});n.hover(function(){$(this).addClass("hover")},function(){$(this).removeClass("hover")})});o==1?y.hide():y.show();o<p?a.show():a.hide();a.on("click",function(){h(i,r,f,o+1)});y.on("click",function(){h(i,r,f,o-1)});u.on("click",function(){u.hide();e(f)})}function tt(n){o.uploadImageFromUrl(n,function(n){n.Success?it(n):rt(n.Message)})}function it(n){r.addPhoto({referenceId:n.ReferenceId,url:n.PhotoUrl,width:n.Width,height:n.Height});k()}function rt(n){alert(n)}var r,o,f,i,s=12,c,t,u;return{parent:r,init:function(){y()},startWizard:function(){b()}}};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.filters=buyseasons.reviews.filters=function(n){function s(){h();c()}function h(){n=typeof n!="object"?{}:n;u=typeof n.main=="undefined"?{}:n.main;f=typeof n.pagination=="undefined"?{}:n.pagination;r=typeof n.$section=="undefined"?{}:n.$section;e=typeof n.$data=="undefined"?{}:n.$data;t=r.find(".reviewFilter");o=r.find(".reviewFilter a")}function c(){t.on("click",l)}function l(n){var r=$(this),o=r.find("a"),e=o.data("filter");t.removeClass("selected");t.find("input:checkbox").prop("checked","");i===e?i=null:(i=e,r.addClass("selected"),r.find("input:checkbox").prop("checked","checked"));f.setCurrentPage(1);u.getReviews();n.stopPropagation()}function a(){return i}function v(){t.removeClass("selected");t.find("input:checkbox").prop("checked","");i=null}var u,f,r,e,t,o,i=null;return{init:function(){s()},getFilter:function(){return a()},clear:function(){v()}}};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.images=buyseasons.reviews.images=function(n){function g(){nt();it();rt();ut();tt()}function nt(){n=typeof n!="object"?{}:n;t=typeof n.$addImageSection=="undefined"?$("div.reviewAddImage"):n.$addImageSection;i=typeof n.$reviewImagesSection=="undefined"?$("div.reviewImages"):n.$reviewImagesSection;h=t.find(".addImage");s=t.find(".page");c=t.find(".cancel");l=t.find(".source");a=t.find(".source.facebook");v=t.find(".source.instagram");y=t.find(".source.myComputer");p=t.find("div.page.facebook");w=t.find("div.page.instagram");d=t.find("div.page.myImages");b=t.find("div.page.myComputer")}function tt(){h.on("click",function(){r("sourceList")});l.on("click",function(){r(null)});a.on("click",f.startWizard);v.on("click",e.startWizard);y.on("click",o.startWizard);c.on("click",function(){r("mainPage")})}function it(){f=buyseasons.reviews.facebookWizard({parent:u,$section:p});f.init()}function rt(){e=buyseasons.reviews.instagramWizard({parent:u,$section:w});e.init()}function ut(){o=buyseasons.reviews.imageUploadWizard({parent:u,$section:b});o.init()}function r(n){if(s.hide(),n!=null){var t=s.filter(function(){return $(this).hasClass(n)});t.show()}}function ft(n){var t;n=typeof n!="object"?{}:n;var r=typeof n.referenceId=="undefined"?"":n.referenceId,u=typeof n.url=="undefined"?"http://www.google.com":n.url,s=typeof n.width=="undefined"?0:n.width,h=typeof n.height=="undefined"?0:n.height;i.append('<li class="reviewImageAdded">           <img src="">           <label id="reviewTitle">Add a Caption:<\/label>           <input class="captionField" id="reviewCaptionField" maxlength="255" name="reviewCaption" type="text" value="">           <input type="button" class="removeBtn" value="Remove">       <\/li>');t=i.find("li.reviewImageAdded:last");t.data("referenceId",r);var f=t.find("img"),e=t.find(".removeBtn"),o=t.find(".captionField");f.attr("src",u);e.on("click",k);o.focus()}function k(){var n=$(this);n.off("click",k);n.closest("li.reviewImageAdded").remove()}function et(){i.find("li.reviewImageAdded").remove()}function ot(){for(var t=[],r=i.find("li.reviewImageAdded"),n=0;n<r.length;n++){var u=$(r[n]),f=u.find(".captionField"),e={Description:f.val(),ReferenceId:u.data("referenceId")};t.push(e)}return t}var f,e,o,t,i,h,s,c,l,a,v,y,p,w,d,b,u={init:function(){g()},addPhoto:function(n){ft(n)},setPage:function(n){r(n)},getData:function(){return ot()},clear:function(){et()}};return u};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.imageUploadWizard=function(n){function h(){c();l();a()}function c(){n=typeof n!="object"?{}:n;t=typeof n.$section=="undefined"?null:n.$section;r=typeof n.parent=="undefined"?null:n.parent;e=t.find(".fileSelector");o=t.find(".errorMessage");f=t.find(".errorWrapper")}function l(){var n=$(".PDReviewTabs .data .UploadData");u=parseInt(n.data("maxrequestlength"))}function a(){e.fileupload({dataType:"json",type:"POST",autoUpload:!1,maxFileSize:u,url:"/ReviewPhoto/UploadPhoto",add:function(n,t){w(t.files[0])?(s(!0),t.submit()):$(this).empty()},done:function(n,t){s(!1);t.result.Success?v(t.result):i(t.result.Message)},fail:function(n){i(n.toString())}})}function s(n){var i=t.find(".spinnerTrue"),r=t.find(".spinnerFalse");n?(r.hide(),i.show()):(r.show(),i.hide())}function v(n){r.addPhoto({referenceId:n.ReferenceId,url:n.PhotoUrl,width:n.Width,height:n.Height});p()}function i(n){o.html(n);n==null||n==""?f.hide():f.show()}function y(){i(null);r.setPage("myComputer")}function p(){r.setPage("mainPage")}function w(n){var t,r;return n==null?(i("Please select a file."),!1):n.size>u?(t=Math.round(u/1048576),i("file size exceeds limit ("+t+"Mb)!"),!1):(r=n.name.split(".").pop().toLowerCase(),$.inArray(r,["gif","png","jpg","jpeg"])==-1)?(i("Invalid file format."),!1):!0}var r,t,u,e,o,f;return{init:function(){h()},startWizard:function(){y()}}};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.instagramWizard=function(n){function l(){a();v()}function a(){typeof n!="object"&&(n={});i=typeof n.parent=="undefined"?null:n.parent;u=typeof n.$section=="undefined"?null:n.$section;c=u.find("div.pageTitle");t=u.find("div.wrapper");r=buyseasons.reviews.userImagesDao();r.init()}function v(){$(document).on("instagramAuthenticated",function(n){y(n.accessToken)})}function y(n){f&&(s=n,f=!1,o(1))}function p(){t.html("");e("");i.setPage("instagram");k()}function e(n){c.text(n)}function w(){i.setPage("mainPage")}function b(n,t){return buyseasons.common.getPage(n,t,h)}function k(){f=!0;var t=$(".PDReviewTabs .data .InstagramData"),n=t.data("loginurl");n&&window.open(n,"Instagram","height=300,width=400,top=200,left=300")}function o(n){e("Loading...");$.ajax({type:"GET",dataType:"jsonp",cache:!1,url:"https://api.instagram.com/v1/users/self/media/recent/?access_token="+s,error:function(){},success:function(t){d(n,t)}})}function d(n,i){t.html("");t.append('<div class="imageCategory"><\/div><div class="previous"><\/div><div class="next"><\/div>');var f=t.find("div.imageCategory:last"),r=t.find("div.next"),u=t.find("div.previous"),s=Math.ceil(i.data.length/h),c=$(b(i.data,n));c.each(function(){var t=this,n;f.append("<div><\/div>");n=f.find("div:last");n.addClass("photo");t.caption!==null&&n.attr("title",t.caption.text);t.images.thumbnail.url&&n.css("background-image","url("+t.images.thumbnail.url+")");n.on("click",function(){g(t.images.standard_resolution.url)});n.hover(function(){$(this).addClass("hover")},function(){$(this).removeClass("hover")})});n==1?u.hide():u.show();n<s?r.show():r.hide();r.on("click",function(){o(n+1)});u.on("click",function(){o(n-1)});e("My Instagram Images:")}function g(n){r.uploadImageFromUrl(n,function(n){n.Success?nt(n):tt(n.Message)})}function nt(n){i.addPhoto({referenceId:n.ReferenceId,url:n.PhotoUrl,width:n.Width,height:n.Height});w()}function tt(n){alert(n)}var i,r,u,f=!1,s=null,h=12,c,t;return{parent:i,init:function(){l()},startWizard:function(){p()}}};buyseasons.reviews.instagramWizard.authenticate=function(n){$.event.trigger({type:"instagramAuthenticated",accessToken:n})};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.main=buyseasons.reviews.main=function(n){function nt(){tt();it();ut();ft();et();ot();st();a();ht()}function tt(){n=typeof n!="object"?{}:n;t=$(".ProductReviews");f=t.find(".data");g=t.find(".Review.Template");v=t.find(".containerReviews");y=t.find(".reviewBottomButtons");c=t.find(".SortReviews");u=t.find(".WriteReview");e=t.find("#ProductReviewsContent");o=t.find("#ProductReviewsConfirm");p=t.find(".reviewRangeStart");w=t.find(".reviewRangeEnd")}function it(){$("span.scrollToReviewsLink").replaceWith(function(){return $('<a class="scrollToReviewsLink">'+$(this).html()+"<\/a>")});$("a.scrollToReviewsLink").attr("href","#ScrollProductReviews")}function rt(){return t.length>0}function ut(){i=buyseasons.reviews.pagination({main:h,$data:f,$section:t.find(".pagination")});i.init()}function ft(){s=buyseasons.reviews.filters({main:h,pagination:i,$data:f,$section:t});s.init()}function et(){r=buyseasons.reviews.submit({main:h,$section:t.find("#ProductReviewsWrite")});r.init()}function ot(){b=f.find(".productId").text()}function st(){c.on("change",ct);u.on("click",d)}function ht(){window.location.hash&&window.location.hash.toLowerCase()=="#scrollproductreviews"&&d()}function d(){k==="read"?l("write"):l("read")}function l(n){n==="write"?(e.hide(),r.show(),o.hide(),u.text("Read Reviews")):n==="done"?(e.hide(),r.hide(),o.show(),u.text("Read Reviews")):(e.show(),r.hide(),o.hide(),u.text("Write A Review"));k=n}function ct(){i.isShowAll()||i.setCurrentPage(1);a()}function a(){if(rt()){var t=i.getCurrentPage(),r=c.val(),u=s.getFilter(),n={request:{ProductId:b,PageNumber:t,SortKey:r,FilterKey:u}};$.ajax({cache:!1,type:"POST",url:"/Review/ProductReviews",dataType:"html",contentType:"application/json",data:JSON.stringify(n),success:function(t){lt({request:n.request,html:t})},error:function(){}})}}function lt(n){var f,e,r;n=typeof n!="object"?{}:n;f=typeof n.html=="undefined"?{}:n.html;e=typeof n.request=="undefined"?{}:n.request;t.find(".Review").remove();t.find(".pageData").remove();y.before(f);var u=v.find(".pageData"),o=u.data("rangestart"),s=u.data("rangeend"),h=u.data("filteredreviewcount");p.text(o);w.text(s);r=h;$(".totalReviews").text(r);$(".totalDescription").text((e.FilterKey===null?"Total":"Filtered")+" Review"+(r===1?"":"s"));i.updatePageLinks(r)}function at(){s.clear()}var t,f,v,g,y,p,w,c,u,e,o,b,k="read",i,s,r,h={init:function(){nt()},getReviews:function(){a()},clearFilters:function(){at()},reviewSubmitted:function(){l("done")},getSubmit:function(){return r}};return h};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.pagination=buyseasons.reviews.pagination=function(n){function a(){v();y();p()}function v(){n=typeof n!="object"?{}:n;u=typeof n.main=="undefined"?{}:n.main;i=typeof n.$section=="undefined"?{}:n.$section;c=typeof n.$data=="undefined"?{}:n.$data;o=i.find(".viewAllLink");s=i.find(".viewPagedLink");f=i.find(".nextPageLink");e=i.find(".prevPageLink")}function y(){h=c.find(".reviewsPerPage").text();t=1}function p(){o.on("click",k);s.on("click",d);f.on("click",w);e.on("click",b)}function w(){t!==r&&(t+=1,u.getReviews())}function b(){t!==1&&(t-=1,u.getReviews())}function k(n){return t=-1,u.clearFilters(),u.getReviews(),n.preventDefault(),!1}function d(){l(1);u.getReviews()}function g(n){var u,c,l,a;if(r=0,h!=0&&(r=Math.ceil(n/h)),i.find(".pageLink").remove(),i.find(".pageEllipsis").remove(),t===-1)o.hide(),s.show(),e.hide(),f.hide();else{for(u=1;u<=r;u++)c='<li class="pageLink"><a href="javascript:;">'+u+"<\/a><\/li>",u===1&&t>3&&(c+='<li class="pageEllipsis">...<\/li>'),u===r&&r-t>3&&(c='<li class="pageEllipsis">...<\/li>'+c),(Math.abs(u-t)<=2||u===1||u===r)&&(f.before(c),l=i.find(".pageLink:last"),u===t&&l.addClass("current"));a=i.find(".pageLink");a.on("click",nt);t===1?e.addClass("unavailable"):e.removeClass("unavailable");t===r?f.addClass("unavailable"):f.removeClass("unavailable");o.show();s.hide();e.show();f.show()}}function nt(){var n=$(this);t=parseInt(n.text());u.getReviews()}function tt(){return t}function l(n){t=n}function it(){return t===-1}var u,i,c,o,s,f,e,h,t,r;return{init:function(){a()},isShowAll:function(){return it()},getCurrentPage:function(){return tt()},setCurrentPage:function(n){l(n)},updatePageLinks:function(n){g(n)}}};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.submit=buyseasons.reviews.submit=function(n){function ft(){et();ot();st();pt();ht()}function et(){n=typeof n!="object"?{}:n;v=typeof n.main=="undefined"?{}:n.main;t=typeof n.$section=="undefined"?{}:n.$section;c=$("#ReviewSubmissionForm");u=t.find(".reviewTitle");y=t.find(".reviewTitleCharCount");p=t.find(".reviewText");b=t.find(".reviewEmail");w=t.find(".reviewNickname");k=t.find(".genderSelect");d=t.find(".reviewUserAge");g=t.find(".reviewCity");f=t.find(".countrySelect");i=t.find(".regionSelect");e=t.find(".regionText");nt=t.find(".regionLabel");o=t.find("li.ratingScale ul");l=t.find("li.ratingScale ul li.RatingStar");tt=t.find(".reviewSubmitButton");ut=t.find(".ratingValue");it=t.find(".NotApplicableRating")}function ot(){f.on("change",wt);l.on("mouseenter",ct);l.on("mouseleave",lt);o.on("mouseleave",at);o.on("click",vt);tt.on("click",ni);it.on("click",yt)}function st(){validation.setupFormValidation(c);r=c.data("validator")}function ht(){s=buyseasons.reviews.images({$addImageSection:t.find("div.reviewAddImage"),$reviewImagesSection:t.find("ul.reviewImages")});s.init()}function ct(){var n=$(this),t=n.closest("ul"),i=n.data("value");n.addClass("Hover");t.data("tempvalue",i);h(t,i)}function lt(){var n=$(this);n.removeClass("Hover")}function at(){var i=$(this),n=i.closest("ul"),t=n.data("value");n.data("tempvalue",t);h(n,t)}function vt(){var n=$(this),t=n.data("tempvalue"),i=n.data("value");t==i&&(t=0);a(n,t)}function yt(n){var i=$(this),t=i.closest("ul");a(t,0);h(t,0);n.preventDefault();n.stopPropagation()}function a(n,t){var u,i;n.data("value",t);u=n.closest("li.ratingScale").find(".ratingValue");u.val(t);i=n.find("li.NotApplicableRating");t==0?(i.addClass("RatingStarOn"),i.removeClass("RatingStarOff")):(i.removeClass("RatingStarOn"),i.addClass("RatingStarOff"));u.hasClass("AVSValidate")&&r.element(u)}function h(n,t){n.find("li.RatingStar").each(function(n,i){var r=$(i),u=r.data("value");u==t?r.addClass("Selected"):r.removeClass("Selected");u<=t?(r.addClass("RatingStarOn"),r.removeClass("RatingStarOff")):(r.removeClass("RatingStarOn"),r.addClass("RatingStarOff"))})}function pt(){var n=parseInt(u.attr("maxlength")),t=buyseasons.util.charCounter({$input:u,changeDelegate:function(t){var i=n-t;y.text(" ("+i+" characters remaining)")}});t.init();u.trigger("input")}function wt(){var n={countryCode:f.val()};$.ajax({cache:!1,type:"POST",url:"/Review/GetRegions",dataType:"json",contentType:"application/json",data:JSON.stringify(n),success:function(n){bt(n)},error:function(){}})}function bt(n){var o=n.country,u=o.AddressConfiguration,r=n.regions,t,f;if(i.val(""),e.val(""),nt.text(u.StateLabel),u.UseDropdownForState)for(i.show(),e.hide(),i.find("option:not(:first)").remove(),t=0;t<r.length;t++)f='<option value="'+r[t].RegionName+'">'+r[t].RegionName+"<\/option>",i.append(f);else i.hide(),e.show()}function kt(){return t.find("input:radio[name='RecommendToAFriend']:checked").val()}function dt(){return i.is(":visible")?i.val():e.val()}function gt(n){return n.val()!==null&&n.val()!==""?n.find("option:selected").text():""}function rt(){var n={ProductId:t.data("productid"),WouldRecommend:kt(),Title:u.val(),ReviewText:p.val(),Nickname:w.val(),GenderId:k.val(),UserAgeRangeId:d.val(),City:g.val(),Region:dt(),CountryCode:f.val(),Country:gt(f),ProfileId:b.val()},i=[],r=s.getData();return o.each(function(t,r){var u=$(r),f=u.data("ratingcategoryid"),e=u.data("value"),o;f==="-1"?n.OverallRating=e:(o={RatingCategoryId:f,Rating:e},i.push(o))}),{addReviewModel:{Review:n,Ratings:i,Photos:r,Videos:[]}}}function ni(){if(r.form(),r.valid()){var n=rt();$.ajax({cache:!1,type:"POST",url:"/Review/AddReview",dataType:"json",contentType:"application/json; charset=UTF-8",data:JSON.stringify(n),success:function(){},error:function(n){console.log(n)}});v.reviewSubmitted()}}function ti(){r.resetForm();t.find(".ratingValue").val("");o.each(function(n,t){var i=$(t);a(i,0);h(i,0)});s.clear()}function ii(){ti();t.show()}function ri(){t.hide()}var v,s,r,t,c,u,y,p,w,b,k,d,g,f,i,e,nt,o,l,tt,ut,it;return{init:function(){ft()},show:function(){ii()},hide:function(){ri()},getData:function(){return rt()}}};buyseasons=buyseasons||{};buyseasons.reviews=buyseasons.reviews||{};buyseasons.reviews.userImagesDao=function(n){function t(){i()}function i(){typeof n!="object"&&(n={})}function r(n,t){$.ajax({type:"POST",data:{url:n},dataType:"json",cache:!1,url:"/ReviewPhoto/UploadPhotoFromUrl",error:function(n){alert(n)},success:function(n){t(n)}})}return{init:function(){t()},uploadImageFromUrl:function(n,t){r(n,t)}}}