Exemplo n.º 1
0
        public ActionResult Validate()
        {
            var productBvin = Request.Form["productbvin"];

            if (!string.IsNullOrEmpty(productBvin))
            {
                productBvin = security.InputFilter(productBvin.Trim(), PortalSecurity.FilterFlag.NoMarkup);
            }

            var product        = HccApp.CatalogServices.Products.FindWithCache(productBvin);
            var validateResult = new ProductValidateResponse();

            if (product != null)
            {
                var selections = ParseSelections(product, false);
                var price      = HccApp.PriceProduct(product, HccApp.CurrentCustomer, selections, HccApp.CurrentlyActiveSales);

                ValidateSelections(validateResult, product, selections);
                ValidatePrice(validateResult, price);
                ValidateInventory(validateResult, product, selections);

                UpdateVariantImage(validateResult, product, price);

                if (validateResult != null)
                {
                    if (!string.IsNullOrEmpty(validateResult.MediumImageUrl))
                    {
                        if (HccApp.IsCurrentRequestSecure())
                        {
                            validateResult.MediumImageUrl = validateResult.MediumImageUrl.Replace("http", "https");
                        }
                    }

                    if (!string.IsNullOrEmpty(validateResult.OriginalImageUrl))
                    {
                        if (HccApp.IsCurrentRequestSecure())
                        {
                            validateResult.OriginalImageUrl = validateResult.OriginalImageUrl.Replace("http", "https");
                        }
                    }
                }
            }

            return(new PreJsonResult(Web.Json.ObjectToJson(validateResult)));
        }
Exemplo n.º 2
0
        private void RenderProduct(Product product)
        {
            var price = HccApp.PriceProduct(product, HccApp.CurrentCustomer, null, HccApp.CurrentlyActiveSales);

            var imageUrl = DiskStorage.ProductImageUrlSmall(HccApp, product.Bvin, product.ImageFileSmall,
                                                            Page.Request.IsSecureConnection);

            var htmlDiv = new HtmlGenericControl("div");

            htmlDiv.Attributes["class"] = "hcBlockContent";
            htmlDiv.Controls.Add(new LiteralControl(product.ProductName));

            phProduct.Controls.Clear();
            phProduct.Controls.Add(new HtmlImage
            {
                Src = imageUrl
            });

            phProduct.Controls.Add(htmlDiv);
        }
Exemplo n.º 3
0
        private ProductPrices CreateProductPrices(Product product)
        {
            var userPrice = HccApp.PriceProduct(product, HccApp.CurrentCustomer, null, HccApp.CurrentlyActiveSales);

            return(new ProductPrices(userPrice));
        }