var BasketService=new function(){var t=this,n={Ok:0,Error:1,StockRestriction:2};t.UpdateUI=function(n){$('body [data-plugin="basket-amount"]').html(n.Amount);$('body [data-plugin="basket-amount-str"]').html(n.AmountStr);$('body [data-plugin="basket-tax"]').html(n.Tax);$('body [data-plugin="basket-tax-str"]').html(n.TaxStr);$('body [data-plugin="basket-total"]').html(n.Total);$('body [data-plugin="basket-total-str"]').html(n.TotalStr);$('body [data-plugin="basket-products-count"]').html(n.ProductsQuantity);$('body [data-plugin="basket-lines-count"]').html(n.LinesQuantity)};t.RefreshInfo=function(){$.get("/api/shopcart/",function(n){t.UpdateUI(n)})};t.AddProductByForm=function(t,i,r){$.ajax({url:"/api/shopcart/",type:"POST",data:t,dataType:"json",cache:!1,success:function(t){t.Status==n.Error?r(t.Message):i(t.Status==n.Ok,t.Message,t.Info)},error:function(){r(Language.UnexpectedError)}})};t.AddProduct=function(t,i,r,u){$.ajax({url:"/api/shopcart/",type:"POST",data:{IdProductVersion:t,Quantity:i},dataType:"json",cache:!1,success:function(t){t.Status==n.Error?u(t.Message):r(t.Status==n.Ok,t.Message,t.Info)},error:function(){u(Language.UnexpectedError)}})};t.AddProductWithTitle=function(t,i,r,u,f){$.ajax({url:"/api/shopcart/",type:"POST",data:{IdProductVersion:t,Quantity:i,Title:r},dataType:"json",cache:!1,success:function(t){t.Status==n.Error?f(t.Message):u(t.Status==n.Ok,t.Message,t.Info)},error:function(){f(Language.UnexpectedError)}})};t.EditProductQuantity=function(t,i,r,u){$.ajax({url:"/api/shopcart/"+t+"/edit",type:"POST",data:{Quantity:i},dataType:"json",cache:!1,success:function(t){t.Status==n.Error?u(t.Message):r(t.Status==n.Ok,t.Message,t.Info,t.LineDiscountStr,t.LineTotalStr,t.Reload)},error:function(){u(Language.UnexpectedError)}})};t.EditProductQuantityWithTitle=function(t,i,r,u,f){$.ajax({url:"/api/shopcart/"+t+"/edit",type:"POST",data:{Quantity:i,Title:r},dataType:"json",cache:!1,success:function(t){t.Status==n.Error?f(t.Message):u(t.Status==n.Ok,t.Message,t.Info,t.LineDiscountStr,t.LineTotalStr,t.Reload)},error:function(){f(Language.UnexpectedError)}})};t.DelProduct=function(t,i,r){$.ajax({url:"/api/shopcart/"+t+"/delete",data:{IsProduct:!0},type:"POST",dataType:"json",cache:!1,success:function(t){t.Status==n.Error?r(t.Message):i(t.Message,t.Info,!1)},error:function(){r(Language.UnexpectedError)}})};t.DelProductWithTitle=function(t,i,r,u){$.ajax({url:"/api/shopcart/"+t+"/delete",data:{IsProduct:!0,Title:i},type:"POST",dataType:"json",cache:!1,success:function(t){t.Status==n.Error?u(t.Message):r(t.Message,t.Info,!1)},error:function(){u(Language.UnexpectedError)}})};t.DelCoupon=function(t,i,r){$.ajax({url:"/api/shopcart/"+t+"/delete",type:"POST",data:{IsProduct:!1},dataType:"json",cache:!1,success:function(t){t.Status==n.Error?r(t.Message):i(t.Message,t.Info,!0)},error:function(){r(Language.UnexpectedError)}})};t.CheckAvailability=function(n,t,i){$.ajax({url:"/api/shopcart/check",type:"GET",data:n,dataType:"json",cache:!1,success:function(n){t(n)},error:function(){i(Language.UnexpectedError)}})}},Basket=new function(){var t=this,i=$("#BasketModal"),n={IdLanguage:"pt",mode:"simple",position:"top-right",action:"/api/"};t.Config=function(t){n=$.extend({},n,t);i.attr("data-position",n.position)};t.Init=function(){t.BindActions("body")};onSuccess=function(t,i,r,u,f){BasketService.UpdateUI(f);var e=n.action;n.mode=="detailed"&&(e+="?mode=detailed&IdVersion="+t+"&Title="+i+"&IdLanguage="+$("body").attr("data-lang"));$.get(e).done(function(n){$("#BasketModal").html(n);r||App.ShowWarningMessage(u);$("#BasketModal").modal("show");window.setTimeout(function(){$("#BasketModal").modal("hide")},2e4)})};t.BindActions=function(n){$(n).find('[data-basket="add-product"]').length&&$(n).find('[data-basket="add-product"]').each(function(){var n=this;$(n).click(function(n){n.preventDefault();var t=this;BasketService.AddProduct($(t).attr("data-product-version"),$(t).data("product-quantity"),function(n,i,r){onSuccess($(t).attr("data-product-version"),null,n,i,r)},function(n){App.ShowErrorMessage(n)})})});$(n).find('form[data-basket="submit-product"]').length&&$(n).find('form[data-basket="submit-product"]').each(function(){var n=this;$(n).submit(function(t){t.preventDefault();BasketService.AddProduct($(n).find('[name="IdProductVersion"]').val(),$(n).find('[name="Quantity"]').val(),function(t,i,r){onSuccess($(n).find('[name="IdProductVersion"]').val(),null,t,i,r)},function(n){App.ShowErrorMessage(n)})})});$(n).find('form[data-basket="submit-product-with-title"]').length&&$(n).find('form[data-basket="submit-product-with-title"]').each(function(){var n=this;$(n).submit(function(t){t.preventDefault();BasketService.AddProductWithTitle($(n).find('[name="IdProductVersion"]').val(),$(n).find('[name="Quantity"]').val(),$(n).find('[name="Title"]').val(),function(t,i,r){onSuccess($(n).find('[name="IdProductVersion"]').val(),$(n).find('[name="Title"]').val(),t,i,r)},function(n){App.ShowErrorMessage(n)})})})}}