Esempio n. 1
0
        public IEncodedString EditUrl(int itemid, NBrightRazor model, String ctrl = "products")
        {
            var entryid = itemid;
            var url     = "Unable to find BackOffice Setting, go into Back Office settings and save.";

            if (Utils.IsNumeric(entryid) && StoreSettings.Current.GetInt("backofficetabid") > 0)
            {
                var param = new List <String>();

                param.Add("eid=" + entryid.ToString(""));
                param.Add("ctrl=" + ctrl);
                param.Add("rtntab=" + PortalSettings.Current.ActiveTab.TabID.ToString());
                if (model.GetSetting("moduleid") != "")
                {
                    param.Add("rtnmid=" + model.GetSetting("moduleid").Trim());
                }
                if (model.GetUrlParam("page") != "")
                {
                    param.Add("PageIndex=" + model.GetUrlParam("page").Trim());
                }
                if (model.GetUrlParam("catid") != "")
                {
                    param.Add("catid=" + model.GetUrlParam("catid").Trim());
                }

                var paramlist = new string[param.Count];
                for (int lp = 0; lp < param.Count; lp++)
                {
                    paramlist[lp] = param[lp];
                }

                url = Globals.NavigateURL(StoreSettings.Current.GetInt("backofficetabid"), "", paramlist);
            }
            return(new RawString(url));
        }
Esempio n. 2
0
        /// <summary>
        /// Display a page size option on the product list module.
        /// </summary>
        /// <param name="datatext"></param>
        /// <param name="model"></param>
        /// <param name="attributes"></param>
        /// <returns></returns>
        public IEncodedString PageSizeDropDownList(String datatext, NBrightRazor model, String cssclass = "")
        {
            if (datatext.StartsWith("ResourceKey:"))
            {
                datatext = ResourceKey(datatext.Replace("ResourceKey:", "")).ToString();
            }

            var navigationdata = new NavigationData(PortalSettings.Current.PortalId, model.ModuleRef);

            if (navigationdata.PageSize == "")
            {
                navigationdata.PageSize = model.GetSetting("pagesize");
            }

            var strOut = "";
            var datat  = datatext.Split(',');

            strOut = "<select class='pagesizedropdown" + model.ModuleRef + " " + cssclass + " '>";
            var c = 0;
            var s = "";

            foreach (var t in datat)
            {
                var url   = "";
                var param = new List <String>();
                if (model.GetUrlParam("pagemid") != "")
                {
                    param.Add("pagemid=" + model.ModuleId.ToString("D"));
                }
                if (model.GetUrlParam("catid") != "")
                {
                    param.Add("catid=" + model.GetUrlParam("catid").Trim());
                }
                param.Add("pagesize=" + t);
                var paramlist = new string[param.Count];
                for (int lp = 0; lp < param.Count; lp++)
                {
                    paramlist[lp] = param[lp];
                }

                url = Globals.NavigateURL(PortalSettings.Current.ActiveTab.TabID, "", paramlist);

                s = "";
                if (t == navigationdata.PageSize)
                {
                    s = "selected";
                }

                strOut += "    <option value='" + t + "' " + s + " selectedurl='" + url + "' >" + t + "</option>";
                c      += 1;
            }
            strOut += "</select>";

            strOut += "<script>";
            strOut += "$('.pagesizedropdown" + model.ModuleRef + "').change(function () { window.location.replace($('option:selected', this).attr('selectedurl')); });";
            strOut += "</script>";

            return(new RawString(strOut));
        }
Esempio n. 3
0
        public IEncodedString EntryUrl(NBrightInfo info, NBrightRazor model, Boolean relative = true, String categoryref = "")
        {
            var url = "";

            try
            {
                var navigationdata = new NavigationData(PortalSettings.Current.PortalId, model.GetSetting("modref"));

                var urlname = info.GetXmlProperty("genxml/lang/genxml/textbox/txtseoname");
                if (urlname == "")
                {
                    urlname = info.GetXmlProperty("genxml/lang/genxml/textbox/txtproductname");
                }

                // see if we've injected a categoryid into the data class, this is done in the case of the categorymenu when displaying products.
                var categoryid = info.GetXmlProperty("genxml/categoryid");
                if (categoryid == "")
                {
                    categoryid = navigationdata.CategoryId.ToString();
                }
                if (categoryid == "0")
                {
                    categoryid = "";                    // no category active if zero
                }
                var eid = info.ItemID.ToString() != "0" ? info.ItemID.ToString() : info.GetXmlProperty("genxml/productid");

                url = NBrightBuyUtils.GetEntryUrl(PortalSettings.Current.PortalId, eid, model.GetSetting("detailmodulekey"), urlname, model.GetSetting("ddldetailtabid"), categoryid, categoryref);
                if (relative)
                {
                    url = Utils.GetRelativeUrl(url);
                }
            }
            catch (Exception ex)
            {
                url = ex.ToString();
            }

            return(new RawString(url));
        }
Esempio n. 4
0
        public IEncodedString CategoryBreadCrumb(Boolean includelinks, NBrightRazor model, Boolean aslist = true, int tabRedirect = -1, String separator = "", int wordlength = -1, int maxlength = 400)
        {
            var strOut = "";

            try
            {
                var catid = 0;
                if (model.GetUrlParam("eid") != "")
                {
                    // looking at detail, so use product categoryid
                    if (model.List.Any())
                    {
                        var product = (ProductData)model.List.First();
                        var catgrp  = product.GetDefaultCategory();
                        catid = catgrp != null ? catgrp.categoryid : 0;
                    }
                }
                else
                {
                    var navigationdata = new NavigationData(PortalSettings.Current.PortalId, model.GetSetting("modref"));
                    catid = navigationdata.CategoryId;
                }

                if (catid <= 0) // check we have a catid
                {
                    return(new RawString(""));;
                }

                var grpCatCtrl = new GrpCatController(Utils.GetCurrentCulture());
                var objCInfo   = grpCatCtrl.GetGrpCategory(catid);
                if (objCInfo != null)
                {
                    if (includelinks)
                    {
                        if (tabRedirect == 0)
                        {
                            tabRedirect = PortalSettings.Current.ActiveTab.TabID;
                        }
                        if (tabRedirect == -1)
                        {
                            tabRedirect = StoreSettings.Current.ProductListTabId;
                        }
                        strOut = grpCatCtrl.GetBreadCrumbWithLinks(catid, tabRedirect, wordlength, separator, aslist);
                    }
                    else
                    {
                        strOut = grpCatCtrl.GetBreadCrumb(catid, wordlength, separator, aslist);
                    }

                    if ((strOut.Length > maxlength) && (!aslist))
                    {
                        strOut = strOut.Substring(0, (maxlength - 3)) + "...";
                    }
                }
            }
            catch (Exception ex)
            {
                strOut = ex.ToString();
            }


            return(new RawString(strOut));
        }
Esempio n. 5
0
        public IEncodedString Category(String fieldname, NBrightRazor model)
        {
            var strOut = "";

            try
            {
                var navigationdata = new NavigationData(PortalSettings.Current.PortalId, model.GetSetting("modref"));

                // if we have no catid in url, we're going to need a default category from module.
                var grpCatCtrl = new GrpCatController(Utils.GetCurrentCulture());
                var objCInfo   = grpCatCtrl.GetGrpCategory(navigationdata.CategoryId);
                if (objCInfo != null)
                {
                    GroupCategoryData objPcat;
                    switch (fieldname.ToLower())
                    {
                    case "categorydesc":
                        strOut = objCInfo.categorydesc;
                        break;

                    case "message":
                        strOut = System.Web.HttpUtility.HtmlDecode(objCInfo.message);
                        break;

                    case "archived":
                        strOut = objCInfo.archived.ToString(CultureInfo.InvariantCulture);
                        break;

                    case "breadcrumb":
                        strOut = objCInfo.breadcrumb;
                        break;

                    case "categoryid":
                        strOut = objCInfo.categoryid.ToString("");
                        break;

                    case "categoryname":
                        strOut = objCInfo.categoryname;
                        break;

                    case "categoryref":
                        strOut = objCInfo.categoryref;
                        break;

                    case "depth":
                        strOut = objCInfo.depth.ToString("");
                        break;

                    case "disabled":
                        strOut = objCInfo.disabled.ToString(CultureInfo.InvariantCulture);
                        break;

                    case "entrycount":
                        strOut = objCInfo.entrycount.ToString("");
                        break;

                    case "grouptyperef":
                        strOut = objCInfo.grouptyperef;
                        break;

                    case "attributecode":
                        strOut = objCInfo.attributecode;
                        break;

                    case "imageurl":
                        strOut = objCInfo.imageurl;
                        break;

                    case "ishidden":
                        strOut = objCInfo.ishidden.ToString(CultureInfo.InvariantCulture);
                        break;

                    case "isvisible":
                        strOut = objCInfo.isvisible.ToString(CultureInfo.InvariantCulture);
                        break;

                    case "metadescription":
                        strOut = objCInfo.metadescription;
                        break;

                    case "metakeywords":
                        strOut = objCInfo.metakeywords;
                        break;

                    case "parentcatid":
                        strOut = objCInfo.parentcatid.ToString("");
                        break;

                    case "parentcategoryname":
                        objPcat = grpCatCtrl.GetCategory(objCInfo.parentcatid);
                        strOut  = objPcat.categoryname;
                        break;

                    case "parentcategoryref":
                        objPcat = grpCatCtrl.GetCategory(objCInfo.parentcatid);
                        strOut  = objPcat.categoryref;
                        break;

                    case "parentcategorydesc":
                        objPcat = grpCatCtrl.GetCategory(objCInfo.parentcatid);
                        strOut  = objPcat.categorydesc;
                        break;

                    case "parentcategorybreadcrumb":
                        objPcat = grpCatCtrl.GetCategory(objCInfo.parentcatid);
                        strOut  = objPcat.breadcrumb;
                        break;

                    case "parentcategoryguidkey":
                        objPcat = grpCatCtrl.GetCategory(objCInfo.parentcatid);
                        strOut  = objPcat.categoryrefGUIDKey;
                        break;

                    case "recordsortorder":
                        strOut = objCInfo.recordsortorder.ToString("");
                        break;

                    case "seoname":
                        strOut = objCInfo.seoname;
                        if (strOut == "")
                        {
                            strOut = objCInfo.categoryname;
                        }
                        break;

                    case "seopagetitle":
                        strOut = objCInfo.seopagetitle;
                        break;

                    case "url":
                        strOut = objCInfo.url;
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                strOut = ex.ToString();
            }

            return(new RawString(strOut));
        }