var loadCart=LoadCart();var topWindow=0;$(document).ready(function(){$.ajaxSetup({cache:false});var a=Sys.WebForms.PageRequestManager.getInstance();initialize();a.add_beginRequest(function(){topWindow=$(window).scrollTop()});a.add_pageLoaded(function(){if(a.get_isInAsyncPostBack()){loadCart=LoadCart();initialize()}})});var initialize=function(){var c=$(".pageCheckout");var a;var b=".pageCheckout";if(c.length>0){ko.cleanNode(c[0]);$(c).on("cartRefresh",formValidate);a=c[0]}else{c=$(".pageCart");b=".pageCart";if(c.length>0){ko.cleanNode(c[0]);a=c[0]}else{return}}bindingStoreCartPageViewModel(a,b)};function formValidate(a){$("#aspnetForm").validate({errorPlacement:function(c,b){if(b.is(":radio")){c.appendTo(b.closest("div [data-required]"))}else{c.insertAfter(b)}},errorClass:"gerro"});jQuery.validator.messages.required="Deve preencher este campo.";jQuery.validator.setDefaults({debug:true})}function bindingStoreCartPageViewModel(a,b){loadCart.done(function(d){var e={extend:{"{root}.CartLines[i]":function(g){g.Qtt.extend({rateLimit:{timeout:500,method:"notifyWhenChangesStop"}});g.Qtt.subscribe(function(i){var j={ref:g.Ref(),qtt:i,cor:g.cor(),tamanho:g.tamanho()};var h=$.getJSON("/GMTP/api/Store/ChangeQttInCart",j).done(function(k){ko.viewmodel.updateFromModel(f,k);$(b).trigger("cartRefresh",f);AnimateCart()});SetUpdateProgress(h)})},"{root}.deliveryAddress":function(g){g.deleteAddress=function(i){var h=confirm("Deseja apagar a morada?");if(h){$.post("/GMTP/api/Store/DeleteAddress?id="+i.szadrsstamp()).done(function(){if(f.deliveryAddressSelected()===i.szadrsdesc()){if(f.deliveryAddressSelected()===g()[0].szadrsdesc()){f.deliveryAddressSelected(g()[1].szadrsdesc())}else{f.deliveryAddressSelected(g()[0].szadrsdesc())}}g.remove(i)})}}}}};var f=ko.viewmodel.fromModel(d,e);f.IsApplyCode=ko.observable(false);f.removeRef=function(g){var h={id:g.Id()};$.getJSON("/GMTP/api/Store/RemoveLineInCart",h).done(function(i){ko.viewmodel.updateFromModel(f,i);$(b).trigger("cartRefresh",f);AnimateCart()})};f.applyCode=function(g){f.IsApplyCode(true);$.post("/GMTP/api/Store/ApplyPromoCode?code="+g.promoCode()).done(function(h){ko.viewmodel.updateFromModel(f,h);if(h.success){alertify.success(h.resultMessage);AnimateCart()}else{if(h.resultMessage){alertify.error(h.resultMessage)}}$(b).trigger("cartRefresh",f)}).always(function(){f.IsApplyCode(false)})};f.isAddressChecked=function(g,h){return g.szadrsdesc()===f.deliveryAddressSelected()};f.SelectAddress=function(g,h){f.SelectedAddress(f.GetSelectedRow());return true};f.GetSelectedRow=function(){if(!f.deliveryAddress||f.deliveryAddress()==null){return ko.observableArray("")}return ko.utils.arrayFirst(f.deliveryAddress(),function(g){return g.szadrsdesc()===f.deliveryAddressSelected()})};f.SelectedAddress=ko.observable(f.GetSelectedRow());f.confirmOrder=function(h,i){var j=$("#aspnetForm");if(j.valid()){var l=false;var g={};g.EntityModel=h.paymentAddress;g.OtherAddress=f.OtherAddress;g.SelectedAddress=f.SelectedAddress;var k=$.ajax({type:"POST",async:false,url:"/GMTP/api/Store/SetEntity",data:ko.toJSON(g),contentType:"application/json",}).done(function(m){l=true}).fail(function(n,o,m){if(n.responseJSON&&n.responseJSON.Message){var p="/GMTP/programs/ewpview.aspx?codigo="+n.responseJSON.Message;window.location=p}});SetUpdateProgress(k);return l}else{j.validate().focusInvalid();return false}};f.updateDelivery=function(h){var g="";if(h!==undefined){g=h.code()}$.post("/GMTP/api/Store/updateDelivery?id="+g).done(function(i){ko.viewmodel.updateFromModel(f,i);$(b).trigger("cartRefresh",f)})};f.deliveryModesList=ko.computed(function(){var g;if(f.OtherAddress===undefined||(f.paymentAddress==null&&f.deliveryModes==null)){return null}if(f.deliveryAddress()!==null&&f.OtherAddress()){g=ko.utils.arrayFirst(f.deliveryAddress(),function(i){return i.szadrsdesc()===f.deliveryAddressSelected()}).codpais()}else{if(ko.utils.unwrapObservable(f.paymentAddress)!==null){g=f.paymentAddress.codpais()}}var h=ko.utils.arrayFilter(f.deliveryModes(),function(k){if(k.Countries==undefined){return true}var l=k.Countries();var j=f.deliveryModeSelected();var m=ko.utils.arrayFirst(k.Countries(),function(n){return(n===g||n==="")});var i=false;if(m==""){i=true}else{if(m!==null){i=true}}if(!i&&f.deliveryModeSelected()===k.code()){f.deliveryModeSelected("");f.updateDelivery()}return i});if(h.length==0){h=ko.utils.arrayFilter(f.deliveryModes(),function(i){var j=i.Countries();if(j.length===0||(j.length===1&&j[0]==="")){return true}return false})}return h},f.deliveryAddressSelected);f.updatePayment=function(h){var g="";if(h!==undefined){g=h.code()}$.post("/GMTP/api/Store/updatePayment?id="+g).done(function(i){ko.viewmodel.updateFromModel(f,i);$(b).trigger("cartRefresh",f)})};f.paymentMethodsList=ko.computed(function(){if(f.paymentMethod==null){return null}var g=ko.utils.arrayFilter(f.paymentMethod(),function(h){if(h.paymentdescription==undefined){return true}var i=ko.utils.arrayFirst(f.paymentMethod(),function(j){return j});return i});return g},f.paymentMethodSelected);f.paymentsModesVisible=ko.computed(function(){var g=ko.utils.arrayFilter(f.paymentMethod(),function(h){if(!h.paymentAlwaysVisible==undefined){return h.paymentAlwaysVisible===true}});return g});ko.applyBindings(f,a);if(topWindow>0){$(window).scrollTop(topWindow)}var c=$(".cart");$.each(c,function(g,h){ko.cleanNode(h);ko.applyBindings(f,h)});$(b).trigger("cartRefresh",f)})}function LoadCart(){return jQuery.getJSON("/GMTP/api/Store/GetStoreCartPageModel").fail(function(b,c,a){console.log(b)})}function AnimateCart(){var a=$(".cart");$.each(a,function(b,c){$(c).removeClass("animate").addClass("animate");setTimeout(function(){$(c).removeClass("animate")},600)})};