/// <summary> /// Set enabled of child items /// </summary> /// <param name="parentItem"></param> private void SetChildMenuItemsEnabled(MenuItem parentItem) { parentItem.Enabled = RoleAccess.Check(CurrentCustomer, parentItem.NavigateUrl.ToLower()) && (!modules.ContainsKey(parentItem.Value) || modules[parentItem.Value]); foreach (MenuItem item in parentItem.ChildItems) { SetChildMenuItemsEnabled(item); } }
protected void Page_LoadComplete(object sender, EventArgs e) { if (CustomerContext.CurrentCustomer.CustomerRole == Role.Administrator || (CustomerContext.CurrentCustomer.CustomerRole == Role.Moderator && RoleAccess.Check(CustomerContext.CurrentCustomer, "product.aspx"))) { hrefAdmin.Visible = true; } GetOffer(); }
public bool Authorize(HttpContext context) { if (CustomerContext.CurrentCustomer.IsAdmin || CustomerContext.CurrentCustomer.CustomerRole == Role.Moderator && RoleAccess.Check(CustomerContext.CurrentCustomer, context.Request.Url.ToString().ToLower()) || CustomerContext.CurrentCustomer.IsVirtual || Trial.TrialService.IsTrialEnabled) { return(true); } context.Response.Clear(); context.Response.StatusCode = 403; context.Response.Status = "403 Forbidden"; return(false); }
protected override void Render(HtmlTextWriter writer) { var modules = Core.AdvantshopConfigService.GetActivityModules(); writer.AddAttribute(HtmlTextWriterAttribute.Id, "myslidemenu"); writer.AddAttribute(HtmlTextWriterAttribute.Class, "jqueryslidemenu"); writer.RenderBeginTag(HtmlTextWriterTag.Div); writer.RenderBeginTag(HtmlTextWriterTag.Ul); int i = 1; foreach (MenuItem parent in this.Items) { try //Added by Evgeni to catch module exception { if (parent.Value == @"modules") { var addingModules = new MenuItem { Text = Resources.Resource.Admin_ModuleManager_Header, NavigateUrl = "modulesmanager.aspx" }; parent.ChildItems.Add(addingModules); var mdls = (from m in AttachedModules.GetModules(AttachedModules.EModuleType.All) orderby((IModule)Activator.CreateInstance(m, null)).ModuleName select m); foreach (var type in mdls) { var addingModule = ((IModule)Activator.CreateInstance(type, null)); if (addingModule.CheckAlive()) { addingModules.ChildItems.Add(new MenuItem { Text = addingModule.ModuleName, NavigateUrl = "module.aspx?module=" + addingModule.ModuleStringId }); } } } } catch { } bool visible = RoleAccess.Check(CurrentCustomer, parent.NavigateUrl.ToLower()) && (!modules.ContainsKey(parent.Value) || modules[parent.Value]); writer.AddAttribute(HtmlTextWriterAttribute.Class, "m-main-item MenuHorizontalItem" + i + (!visible ? " m-hide" : "m-item")); //writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "location='" + RouteService.GetAdminAbsoluteLink(parent.NavigateUrl) + "'"); writer.RenderBeginTag(HtmlTextWriterTag.Li); writer.AddAttribute(HtmlTextWriterAttribute.Href, UrlService.GetAdminAbsoluteLink(parent.NavigateUrl)); writer.AddAttribute(HtmlTextWriterAttribute.Class, "LinkMNImg"); writer.RenderBeginTag(HtmlTextWriterTag.A); writer.AddAttribute(HtmlTextWriterAttribute.Class, "MenuHorizontalItem" + i + "Img"); writer.AddAttribute(HtmlTextWriterAttribute.Src, parent.ImageUrl); writer.RenderBeginTag(HtmlTextWriterTag.Img); writer.RenderEndTag(); // a - parent menuitem writer.RenderEndTag(); // a writer.AddAttribute(HtmlTextWriterAttribute.Class, "LinkMenuHorizontal LinkMH" + i); writer.AddAttribute(HtmlTextWriterAttribute.Href, (visible ? UrlService.GetAdminAbsoluteLink(parent.NavigateUrl) : "#")); writer.RenderBeginTag(HtmlTextWriterTag.A); writer.WriteLine(parent.Text); writer.RenderEndTag(); // a if (parent.ChildItems.Count > 0) { writer.AddAttribute(HtmlTextWriterAttribute.Class, "SubMenu" + i); writer.RenderBeginTag(HtmlTextWriterTag.Ul); foreach (MenuItem item in parent.ChildItems) { visible = RoleAccess.Check(CurrentCustomer, item.NavigateUrl.ToLower()) && (!modules.ContainsKey(item.Value) || modules[item.Value]); writer.AddAttribute(HtmlTextWriterAttribute.Class, (!visible ? "m-hide" : "m-item")); writer.RenderBeginTag(HtmlTextWriterTag.Li); writer.AddAttribute(HtmlTextWriterAttribute.Href, (visible ? UrlService.GetAdminAbsoluteLink(item.NavigateUrl) : "#")); writer.RenderBeginTag(HtmlTextWriterTag.A); writer.WriteLine(item.Text); writer.RenderEndTag(); //a if (item.ChildItems.Count > 0) { writer.RenderBeginTag(HtmlTextWriterTag.Ul); foreach (MenuItem subItem in item.ChildItems) { visible = RoleAccess.Check(CurrentCustomer, subItem.NavigateUrl.ToLower()) && (!modules.ContainsKey(subItem.Value) || modules[subItem.Value]); writer.AddAttribute(HtmlTextWriterAttribute.Class, (!visible ? "m-hide" : "m-item")); writer.RenderBeginTag(HtmlTextWriterTag.Li); writer.AddAttribute(HtmlTextWriterAttribute.Href, (visible ? UrlService.GetAdminAbsoluteLink(subItem.NavigateUrl) : "#")); writer.RenderBeginTag(HtmlTextWriterTag.A); writer.WriteLine(subItem.Text); writer.RenderEndTag(); //a writer.RenderEndTag(); //li } writer.RenderEndTag(); //ul } writer.RenderEndTag(); //li } writer.RenderEndTag(); //ul } writer.RenderEndTag(); // li i++; } writer.RenderEndTag(); //ul writer.RenderEndTag(); //div }