public void GetSpecialItemSetting()
    {
        AspxCommonInfo aspxCommonObj = new AspxCommonInfo();

        aspxCommonObj.StoreID     = StoreID;
        aspxCommonObj.PortalID    = PortalID;
        aspxCommonObj.CultureName = CultureName;

        JavaScriptSerializer    json_serializer   = new JavaScriptSerializer();
        SpecialItemsController  sic               = new SpecialItemsController();
        SpecialItemsSettingInfo lstSpecialSetting = sic.GetSpecialItemsSetting(aspxCommonObj);

        if (lstSpecialSetting != null)
        {
            object obj = new
            {
                IsEnableSpecialItems       = lstSpecialSetting.IsEnableSpecialItems,
                NoOfItemShown              = lstSpecialSetting.NoOfItemShown,
                NoOfItemInRow              = lstSpecialSetting.NoOfItemInRow,
                IsEnableSpecialItemsRss    = lstSpecialSetting.IsEnableSpecialItemsRss,
                SpecialItemsRssCount       = lstSpecialSetting.SpecialItemsRssCount,
                SpecialItemsRssPageName    = lstSpecialSetting.SpecialItemsRssPageName,
                SpecialItemsDetailPageName = lstSpecialSetting.SpecialItemsDetailPageName,
                SpecialItemModulePath      = SpecialItemModulePath
            };
            Settings = json_serializer.Serialize(obj);
        }
    }
    public void GetSpecialItemSetting()
    {
        AspxCommonInfo aspxCommonObj = new AspxCommonInfo();
        aspxCommonObj.StoreID = StoreID;
        aspxCommonObj.PortalID = PortalID;
        aspxCommonObj.CultureName = CultureName;

        JavaScriptSerializer json_serializer = new JavaScriptSerializer();
        SpecialItemsController sic = new SpecialItemsController();
        SpecialItemsSettingInfo lstSpecialSetting = sic.GetSpecialItemsSetting(aspxCommonObj);

        if (lstSpecialSetting != null)
        {
            object obj = new
            {
                IsEnableSpecialItems = lstSpecialSetting.IsEnableSpecialItems,
                NoOfItemShown = lstSpecialSetting.NoOfItemShown,
                NoOfItemInRow = lstSpecialSetting.NoOfItemInRow,
                IsEnableSpecialItemsRss = lstSpecialSetting.IsEnableSpecialItemsRss,
                SpecialItemsRssCount = lstSpecialSetting.SpecialItemsRssCount,
                SpecialItemsRssPageName = lstSpecialSetting.SpecialItemsRssPageName,
                SpecialItemsDetailPageName = lstSpecialSetting.SpecialItemsDetailPageName,
                SpecialItemModulePath = SpecialItemModulePath
            };
            Settings = json_serializer.Serialize(obj);
        }
    }
Example #3
0
    private void LoadAllSpecialItems()
    {
        VarFunction = "LoadAllSpecialItems";
        SpecialItemsController  sic          = new SpecialItemsController();
        List <SpecialItemsInfo> lstSpeDetail = sic.GetAllSpecialItems(offset, limit, aspxCommonObj, sortBy, RowTotal);

        BindAllItems(lstSpeDetail);
    }
    private void GetSpecialItemSetting(AspxCommonInfo aspxCommonObj)
    {
        JavaScriptSerializer    json_serializer   = new JavaScriptSerializer();
        SpecialItemsController  sic               = new SpecialItemsController();
        SpecialItemsSettingInfo lstSpecialSetting = sic.GetSpecialItemsSetting(aspxCommonObj);

        if (lstSpecialSetting != null)
        {
            SpecialItemsRssCount = lstSpecialSetting.SpecialItemsRssCount;
        }
    }
    private void GetSpecialItemSetting(AspxCommonInfo aspxCommonObj)
    {

        JavaScriptSerializer json_serializer = new JavaScriptSerializer();
        SpecialItemsController sic = new SpecialItemsController();
        SpecialItemsSettingInfo lstSpecialSetting = sic.GetSpecialItemsSetting(aspxCommonObj);

        if (lstSpecialSetting != null)
        {
            SpecialItemsRssCount = lstSpecialSetting.SpecialItemsRssCount;
        }
    }
Example #6
0
    private void GetSpecialItemSetting()
    {
        AspxCommonInfo aspxCommonObj = new AspxCommonInfo();

        aspxCommonObj.StoreID     = StoreID;
        aspxCommonObj.PortalID    = PortalID;
        aspxCommonObj.CultureName = CultureName;
        JavaScriptSerializer    json_serializer   = new JavaScriptSerializer();
        SpecialItemsController  sic               = new SpecialItemsController();
        SpecialItemsSettingInfo lstSpecialSetting = sic.GetSpecialItemsSetting(aspxCommonObj);

        if (lstSpecialSetting != null)
        {
            SpecialItemsRssCount = lstSpecialSetting.SpecialItemsRssCount;
        }
    }
Example #7
0
    private void GetSpecialItemSetting()
    {
        AspxCommonInfo aspxCommonObj = new AspxCommonInfo();

        aspxCommonObj.StoreID     = StoreID;
        aspxCommonObj.PortalID    = PortalID;
        aspxCommonObj.CultureName = CultureName;

        SpecialItemsController  sic = new SpecialItemsController();
        SpecialItemsSettingInfo lstSpecialSetting = sic.GetSpecialItemsSetting(aspxCommonObj);

        if (lstSpecialSetting != null)
        {
            EnableSpecialItems = lstSpecialSetting.IsEnableSpecialItems;
            SpecialItemRss     = lstSpecialSetting.IsEnableSpecialItemsRss.ToString();
            SpecialDetailPage  = lstSpecialSetting.SpecialItemsDetailPageName;
            RssFeedUrl         = lstSpecialSetting.SpecialItemsRssPageName;
            NoOfItemInRow      = lstSpecialSetting.NoOfItemInRow;
            NoOfSpecialItems   = lstSpecialSetting.NoOfItemShown;
        }
    }
    private void BindSpecialItems(AspxCommonInfo aspxCommonObj)
    {
        string modulePath             = this.AppRelativeTemplateSourceDirectory;
        string aspxRootPath           = ResolveUrl("~/");
        string aspxTemplateFolderPath = aspxRootPath + "Templates/" + TemplateName;

        hst = AppLocalized.getLocale(modulePath);
        string pageExtension = SageFrameSettingKeys.PageExtension;
        int    NoOfItemInRow = 2;

        DataSet dsSpecialItems = SpecialItemsController.GetSpecialItemsandSettingDataSet(aspxCommonObj);

        if (dsSpecialItems != null && dsSpecialItems.Tables.Count == 2)
        {
            #region Special Items Setting
            DataTable dtSpecialItemsSetting = dsSpecialItems.Tables[0];
            if (dtSpecialItemsSetting != null & dtSpecialItemsSetting.Rows.Count > 0)
            {
                NoOfItemInRow     = Convert.ToInt32(dtSpecialItemsSetting.Rows[0]["NoOfItemInRow"].ToString());
                SpecialItemRss    = dtSpecialItemsSetting.Rows[0]["IsEnableSpecialItemsRss"].ToString();
                SpecialDetailPage = dtSpecialItemsSetting.Rows[0]["SpecialItemsDetailPageName"].ToString();
                RssFeedUrl        = dtSpecialItemsSetting.Rows[0]["SpecialItemsRssPageName"].ToString();
            }
            #endregion

            #region Special Items Html Helper
            DataTable     dtSpecialItems    = dsSpecialItems.Tables[1];
            int           nosOfSpecialItems = dtSpecialItems.Rows.Count;
            StringBuilder specialContent    = new StringBuilder();

            if (dtSpecialItems != null && nosOfSpecialItems > 0)
            {
                specialContent.Append("<div class=\"cssClassSpecialBoxInfo\" id=\"divSpItem\">");
                int i = 0;
                foreach (DataRow drSpecialItem in dtSpecialItems.Rows)
                {
                    i++;
                    string imagePath    = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + drSpecialItem["ImagePath"];
                    string altImagePath = "";
                    if (string.IsNullOrEmpty(drSpecialItem["ImagePath"].ToString()))
                    {
                        imagePath = DefaultImagePath;
                    }
                    else
                    {
                        //Resize Image Dynamically
                        InterceptImageController.ImageBuilder(drSpecialItem["ImagePath"].ToString(), ImageType.Medium, ImageCategoryType.Item, aspxCommonObj);
                    }
                    if (string.IsNullOrEmpty(drSpecialItem["ImagePath"].ToString()))
                    {
                        altImagePath = imagePath;
                    }
                    string itemPrice      = Convert.ToDecimal(drSpecialItem["Price"].ToString()).ToString("N2");
                    string itemPriceValue = drSpecialItem["Price"].ToString();
                    string itemPriceRate  = Convert.ToDecimal(drSpecialItem["Price"].ToString()).ToString("N2");

                    if (i % NoOfItemInRow == 0)
                    {
                        specialContent.Append("<div class=\"cssClassProductsBox cssClassNoMargin\">");
                    }
                    else
                    {
                        specialContent.Append("<div class=\"cssClassProductsBox\">");
                    }
                    var hrefItem = aspxRedirectPath + "item/" + fixedEncodeURIComponent(drSpecialItem["SKU"].ToString()) + pageExtension;
                    specialContent.Append("<div id=\"productImageWrapID_");
                    specialContent.Append(drSpecialItem["ItemID"]);
                    specialContent.Append("\" class=\"cssClassProductsBoxInfo\" costvariantItem=");
                    specialContent.Append(drSpecialItem["CostVariants"]);
                    specialContent.Append("  itemid=\"");
                    specialContent.Append(drSpecialItem["ItemID"]);
                    specialContent.Append("\">");
                    specialContent.Append("<h3>");
                    specialContent.Append(drSpecialItem["SKU"]);
                    specialContent.Append("</h3><div class=\"divQuickLookonHover\"><div class=\"divitemImage cssClassProductPicture\"><a href=\"");
                    specialContent.Append(hrefItem);
                    specialContent.Append("\" ><img id=\"img_");
                    specialContent.Append(drSpecialItem["ItemID"]);
                    specialContent.Append("\"  alt=\"");
                    specialContent.Append(drSpecialItem["Name"]);
                    specialContent.Append("\"  title=\"");
                    specialContent.Append(drSpecialItem["Name"]);
                    specialContent.Append("\"");
                    specialContent.Append("src=\"");
                    specialContent.Append(aspxRootPath);
                    specialContent.Append(imagePath.Replace("uploads", "uploads/Medium"));
                    specialContent.Append("\" orignalPath=\"");
                    specialContent.Append(imagePath.Replace("uploads", "uploads/Medium"));
                    specialContent.Append("\" altImagePath=\"");
                    specialContent.Append(altImagePath.Replace("uploads", "uploads/Medium"));
                    specialContent.Append("\"/></a></div>");
                    specialContent.Append("<div class='cssLatestItemInfo clearfix'>");
                    specialContent.Append("<h2><a href=\"");
                    specialContent.Append(hrefItem);
                    specialContent.Append("\" title=\"");
                    specialContent.Append(drSpecialItem["Name"]);
                    specialContent.Append("\">");

                    string name = string.Empty;
                    if (drSpecialItem["Name"].ToString().Length > 50)
                    {
                        name = drSpecialItem["Name"].ToString().Substring(0, 50);
                        int index = 0;
                        index = name.LastIndexOf(' ');
                        name  = name.Substring(0, index);
                        name  = name + "...";
                    }
                    else
                    {
                        name = drSpecialItem["Name"].ToString();
                    }
                    specialContent.Append(name);
                    specialContent.Append("</a></h2>");
                    StringBuilder dataContent = new StringBuilder();
                    dataContent.Append("data-class=\"addtoCart\" data-ItemTypeID=\"");
                    dataContent.Append(drSpecialItem["ItemTypeID"]);
                    dataContent.Append("\" data-type=\"button\" data-ItemID=\"");
                    dataContent.Append(drSpecialItem["ItemID"]);
                    dataContent.Append("\" data-addtocart=\"");
                    dataContent.Append("addtocart");
                    dataContent.Append(drSpecialItem["ItemID"]);
                    dataContent.Append("\" data-title=\"");
                    dataContent.Append(name);
                    dataContent.Append("\" data-onclick=\"AspxCommerce.RootFunction.AddToCartFromJS(");
                    dataContent.Append(drSpecialItem["ItemID"]);
                    dataContent.Append(",");
                    dataContent.Append(itemPriceValue);
                    dataContent.Append(",'");
                    dataContent.Append(drSpecialItem["SKU"]);
                    dataContent.Append("',");
                    dataContent.Append(1);
                    dataContent.Append(",'");
                    dataContent.Append(drSpecialItem["CostVariants"]);
                    dataContent.Append("',this);\"");

                    specialContent.Append("<div class=\"cssClassProductPriceBox\"><div class=\"cssClassProductPrice\">");

                    if (!string.IsNullOrEmpty(drSpecialItem["ListPrice"].ToString()))
                    {//Added for group type products
                        if ((int)drSpecialItem["ItemTypeID"] == 5)
                        {
                            specialContent.Append("<p class=\"cssClassProductRealPrice \">");
                            specialContent.Append(getLocale("Starting At"));
                        }
                        else
                        {
                            string strAmount = Math.Round((decimal)(drSpecialItem["ListPrice"]), 2).ToString("N2");
                            specialContent.Append("<p class=\"cssClassProductOffPrice\">");
                            specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                            specialContent.Append(strAmount);
                            specialContent.Append("</span></p><p class=\"cssClassProductRealPrice \">");
                        }
                    }
                    else
                    {
                        if ((int)drSpecialItem["ItemTypeID"] == 5)
                        {
                            specialContent.Append("<p class=\"cssClassProductRealPrice \" >");
                            specialContent.Append(getLocale("Starting At"));
                        }
                        else
                        {
                            specialContent.Append("<p class=\"cssClassProductRealPrice \" >");
                        }
                    }

                    specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                    specialContent.Append(itemPriceRate);
                    specialContent.Append("</span></p></div></div>");

                    specialContent.Append("<div class=\"cssClassProductDetail\"><p><a href=\"");
                    specialContent.Append(aspxRedirectPath);
                    specialContent.Append("item/");
                    specialContent.Append(drSpecialItem["SKU"]);
                    specialContent.Append(pageExtension);
                    specialContent.Append("\">");
                    specialContent.Append(getLocale("Details"));
                    specialContent.Append("</a></p></div>");

                    specialContent.Append("<div class=\"sfQuickLook\" style=\"display:none\">");
                    specialContent.Append("<img itemId=\"");
                    specialContent.Append(drSpecialItem["ItemID"]);
                    specialContent.Append("\" sku=\"");
                    specialContent.Append(drSpecialItem["SKU"]);
                    specialContent.Append("\" src=\"");
                    specialContent.Append(aspxTemplateFolderPath);
                    specialContent.Append("/images/QV_Button.png\" alt=\"\" rel=\"popuprel\" />");
                    specialContent.Append("</div>");
                    if (!string.IsNullOrEmpty(drSpecialItem["AttributeValues"].ToString()))
                    {
                        specialContent.Append("<div class=\"cssGridDyanamicAttr\">");
                        if (!string.IsNullOrEmpty(drSpecialItem["AttributeValues"].ToString()))
                        {
                            string[] attributeValues = drSpecialItem["AttributeValues"].ToString().Split(',');
                            foreach (string element in attributeValues)
                            {
                                string[] attributes     = element.Split('#');
                                string   attributeName  = attributes[0];
                                string   attributeValue = attributes[1];
                                int      inputType      = Int32.Parse(attributes[2]);
                                string   validationType = attributes[3];
                                specialContent.Append("<div class=\"cssDynamicAttributes\">");
                                specialContent.Append("<div class=\"cssDynamicAttributes\">");
                                specialContent.Append("<span>");
                                specialContent.Append(attributeName);
                                specialContent.Append("</span> :");
                                if (inputType == 7)
                                {
                                    specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                                }
                                else
                                {
                                    specialContent.Append("<span>");
                                }
                                specialContent.Append(attributeValue);
                                specialContent.Append("</span></div>");
                            }
                        }
                        specialContent.Append("</div>");
                    }
                    string itemSKU  = drSpecialItem["SKU"].ToString();
                    string itemName = drSpecialItem["Name"].ToString();

                    specialContent.Append("<div class=\"cssClassTMar20\">");
                    if (AllowAddToCart.ToLower() == "true")
                    {
                        if (AllowOutStockPurchase.ToLower() == "false")
                        {
                            if ((bool)drSpecialItem["IsOutOfStock"])
                            {
                                specialContent.Append("<div class=\"cssClassAddtoCard\"><div ");
                                specialContent.Append(dataContent);
                                specialContent.Append(" class=\"sfButtonwrapper cssClassOutOfStock\">");
                                specialContent.Append("<button type=\"button\"><span>");
                                specialContent.Append(getLocale("Out Of Stock"));
                                specialContent.Append("</span></button></div></div>");
                            }
                            else
                            {
                                specialContent.Append("<div class=\"cssClassAddtoCard\"><div ");
                                specialContent.Append(dataContent);
                                specialContent.Append(" class=\"sfButtonwrapper\">");
                                specialContent.Append("<label class='i-cart cssClassCartLabel cssClassGreenBtn'><button type=\"button\" class=\"addtoCart\"");
                                specialContent.Append("data-addtocart=\"");
                                specialContent.Append("addtocart");
                                specialContent.Append(drSpecialItem["ItemID"]);
                                specialContent.Append("\" title=\"");
                                specialContent.Append(itemName);
                                specialContent.Append("\" onclick=\"AspxCommerce.RootFunction.AddToCartFromJS(");
                                specialContent.Append(drSpecialItem["ItemID"]);
                                specialContent.Append(",");
                                specialContent.Append(itemPriceValue);
                                specialContent.Append(",'");
                                specialContent.Append(itemSKU);
                                specialContent.Append("',");
                                specialContent.Append(1);
                                specialContent.Append(",'");
                                specialContent.Append(drSpecialItem["CostVariants"]);
                                specialContent.Append("',this);\">");
                                specialContent.Append(getLocale("Cart +"));
                                specialContent.Append("</button></label></div></div>");
                            }
                        }
                        else
                        {
                            specialContent.Append("<div class=\"cssClassAddtoCard\"><div ");
                            specialContent.Append(dataContent);
                            specialContent.Append(" class=\"sfButtonwrapper\">");
                            specialContent.Append("<label class='i-cart cssClassCartLabel cssClassGreenBtn'><button type=\"button\" class=\"addtoCart\"");
                            specialContent.Append("data-addtocart=\"");
                            specialContent.Append("addtocart");
                            specialContent.Append(drSpecialItem["ItemID"]);
                            specialContent.Append("\" title=\"");
                            specialContent.Append(itemName);
                            specialContent.Append("\" onclick=\"AspxCommerce.RootFunction.AddToCartFromJS(");
                            specialContent.Append(drSpecialItem["ItemID"]);
                            specialContent.Append(",");
                            specialContent.Append(itemPriceValue);
                            specialContent.Append(",'");
                            specialContent.Append(itemSKU);
                            specialContent.Append("',");
                            specialContent.Append(1);
                            specialContent.Append(",'");
                            specialContent.Append(drSpecialItem["CostVariants"]);
                            specialContent.Append("',this);\">");
                            specialContent.Append(getLocale("Cart +"));
                            specialContent.Append("</button></label></div></div>");
                        }
                    }
                    if (GetCustomerID > 0 && GetUsername.ToLower() != "anonymoususer")
                    {
                        specialContent.Append("<div class=\"cssClassWishListButton\">");
                        specialContent.Append("<label class='i-wishlist cssWishListLabel cssClassDarkBtn'><button type=\"button\" id=\"addWishList\" onclick=AspxCommerce.RootFunction.CheckWishListUniqueness(");
                        specialContent.Append(drSpecialItem["ItemID"]);
                        specialContent.Append(",'");
                        specialContent.Append(drSpecialItem["SKU"]);
                        specialContent.Append("',this);><span>");
                        specialContent.Append(getLocale("Wishlist+"));
                        specialContent.Append("</span></button></label></div>");
                    }
                    else
                    {
                        specialContent.Append("<div class=\"cssClassWishListButton\">");
                        specialContent.Append("<label class='i-wishlist cssWishListLabel cssClassDarkBtn'><button type=\"button\" id=\"addWishList\" onclick=\"AspxCommerce.RootFunction.Login();\">");
                        specialContent.Append("<span>");
                        specialContent.Append(getLocale("Wishlist+"));
                        specialContent.Append("</span></button></label></div>");
                    }
                    specialContent.Append("<div class=\"cssClassWishListButton\">");
                    specialContent.Append("<input type=\"hidden\" name='itemwish' value=");
                    specialContent.Append(drSpecialItem["ItemID"]);
                    specialContent.Append(",'");
                    specialContent.Append(drSpecialItem["SKU"]);
                    specialContent.Append("',this  />");
                    specialContent.Append("</div>");
                    specialContent.Append("</div></div>");
                    specialContent.Append("</div></div>");
                    specialContent.Append("</div>");
                }

                specialContent.Append("</div>");
                if (nosOfSpecialItems > NoOfItemInRow)
                {
                    string strHtml = "<a href=\"" + aspxRedirectPath + SpecialDetailPage + pageExtension + "?id=special\">" + getLocale("View More") + "</a>";
                    divViewMoreSpecial.InnerHtml = strHtml;
                }
                ltrSpecialItems.Text = specialContent.ToString();
            }
            else
            {
                StringBuilder noSpl = new StringBuilder();
                noSpl.Append("<span class=\"cssClassNotFound\">");
                noSpl.Append(getLocale("No special item found in this store!"));
                noSpl.Append("</span>");
                divSpclBox.InnerHtml = noSpl.ToString();
                divSpclBox.Attributes.Add("class", "");
            }
            #endregion
        }
    }
    private void GetItemRssFeedContents(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string noImageUrl = string.Empty;
            StoreSettingConfig ssc = new StoreSettingConfig();
            noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                   aspxCommonObj.PortalID, aspxCommonObj.CultureName);
            string[] path = pageURL.Split('?');
            string pagepath = path[0];
            string x = HttpContext.Current.Request.ApplicationPath;
            string authority = HttpContext.Current.Request.Url.Authority;
            string pageUrl = authority + x;
                      SpecialItemsController sic = new SpecialItemsController();

            List<RssFeedItemInfo> itemRss = sic.GetItemRssFeedContents(aspxCommonObj, rssOption, count);

            if (itemRss.Count > 0)
            {
                foreach (RssFeedItemInfo rssItemData in itemRss)
                {
                    string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + rssItemData.ImagePath;
                    rssXml.WriteStartElement("item");
                    rssXml.WriteElementString("title", rssItemData.ItemName);
                    rssXml.WriteElementString("link",
                                              "http://" + pageUrl + "/item/" + rssItemData.SKU +
                                              SageFrameSettingKeys.PageExtension);
                    rssXml.WriteStartElement("description");
                    var description = "";
                    if (rssItemData.ImagePath == "")
                    {
                        imagePath = noImageUrl;
                    }
                    else
                    {
                        //Resize Image Dynamically
                        InterceptImageController.ImageBuilder(rssItemData.ImagePath, ImageType.Small, ImageCategoryType.Item, aspxCommonObj);
                    }
                    description = "<div><a href=http://" + pageUrl + "/item/" + rssItemData.SKU +
                             SageFrameSettingKeys.PageExtension + "><img src=http://" + pageUrl + "/" +
                             imagePath.Replace("uploads", "uploads/Small") + " alt=" + rssItemData.ItemName + " /> </a></div>";
                    description += "</br>" + HttpUtility.HtmlDecode(rssItemData.ShortDescription);
                    rssXml.WriteCData(description);
                    rssXml.WriteEndElement();
                    rssXml.WriteElementString("pubDate", rssItemData.AddedOn);
                    rssXml.WriteEndElement();
                }
            }
            else
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", "");
                rssXml.WriteElementString("link", "");
                rssXml.WriteStartElement("description");
                var description = "";
                description = "<div><h2><span>This store has no items listed yet!</span></h2></div>";
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteEndElement();
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
Example #10
0
    public void GetSpecialItems()
    {
        AspxCommonInfo aspxCommonObj = new AspxCommonInfo();

        aspxCommonObj.StoreID     = StoreID;
        aspxCommonObj.PortalID    = PortalID;
        aspxCommonObj.UserName    = UserName;
        aspxCommonObj.CultureName = CultureName;
        string modulePath             = this.AppRelativeTemplateSourceDirectory;
        string aspxTemplateFolderPath = ResolveUrl("~/") + "Templates/" + TemplateName;
        string aspxRootPath           = ResolveUrl("~/");

        hst = AppLocalized.getLocale(modulePath);
        string pageExtension                    = SageFrameSettingKeys.PageExtension;
        int    rowTotal                         = 0;
        SpecialItemsController  sic             = new SpecialItemsController();
        List <SpecialItemsInfo> lstSpecialItems = sic.GetSpecialItems(aspxCommonObj, NoOfSpecialItems);

        rowTotal = lstSpecialItems.Count;
        if (rowTotal > NoOfSpecialItems)
        {
            lstSpecialItems.RemoveAt(lstSpecialItems.Count - 1);
        }
        StringBuilder specialContent = new StringBuilder();

        if (lstSpecialItems != null && lstSpecialItems.Count > 0)
        {
            specialContent.Append("<div class=\"cssClassSpecialBoxInfo\" id=\"divSpItem\">");
            foreach (SpecialItemsInfo item in lstSpecialItems)
            {
                string imagePath    = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + item.ImagePath;
                string altImagePath = "";// "Modules/AspxCommerce/AspxItemsManagement/uploads/" + item.AlternateImagePath;
                if (item.ImagePath == "")
                {
                    imagePath = DefaultImagePath;
                }
                else
                {
                    //Resize Image Dynamically
                    InterceptImageController.ImageBuilder(item.ImagePath, ImageType.Medium, ImageCategoryType.Item, aspxCommonObj);
                }
                if (item.AlternateText == "")
                {
                    item.AlternateText = item.Name;
                }
                if (item.ImagePath == "")
                {
                    altImagePath = imagePath;
                }
                string itemPrice      = Math.Round(double.Parse((item.Price).ToString()), 2).ToString("N2");
                string itemPriceValue = Math.Round(double.Parse((item.Price).ToString()), 2).ToString();
                string itemPriceRate  = Math.Round(double.Parse((item.Price).ToString()), 2).ToString("N2");

                if ((lstSpecialItems.IndexOf(item) + 1) % NoOfItemInRow == 0)
                {
                    specialContent.Append("<div class=\"cssClassProductsBox cssClassNoMargin\">");
                }
                else
                {
                    specialContent.Append("<div class=\"cssClassProductsBox\">");
                }
                var hrefItem = aspxRedirectPath + "item/" + fixedEncodeURIComponent(item.SKU) + pageExtension;
                specialContent.Append("<div id=\"productImageWrapID_");
                specialContent.Append(item.ItemID);
                specialContent.Append("\" class=\"cssClassProductsBoxInfo\" costvariantItem=");
                specialContent.Append(item.CostVariants);
                specialContent.Append("  itemid=\"");
                specialContent.Append(item.ItemID);
                specialContent.Append("\">");
                specialContent.Append("<h3>");
                specialContent.Append(item.SKU);
                specialContent.Append("</h3><div class=\"divQuickLookonHover\"><div class=\"divitemImage cssClassProductPicture\"><a href=\"");
                specialContent.Append(hrefItem);
                specialContent.Append("\" ><img id=\"img_");
                specialContent.Append(item.ItemID);
                specialContent.Append("\"  alt=\"");
                specialContent.Append(item.AlternateText);
                specialContent.Append("\"  title=\"");
                specialContent.Append(item.AlternateText);
                specialContent.Append("\"");
                specialContent.Append("src=\"");
                specialContent.Append(aspxRootPath);
                specialContent.Append(imagePath.Replace("uploads", "uploads/Medium"));
                specialContent.Append("\" orignalPath=\"");
                specialContent.Append(imagePath.Replace("uploads", "uploads/Medium"));
                specialContent.Append("\" altImagePath=\"");
                specialContent.Append(altImagePath.Replace("uploads", "uploads/Medium"));
                specialContent.Append("\"/></a></div>");
                specialContent.Append("<div class='cssLatestItemInfo clearfix'>");
                specialContent.Append("<h2><a href=\"");
                specialContent.Append(hrefItem);
                specialContent.Append("\" title=\"" + item.Name + "\">");

                string name = string.Empty;
                if (item.Name.Length > 50)
                {
                    name = item.Name.Substring(0, 50);
                    int index = 0;
                    index = name.LastIndexOf(' ');
                    name  = name.Substring(0, index);
                    name  = name + "...";
                }
                else
                {
                    name = item.Name;
                }
                specialContent.Append(name);
                specialContent.Append("</a></h2>");
                StringBuilder dataContent = new StringBuilder();
                dataContent.Append("data-class=\"addtoCart\" data-ItemTypeID=\"" + item.ItemTypeID + "\" data-type=\"button\" data-ItemID=\"" + item.ItemID + "\" data-addtocart=\"");
                dataContent.Append("addtocart");
                dataContent.Append(item.ItemID);
                dataContent.Append("\" data-title=\"");
                dataContent.Append(name);
                dataContent.Append("\" data-onclick=\"AspxCommerce.RootFunction.AddToCartFromJS(");
                dataContent.Append(item.ItemID);
                dataContent.Append(",");
                dataContent.Append(itemPriceValue);
                dataContent.Append(",'");
                dataContent.Append(item.SKU);
                dataContent.Append("',");
                dataContent.Append(1);
                dataContent.Append(",'");
                dataContent.Append(item.CostVariants);
                dataContent.Append("',this);\"");
                if (item.HidePrice != true)
                {
                    if (item.ListPrice != null)
                    {//Added for group type products
                        if (item.ItemTypeID == 5)
                        {
                            specialContent.Append("<div class=\"cssClassProductPriceBox\"><div class=\"cssClassProductPrice\">");
                            specialContent.Append("<p class=\"cssClassProductRealPrice \">");
                            specialContent.Append(getLocale("Starting At"));
                            specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                            specialContent.Append(itemPriceRate);
                            specialContent.Append("</span></p></div></div>");
                        }
                        else
                        {
                            string strAmount = Math.Round((double)(item.ListPrice), 2).ToString("N2");
                            specialContent.Append("<div class=\"cssClassProductPriceBox\"><div class=\"cssClassProductPrice\">");
                            specialContent.Append("<p class=\"cssClassProductOffPrice\">");
                            specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                            specialContent.Append(strAmount);
                            specialContent.Append("</span></p><p class=\"cssClassProductRealPrice \">");
                            specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                            specialContent.Append(itemPriceRate);
                            specialContent.Append("</span></p></div></div>");
                        }
                    }
                    else
                    {
                        if (item.ItemTypeID == 5)
                        {
                            specialContent.Append("<div class=\"cssClassProductPriceBox\"><div class=\"cssClassProductPrice\">");
                            specialContent.Append("<p class=\"cssClassProductRealPrice \" >");
                            specialContent.Append(getLocale("Starting At"));
                            specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                            specialContent.Append(itemPriceRate);
                            specialContent.Append("</span></p></div></div>");
                        }
                        else
                        {
                            specialContent.Append("<div class=\"cssClassProductPriceBox\"><div class=\"cssClassProductPrice\">");
                            specialContent.Append("<p class=\"cssClassProductRealPrice \" >");
                            specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                            specialContent.Append(itemPriceRate);
                            specialContent.Append("</span></p></div></div>");
                        }
                    }
                }
                else
                {
                    specialContent.Append("<div class=\"cssClassProductPriceBox\"></div>");
                }

                specialContent.Append("<div class=\"cssClassProductDetail\"><p><a href=\"");
                specialContent.Append(aspxRedirectPath);
                specialContent.Append("item/");
                specialContent.Append(item.SKU);
                specialContent.Append(pageExtension);
                specialContent.Append("\">");
                specialContent.Append(getLocale("Details"));
                specialContent.Append("</a></p></div>");

                specialContent.Append("<div class=\"sfQuickLook\" style=\"display:none\">");
                specialContent.Append("<img itemId=\"");
                specialContent.Append(item.ItemID);
                specialContent.Append("\" sku=\"");
                specialContent.Append(item.SKU);
                specialContent.Append("\" src=\"");
                specialContent.Append(aspxTemplateFolderPath);
                specialContent.Append("/images/QV_Button.png\" alt=\"\" rel=\"popuprel\" />");
                specialContent.Append("</div>");
                if (item.AttributeValues != null)
                {
                    if (item.AttributeValues != "")
                    {
                        specialContent.Append("<div class=\"cssGridDyanamicAttr\">");
                        string[] attributeValues = item.AttributeValues.Split(',');
                        foreach (string element in attributeValues)
                        {
                            string[] attributes     = element.Split('#');
                            string   attributeName  = attributes[0];
                            string   attributeValue = attributes[1];
                            int      inputType      = Int32.Parse(attributes[2]);
                            string   validationType = attributes[3];
                            specialContent.Append("<div class=\"cssDynamicAttributes\">");
                            specialContent.Append("<div class=\"cssDynamicAttributes\">");
                            specialContent.Append("<span>");
                            specialContent.Append(attributeName);
                            specialContent.Append("</span> :");
                            if (inputType == 7)
                            {
                                specialContent.Append("<span class=\"cssClassFormatCurrency\">");
                            }
                            else
                            {
                                specialContent.Append("<span>");
                            }
                            specialContent.Append(attributeValue);
                            specialContent.Append("</span></div>");
                        }
                        specialContent.Append("</div>");
                    }
                }
                string itemSKU  = item.SKU;
                string itemName = item.Name;

                specialContent.Append("<div class=\"cssClassTMar20\">");
                if (AllowAddToCart.ToLower() == "true")
                {
                    if (AllowOutStockPurchase.ToLower() == "false")
                    {
                        if (item.IsOutOfStock == true)
                        {
                            specialContent.Append("<div class=\"cssClassAddtoCard\"><div " + dataContent + " class=\"sfButtonwrapper cssClassOutOfStock\">");
                            specialContent.Append("<button type=\"button\"><span>");
                            specialContent.Append(getLocale("Out Of Stock"));
                            specialContent.Append("</span></button></div></div>");
                        }
                        else
                        {
                            specialContent.Append("<div class=\"cssClassAddtoCard\"><div " + dataContent + " class=\"sfButtonwrapper\">");
                            specialContent.Append("<label class='i-cart cssClassCartLabel cssClassGreenBtn'><button type=\"button\" class=\"addtoCart\"");
                            specialContent.Append("data-addtocart=\"");
                            specialContent.Append("addtocart");
                            specialContent.Append(item.ItemID);
                            specialContent.Append("\" title=\"");
                            specialContent.Append(itemName);
                            specialContent.Append("\" onclick=\"AspxCommerce.RootFunction.AddToCartFromJS(");
                            specialContent.Append(item.ItemID);
                            specialContent.Append(",");
                            specialContent.Append(itemPriceValue);
                            specialContent.Append(",'");
                            specialContent.Append(itemSKU);
                            specialContent.Append("',");
                            specialContent.Append(1);
                            specialContent.Append(",'");
                            specialContent.Append(item.CostVariants);
                            specialContent.Append("',this);\">");
                            specialContent.Append(getLocale("Cart +"));
                            specialContent.Append("</button></label></div></div>");
                        }
                    }
                    else
                    {
                        specialContent.Append("<div class=\"cssClassAddtoCard\"><div " + dataContent + " class=\"sfButtonwrapper\">");
                        specialContent.Append("<label class='i-cart cssClassCartLabel cssClassGreenBtn'><button type=\"button\" class=\"addtoCart\"");
                        specialContent.Append("data-addtocart=\"");
                        specialContent.Append("addtocart");
                        specialContent.Append(item.ItemID);
                        specialContent.Append("\" title=\"");
                        specialContent.Append(itemName);
                        specialContent.Append("\" onclick=\"AspxCommerce.RootFunction.AddToCartFromJS(");
                        specialContent.Append(item.ItemID);
                        specialContent.Append(",");
                        specialContent.Append(itemPriceValue);
                        specialContent.Append(",'");
                        specialContent.Append(itemSKU);
                        specialContent.Append("',");
                        specialContent.Append(1);
                        specialContent.Append(",'");
                        specialContent.Append(item.CostVariants);
                        specialContent.Append("',this);\">");
                        specialContent.Append(getLocale("Cart +"));
                        specialContent.Append("</button></label></div></div>");
                    }
                }
                specialContent.Append("<div class=\"cssClassWishListButton\">");
                specialContent.Append("<input type=\"hidden\" name='itemwish' value=");
                specialContent.Append(item.ItemID);
                specialContent.Append(",'");
                specialContent.Append(item.SKU);
                specialContent.Append("',this  />");
                specialContent.Append("</div>");
                specialContent.Append("</div></div>");
                specialContent.Append("</div></div>");
                specialContent.Append("</div>");
            }

            specialContent.Append("</div>");
            if (rowTotal > NoOfItemInRow)
            {
                string strHtml = "<a href=\"" + aspxRedirectPath + SpecialDetailPage + pageExtension + "?id=special\">" + getLocale("View More") + "</a>";
                divViewMoreSpecial.InnerHtml = strHtml;
            }
            ltrSpecialItems.Text = specialContent.ToString();
        }
        else
        {
            StringBuilder noSpl = new StringBuilder();
            noSpl.Append("<span class=\"cssClassNotFound\">");
            noSpl.Append(getLocale("No special item found in this store!"));
            noSpl.Append("</span>");
            divSpclBox.InnerHtml = noSpl.ToString();
            divSpclBox.Attributes.Add("class", "");
        }
    }
    private void GetItemRssFeedContents(AspxCommonInfo aspxCommonObj, XmlTextWriter rssXml, string pageURL, string rssOption, int count)
    {
        try
        {
            string             noImageUrl = string.Empty;
            StoreSettingConfig ssc        = new StoreSettingConfig();
            noImageUrl = ssc.GetStoreSettingsByKey(StoreSetting.DefaultProductImageURL, aspxCommonObj.StoreID,
                                                   aspxCommonObj.PortalID, aspxCommonObj.CultureName);
            string[] path              = pageURL.Split('?');
            string   pagepath          = path[0];
            string   x                 = HttpContext.Current.Request.ApplicationPath;
            string   authority         = HttpContext.Current.Request.Url.Authority;
            string   pageUrl           = authority + x;
            SpecialItemsController sic = new SpecialItemsController();

            List <RssFeedItemInfo> itemRss = sic.GetItemRssFeedContents(aspxCommonObj, rssOption, count);

            if (itemRss.Count > 0)
            {
                foreach (RssFeedItemInfo rssItemData in itemRss)
                {
                    string imagePath = "Modules/AspxCommerce/AspxItemsManagement/uploads/" + rssItemData.ImagePath;
                    rssXml.WriteStartElement("item");
                    rssXml.WriteElementString("title", rssItemData.ItemName);
                    rssXml.WriteElementString("link",
                                              "http://" + pageUrl + "/item/" + rssItemData.SKU +
                                              SageFrameSettingKeys.PageExtension);
                    rssXml.WriteStartElement("description");
                    var description = "";
                    if (rssItemData.ImagePath == "")
                    {
                        imagePath = noImageUrl;
                    }
                    else
                    {
                        //Resize Image Dynamically
                        InterceptImageController.ImageBuilder(rssItemData.ImagePath, ImageType.Small, ImageCategoryType.Item, aspxCommonObj);
                    }
                    description = "<div><a href=http://" + pageUrl + "/item/" + rssItemData.SKU +
                                  SageFrameSettingKeys.PageExtension + "><img src=http://" + pageUrl + "/" +
                                  imagePath.Replace("uploads", "uploads/Small") + " alt=" + rssItemData.ItemName + " /> </a></div>";
                    description += "</br>" + HttpUtility.HtmlDecode(rssItemData.ShortDescription);
                    rssXml.WriteCData(description);
                    rssXml.WriteEndElement();
                    rssXml.WriteElementString("pubDate", rssItemData.AddedOn);
                    rssXml.WriteEndElement();
                }
            }
            else
            {
                rssXml.WriteStartElement("item");
                rssXml.WriteElementString("title", "");
                rssXml.WriteElementString("link", "");
                rssXml.WriteStartElement("description");
                var description = "";
                description = "<div><h2><span>This store has no items listed yet!</span></h2></div>";
                rssXml.WriteCData(description);
                rssXml.WriteEndElement();
                rssXml.WriteEndElement();
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }