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)); }
/// <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)); }
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)); }
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)); }
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)); }