private void RefreshControls_OnProductSizeSelected()
        {
            Sku sku = new Sku();

            sku = CSResolve.Resolve <ISkuService>().GetSkuByID(skuID);
            if (!sku.AttributeValuesLoaded)
            {
                sku.LoadAttributeValues();
            }
            //imgSku.ImageUrl = sku.GetAttributeValue("ProductDetailImage", sku.ImagePath);
            imgSku.ImageUrl = sku.AttributeValues["bigproductimage1"].Value;
            if (sku.ContainsAttribute("title") && sku.AttributeValues["title"].Value != "")
            {
                lblSkuTitle.Text = sku.AttributeValues["title"].Value;
            }
            else
            {
                lblSkuTitle.Text = sku.Title;
            }

            lblSkuDescription.Text = sku.LongDescription;
            lblSkuPrice.Text       = GetHtmlDecoratedDollarCents(sku.InitialPrice.ToString("C"));
            lblRetailPrice.Text    = sku
                                     .GetAttributeValue <string>("RetailPrice", sku.InitialPrice.ToString("n2")).Trim();
            //ltDirection.Text = sku
            //    .GetAttributeValue<string>("Directions", string.Empty);
            ltIngredients.Text = sku
                                 .GetAttributeValue <string>("Ingredients", string.Empty);
            lblSize.Text             = sku.GetAttributeValue <string>("ProductSize", String.Empty);
            ltDetailDescription.Text = sku.GetAttributeValue <string>("DetailDescription", String.Empty);
            imagePath = sku.ImagePath;
            GroupId   = sku.AttributeValues["groupid_review"].Value;
            if (!(sku.ContainsAttribute("sizeofProduct") && sku.AttributeValues["sizeofproduct"].Value != null))
            {
                this.chooseSizePanel.Visible         = false;
                this.productRetailPricePanel.Visible = true;
                if (!sku.AttributeValuesLoaded)
                {
                    sku.LoadAttributeValues();
                }

                if (sku.ContainsAttribute("productprice") && sku.AttributeValues["productprice"].Value != null && sku.ContainsAttribute("retailprice") && sku.AttributeValues["retailprice"].Value != null)
                {
                    this.productValue.Text = sku.AttributeValues["productprice"].Value.ToString();
                    this.retailPrice.Text  = sku.AttributeValues["retailprice"].Value.ToString();
                }
            }
        }
        protected override void Page_Load(object sender, EventArgs e)
        {
            base.Page_Load(sender, e);
            OrderHelper.RedirectDesktop();
            string qs = "";

            try
            {
                qs = Request.QueryString["skuID"];
            }
            catch
            { }
            string pageName = qs;; //Page.RouteData.Values["pageName"] as string;

            if (!String.IsNullOrEmpty(pageName))
            {
                Sku sku = CSResolve.Resolve <ISkuService>().GetSkuByID(Convert.ToInt32(pageName));
                sku.LoadAttributeValues();

                List <Sku> skus = CSResolve.Resolve <ISkuService>().GetAllSkus();
                for (int i = 0; i < skus.Count; i++)
                {
                    if (!skus[i].AttributeValuesLoaded)
                    {
                        skus[i].LoadAttributeValues();
                    }

                    //if (pageName.Equals(skus[i].GetAttributeValue<string>("skuRoutingName", string.Empty).Trim().ToLower()))
                    //{
                    //    skuID = skus[i].SkuId;
                    //    break;
                    //}
                    if (sku.ContainsAttribute("sizeofproduct") && sku.AttributeValues["sizeofproduct"].Value == "small")
                    {
                        if (skus[i].ContainsAttribute("sizeofproduct") && skus[i].AttributeValues["sizeofproduct"].Value == "small" && (skus[i].AttributeValues["groupname"].Value == sku.AttributeValues["groupname"].Value))
                        {
                            foreach (var item in skus)
                            {
                                item.LoadAttributeValues();
                                if (item.ContainsAttribute("groupname") && item.AttributeValues["groupname"].Value == skus[i].AttributeValues["groupname"].Value && (item.ContainsAttribute("sizeofproduct") && item.AttributeValues["sizeofproduct"].Value == "big"))
                                {
                                    pageName = item.SkuId.ToString();
                                }
                            }
                        }
                    }
                    if (pageName.Equals(skus[i].SkuId.ToString()))
                    {
                        skuID = skus[i].SkuId;
                        break;
                    }
                }
            }

            if (!Page.IsPostBack)
            {
                Session["skuID_AddtoCart"] = null;
                BindControls();
            }
        }
        private void LoadUpgradeSku()
        {
            int upgradeSkuId = 0;
            int skuId        = 0;

            foreach (Sku sku in CartContext.CartInfo.CartItems)
            {
                skuId = sku.SkuId;
                //if (sku.SkuId == 112)
                //    upgradeSkuId = 114;
                if (sku.SkuId == 111)
                {
                    upgradeSkuId = 114;
                }
                break;
            }
            if (upgradeSkuId > 0)
            {
                SkuManager skuManager = new SkuManager();
                Sku        sku        = skuManager.GetSkuByID(skuId);
                sku.LoadAttributeValues();
                if (sku.ContainsAttribute("upgradetext") && sku.AttributeValues["upgradetext"] != null)
                {
                    lblUpgrade.Text = sku.AttributeValues["upgradetext"].Value;
                }

                imgUpgrade.CommandArgument = upgradeSkuId.ToString();
                pnlUpgrade.Visible         = true;
            }
        }
 private void LoadOfferTerms(Sku sku)
 {
     sku.LoadAttributeValues();
     if (sku.ContainsAttribute("offerterms") &&
         sku.AttributeValues["offerterms"] != null)
     {
         ltOfferTerms.Text = sku.AttributeValues["offerterms"].Value;
     }
 }
        private void BindControls()
        {
            Sku sku = new Sku();

            if (SkuId > 0)
            {
                sku = CSResolve.Resolve <ISkuService>().GetSkuByID(SkuId);
            }
            else if (skuID > 0)
            {
                sku = CSResolve.Resolve <ISkuService>().GetSkuByID(skuID);
            }
            else
            {
                Response.Redirect("Products.aspx", true);
            }


            if (sku != null)
            {
                if (!sku.AttributeValuesLoaded)
                {
                    sku.LoadAttributeValues();
                }
                bool HideSku = sku.GetAttributeValue("ShowSku", false);
                if (!HideSku)
                {
                    Response.Redirect("Products.aspx", true);
                }
                //imgSku.ImageUrl = sku.GetAttributeValue("ProductDetailImage", sku.ImagePath);
                imgSku.ImageUrl = sku.AttributeValues["bigproductimage1"].Value;
                if (sku.ContainsAttribute("title") && sku.AttributeValues["title"].Value != "")
                {
                    lblSkuTitle.Text = sku.AttributeValues["title"].Value;
                }
                else
                {
                    lblSkuTitle.Text = sku.Title;
                }

                lblSkuDescription.Text = sku.LongDescription;
                lblSkuPrice.Text       = GetHtmlDecoratedDollarCents(sku.InitialPrice.ToString("C"));
                lblRetailPrice.Text    = sku
                                         .GetAttributeValue <string>("RetailPrice", sku.InitialPrice.ToString("n2")).Trim();
                //ltDirection.Text = sku
                //    .GetAttributeValue<string>("Directions", string.Empty);
                ltIngredients.Text = sku
                                     .GetAttributeValue <string>("Ingredients", string.Empty);
                lblSize.Text             = sku.GetAttributeValue <string>("ProductSize", String.Empty);
                ltDetailDescription.Text = sku.GetAttributeValue <string>("DetailDescription", String.Empty);
                imagePath = sku.ImagePath;
                GroupId   = sku.AttributeValues["groupid_review"].Value;
                if (sku.ContainsAttribute("smallproductimage1"))
                {
                    smallImage1.ImageUrl = sku.AttributeValues["smallproductimage1"].Value;
                    smallImage2.ImageUrl = sku.AttributeValues["smallproductimage2"].Value;
                    smallImage3.ImageUrl = sku.AttributeValues["smallproductimage3"].Value;
                    smallImage4.ImageUrl = sku.AttributeValues["smallproductimage4"].Value;
                }

                if (sku.ContainsAttribute("bigproductimage2"))
                {
                    bigImage1.ImageUrl = sku.AttributeValues["bigproductimage1"].Value;
                    bigImage2.ImageUrl = sku.AttributeValues["bigproductimage2"].Value;
                    bigImage3.ImageUrl = sku.AttributeValues["bigproductimage3"].Value;
                    bigImage4.ImageUrl = sku.AttributeValues["bigproductimage4"].Value;
                }

                if (sku.ContainsAttribute("sizeofProduct") && sku.AttributeValues["sizeofproduct"].Value != null)
                {
                    this.chooseSizePanel.Visible = true;
                    if (sku.AttributeValues["sizeofproduct"].Value == "big")
                    {
                        if (sku.SkuId == 144)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "NET WT. 8.0 OZ.";
                            this.smallSizeSelectButton.Text    = "NET WT. 3.5 OZ.";
                        }
                        else if (sku.SkuId == 148)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "NET WT. 10.1 OZ.";
                            this.smallSizeSelectButton.Text    = "NET WT. 4.0 OZ.";
                        }
                        else if (sku.SkuId == 140)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = false;
                            this.bigSizeSelectButton.Text      = "ONE SIZE";
                            this.bigSizeSelectButton.Enabled   = false;
                        }
                        else if (sku.SkuId == 142)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "6.0 FL. OZ.";
                            this.smallSizeSelectButton.Text    = "2.0 FL OZ.";
                        }
                        else if (sku.SkuId == 146)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "NET WT. 10.5 OZ.";
                            this.smallSizeSelectButton.Text    = "NET WT. 4.0 OZ.";
                        }
                        else if (sku.SkuId == 139)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "2.3\"";
                            this.smallSizeSelectButton.Text    = "2\"";
                        }
                    }
                }
                else
                {
                    this.chooseSizePanel.Visible         = false;
                    this.productRetailPricePanel.Visible = true;

                    if (!sku.AttributeValuesLoaded)
                    {
                        sku.LoadAttributeValues();
                    }
                    if (sku.ContainsAttribute("productprice") && sku.AttributeValues["productprice"].Value != null && sku.ContainsAttribute("retailprice") && sku.AttributeValues["retailprice"].Value != null)
                    {
                        this.productValue.Text = sku.AttributeValues["productprice"].Value.ToString();
                        this.retailPrice.Text  = sku.AttributeValues["retailprice"].Value.ToString();
                    }
                }
                if (sku.SkuId == 161)
                {
                    productRetailPricePanel.Visible = false;
                    pnlKitSelection.Visible         = true;
                    if (rbAuto.Checked)
                    {
                        Session["skuID_AddtoCart"]  = "120";
                        lblRetailPrice.Text         = "29.95";
                        ddlQuantity.Enabled         = false;
                        subscriptionDetails.Visible = true;
                    }
                    else
                    {
                        Session["skuID_AddtoCart"]  = "161";
                        lblRetailPrice.Text         = "39.95";
                        ddlQuantity.Enabled         = true;
                        subscriptionDetails.Visible = false;
                    }
                }
            }
        }
        protected void rptProducts3_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                Sku   cartItem           = e.Item.DataItem as Sku;
                Image imgProduct         = e.Item.FindControl("imgProduct") as Image;
                Label lblSkuTitle        = e.Item.FindControl("lblSkuTitle") as Label;
                Label lblSkuDescription  = e.Item.FindControl("lblSkuDescription") as Label;
                Label lblSkuInitialPrice = e.Item.FindControl("lblSkuInitialPrice") as Label;
                Label lblRetailPrice     = e.Item.FindControl("lblRetailPrice") as Label;


                ImageButton btnViewProduct   = e.Item.FindControl("btnViewProduct") as ImageButton;
                Literal     litRegularPrice  = e.Item.FindControl("litRegularPrice") as Literal;
                LinkButton  product_anchor3a = e.Item.FindControl("product_anchor3a") as LinkButton;
                LinkButton  product_anchor3b = e.Item.FindControl("product_anchor3b") as LinkButton;
                Label       lblSize          = e.Item.FindControl("lblSize") as Label;

                imgProduct.ImageUrl    = cartItem.GetAttributeValue("ProductImage", cartItem.ImagePath);
                lblSkuTitle.Text       = cartItem.GetAttributeValue <string>("title", cartItem.Title);          //cartItem.LongDescription;//cartItem.Title;
                lblSkuDescription.Text = cartItem.GetAttributeValue <string>("SubDescription", cartItem.Title); //cartItem.LongDescription;
                var initial_Price = "";
                if (!cartItem.AttributeValuesLoaded)
                {
                    cartItem.LoadAttributeValues();
                }
                foreach (var item in Skus)
                {
                    item.LoadAttributeValues();
                    if (item.ContainsAttribute("groupname") && item.AttributeValues["groupname"].Value != null && cartItem.ContainsAttribute("groupname") && (item.AttributeValues["groupname"].Value == cartItem.AttributeValues["groupname"].Value))
                    {
                        if (item.ContainsAttribute("sizeofproduct") && item.AttributeValues["sizeofproduct"].Value == "small")
                        {
                            initial_Price = item.InitialPrice.ToString("C0");
                        }
                    }
                }

                if (initial_Price != "")
                {
                    if (initial_Price != cartItem.InitialPrice.ToString("C0"))
                    {
                        lblSkuInitialPrice.Text = initial_Price + " - " + cartItem.InitialPrice.ToString("C0");
                    }
                    else
                    {
                        lblSkuInitialPrice.Text = cartItem.InitialPrice.ToString("C0");
                    }
                }
                else
                {
                    lblSkuInitialPrice.Text = cartItem.InitialPrice.ToString("C0");
                }
                if (cartItem.SkuId == 161)
                {
                    lblSkuInitialPrice.Text      = cartItem.GetAttributeValue <string>("Product_Price", cartItem.InitialPrice.ToString());
                    btnViewProduct.AlternateText = "SAVE $ LEARN MORE";
                    btnViewProduct.ImageUrl      = "//d39hwjxo88pg52.cloudfront.net/volaire/images/products/btn_save_learn_more.png";
                }
                lblSize.Text = cartItem.GetAttributeValue <string>("ProductSize", String.Empty);

                decimal regPrice;
                if (decimal.TryParse(cartItem.GetAttributeValue <string>("RetailPrice", cartItem.InitialPrice.ToString("n2")).Trim(), out regPrice))
                {
                    lblRetailPrice.Text = regPrice.ToString("C");
                }

                product_anchor3a.PostBackUrl   = "/" + OrderHelper.GetVersionName() + "/" + cartItem.GetAttributeValue <string>("skuRoutingName", string.Empty).Trim().ToLower();
                product_anchor3b.PostBackUrl   = "/" + OrderHelper.GetVersionName() + "/" + cartItem.GetAttributeValue <string>("skuRoutingName", string.Empty).Trim().ToLower();
                btnViewProduct.CommandArgument = cartItem.SkuId.ToString();
                lblSize.Text = cartItem.GetAttributeValue <string>("ProductSize", String.Empty);
            }
        }