public virtual void Init( MvcContext ctx ) { if (ctx.utils.isEnd()) return; if (strUtil.IsNullOrEmpty( ctx.route.ownerType )) return; IMember owner = InitHelperFactory.GetHelper( ctx ).getOwnerByUrl( ctx ); if (owner == null || owner.Status == MemberStatus.Deleted || owner.Status == MemberStatus.Approving) { ctx.utils.endMsg( "owner not found (" + lang.get( "exUser" ) + " )", HttpStatus.NotFound_404 ); return; } // 检查空间是否禁用 if (spaceStopped( ctx, owner )) { ctx.utils.endMsg( "对不起,用户空间已停用", HttpStatus.NotFound_404 ); return; } // 检查群组是否禁用 if (owner.GetType() == typeof( Group ) && Component.IsEnableGroup() == false) { ctx.utils.endMsg( "对不起,群组功能已停用", HttpStatus.NotFound_404 ); return; } OwnerContext context = new OwnerContext(); context.Id = owner.Id; context.obj = owner; ctx.utils.setOwnerContext( context ); this.updateRoute_ByOwnerMenus( ctx, owner ); initEditorUploadPath( ctx ); // 如果是登录用户,则设置编辑的上传路径 }
public virtual void RenderMenuItem (HtmlTextWriter writer, MenuItem item, bool notLast, bool isFirst) { var oc = new OwnerContext (this); RenderMenuItem (writer, item, oc.IsVertical, notLast, isFirst, oc); }
protected override void RenderMenuItem (HtmlTextWriter writer, MenuItem item, bool vertical, bool notLast, bool isFirst, OwnerContext oc) { Menu owner = Owner; string clientID = oc.ClientID; bool displayChildren = owner.DisplayChildren (item); bool dynamicChildren = displayChildren && (item.Depth + 1 >= oc.StaticDisplayLevels); bool isDynamicItem = IsDynamicItem (owner, item); bool isVertical = oc.IsVertical || isDynamicItem; Unit itemSpacing = owner.GetItemSpacing (item, isDynamicItem); if (itemSpacing != Unit.Empty && (item.Depth > 0 || !isFirst)) RenderMenuItemSpacing (writer, itemSpacing, isVertical); if(!String.IsNullOrEmpty(item.ToolTip)) writer.AddAttribute (HtmlTextWriterAttribute.Title, item.ToolTip); if (isVertical) writer.RenderBeginTag (HtmlTextWriterTag.Tr); string parentId = isDynamicItem ? "'" + item.Parent.Path + "'" : "null"; if (dynamicChildren) { writer.AddAttribute ("onmouseover", "javascript:Menu_OverItem ('" + clientID + "','" + item.Path + "'," + parentId + ")"); writer.AddAttribute ("onmouseout", "javascript:Menu_OutItem ('" + clientID + "','" + item.Path + "')"); } else if (isDynamicItem) { writer.AddAttribute ("onmouseover", "javascript:Menu_OverDynamicLeafItem ('" + clientID + "','" + item.Path + "'," + parentId + ")"); writer.AddAttribute ("onmouseout", "javascript:Menu_OutItem ('" + clientID + "','" + item.Path + "'," + parentId + ")"); } else { writer.AddAttribute ("onmouseover", "javascript:Menu_OverStaticLeafItem ('" + clientID + "','" + item.Path + "')"); writer.AddAttribute ("onmouseout", "javascript:Menu_OutItem ('" + clientID + "','" + item.Path + "')"); } writer.RenderBeginTag (HtmlTextWriterTag.Td); // Top separator image if (isDynamicItem) RenderSeparatorImage (owner, writer, oc.DynamicTopSeparatorImageUrl, false); else RenderSeparatorImage (owner, writer, oc.StaticTopSeparatorImageUrl, false); // Menu item box MenuItemStyle style = new MenuItemStyle (); if (oc.Header != null) { // styles are registered if (!isDynamicItem && oc.StaticMenuItemStyle != null) { AddCssClass (style, oc.StaticMenuItemStyle.CssClass); AddCssClass (style, oc.StaticMenuItemStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicMenuItemStyle != null) { AddCssClass (style, oc.DynamicMenuItemStyle.CssClass); AddCssClass (style, oc.DynamicMenuItemStyle.RegisteredCssClass); } if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) { AddCssClass (style, oc.LevelMenuItemStyles [item.Depth].CssClass); AddCssClass (style, oc.LevelMenuItemStyles [item.Depth].RegisteredCssClass); } if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) { AddCssClass (style, oc.StaticSelectedStyle.CssClass); AddCssClass (style, oc.StaticSelectedStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicSelectedStyle != null) { AddCssClass (style, oc.DynamicSelectedStyle.CssClass); AddCssClass (style, oc.DynamicSelectedStyle.RegisteredCssClass); } if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) { AddCssClass (style, oc.LevelSelectedStyles [item.Depth].CssClass); AddCssClass (style, oc.LevelSelectedStyles [item.Depth].RegisteredCssClass); } } } else { // styles are not registered if (!isDynamicItem && oc.StaticMenuItemStyle != null) style.CopyFrom (oc.StaticMenuItemStyle); if (isDynamicItem && oc.DynamicMenuItemStyle != null) style.CopyFrom (oc.DynamicMenuItemStyle); if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) style.CopyFrom (oc.LevelMenuItemStyles [item.Depth]); if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) style.CopyFrom (oc.StaticSelectedStyle); if (isDynamicItem && oc.DynamicSelectedStyle != null) style.CopyFrom (oc.DynamicSelectedStyle); if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) style.CopyFrom (oc.LevelSelectedStyles [item.Depth]); } } style.AddAttributesToRender (writer); writer.AddAttribute ("id", GetItemClientId (clientID, item, "i")); writer.AddAttribute ("cellpadding", "0", false); writer.AddAttribute ("cellspacing", "0", false); writer.AddAttribute ("border", "0", false); writer.AddAttribute ("width", "100%", false); writer.RenderBeginTag (HtmlTextWriterTag.Table); writer.RenderBeginTag (HtmlTextWriterTag.Tr); // Menu item text if (isVertical) writer.AddStyleAttribute (HtmlTextWriterStyle.Width, "100%"); if (!owner.ItemWrap) writer.AddStyleAttribute ("white-space", "nowrap"); writer.RenderBeginTag (HtmlTextWriterTag.Td); RenderItemHref (owner, writer, item); Style linkStyle = new Style (); if (oc.Header != null) { // styles are registered AddCssClass (linkStyle, oc.ControlLinkStyle.RegisteredCssClass); if (!isDynamicItem && oc.StaticMenuItemStyle != null) { AddCssClass (linkStyle, oc.StaticMenuItemStyle.CssClass); AddCssClass (linkStyle, oc.StaticMenuItemLinkStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicMenuItemStyle != null) { AddCssClass (linkStyle, oc.DynamicMenuItemStyle.CssClass); AddCssClass (linkStyle, oc.DynamicMenuItemLinkStyle.RegisteredCssClass); } if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) { AddCssClass (linkStyle, oc.LevelMenuItemStyles [item.Depth].CssClass); AddCssClass (linkStyle, oc.LevelMenuItemLinkStyles [item.Depth].RegisteredCssClass); } if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) { AddCssClass (linkStyle, oc.StaticSelectedStyle.CssClass); AddCssClass (linkStyle, oc.StaticSelectedLinkStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicSelectedStyle != null) { AddCssClass (linkStyle, oc.DynamicSelectedStyle.CssClass); AddCssClass (linkStyle, oc.DynamicSelectedLinkStyle.RegisteredCssClass); } if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) { AddCssClass (linkStyle, oc.LevelSelectedStyles [item.Depth].CssClass); AddCssClass (linkStyle, oc.LevelSelectedLinkStyles [item.Depth].RegisteredCssClass); } } } else { // styles are not registered linkStyle.CopyFrom (oc.ControlLinkStyle); if (!isDynamicItem && oc.StaticMenuItemStyle != null) linkStyle.CopyFrom (oc.StaticMenuItemLinkStyle); if (isDynamicItem && oc.DynamicMenuItemStyle != null) linkStyle.CopyFrom (oc.DynamicMenuItemLinkStyle); if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) linkStyle.CopyFrom (oc.LevelMenuItemLinkStyles [item.Depth]); if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) linkStyle.CopyFrom (oc.StaticSelectedLinkStyle); if (isDynamicItem && oc.DynamicSelectedStyle != null) linkStyle.CopyFrom (oc.DynamicSelectedLinkStyle); if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) linkStyle.CopyFrom (oc.LevelSelectedLinkStyles [item.Depth]); } linkStyle.AlwaysRenderTextDecoration = true; } linkStyle.AddAttributesToRender (writer); writer.AddAttribute ("id", GetItemClientId (clientID, item, "l")); if (item.Depth > 0 && !isDynamicItem) { double value; Unit unit = oc.StaticSubMenuIndent; if (unit == Unit.Empty) value = 16; else value = unit.Value; Unit indent = new Unit (value * item.Depth, oc.StaticSubMenuIndent.Type); writer.AddStyleAttribute (HtmlTextWriterStyle.MarginLeft, indent.ToString ()); } writer.RenderBeginTag (HtmlTextWriterTag.A); owner.RenderItemContent (writer, item, isDynamicItem); writer.RenderEndTag (); // A writer.RenderEndTag (); // TD // Popup image if (dynamicChildren) { string popOutImage = GetPopOutImage (owner, item, isDynamicItem); if (popOutImage != null) { writer.RenderBeginTag (HtmlTextWriterTag.Td); writer.AddAttribute ("src", owner.ResolveClientUrl (popOutImage)); writer.AddAttribute ("border", "0"); string toolTip = String.Format (isDynamicItem ? oc.DynamicPopOutImageTextFormatString : oc.StaticPopOutImageTextFormatString, item.Text); writer.AddAttribute (HtmlTextWriterAttribute.Alt, toolTip); writer.RenderBeginTag (HtmlTextWriterTag.Img); writer.RenderEndTag (); // IMG writer.RenderEndTag (); // TD } } writer.RenderEndTag (); // TR writer.RenderEndTag (); // TABLE writer.RenderEndTag (); // TD if (!isVertical && itemSpacing == Unit.Empty && (notLast || (displayChildren && !dynamicChildren))) { writer.AddStyleAttribute ("width", "3px"); writer.RenderBeginTag (HtmlTextWriterTag.Td); writer.RenderEndTag (); } // Bottom separator image string separatorImg = item.SeparatorImageUrl; if (separatorImg.Length == 0) { if (isDynamicItem) separatorImg = oc.DynamicBottomSeparatorImageUrl; else separatorImg = oc.StaticBottomSeparatorImageUrl; } if (separatorImg.Length > 0) { if (!isVertical) writer.RenderBeginTag (HtmlTextWriterTag.Td); RenderSeparatorImage (owner, writer, separatorImg, false); if (!isVertical) writer.RenderEndTag (); // TD } if (isVertical) writer.RenderEndTag (); // TR if (itemSpacing != Unit.Empty) RenderMenuItemSpacing (writer, itemSpacing, isVertical); // Submenu if (displayChildren && !dynamicChildren) { if (isVertical) writer.RenderBeginTag (HtmlTextWriterTag.Tr); writer.RenderBeginTag (HtmlTextWriterTag.Td); writer.AddAttribute ("width", "100%"); owner.RenderMenu (writer, item.ChildItems, vertical, false, item.Depth + 1, notLast); if (item.Depth + 2 == oc.StaticDisplayLevels) owner.RenderDynamicMenu (writer, item.ChildItems); writer.RenderEndTag (); // TD if (isVertical) writer.RenderEndTag (); // TR } }
protected abstract void RenderMenuItem (HtmlTextWriter writer, MenuItem item, bool vertical, bool notLast, bool isFirst, OwnerContext oc);
public virtual void RenderMenuItem(HtmlTextWriter writer, MenuItem item, bool notLast, bool isFirst) { var oc = new OwnerContext(this); RenderMenuItem(writer, item, oc.IsVertical, notLast, isFirst, oc); }
public override void RenderMenuBody (HtmlTextWriter writer, MenuItemCollection items, bool vertical, bool dynamic, bool notLast) { Menu owner = Owner; if (!vertical) writer.RenderBeginTag (HtmlTextWriterTag.Tr); int count = items.Count; var oc = new OwnerContext (this); for (int n = 0; n < count; n++) { MenuItem item = items [n]; Adapters.MenuAdapter adapter = owner.Adapter as Adapters.MenuAdapter; if (adapter != null) adapter.RenderItem (writer, item, n); else RenderMenuItem (writer, item, vertical, (n + 1) == count ? notLast : true, n == 0, oc); } if (!vertical) writer.RenderEndTag (); // TR }
public OwnerService(OwnerContext dbContext, ILogger <OwnerService> logger) { _dbContext = dbContext ?? throw new ArgumentNullException(nameof(dbContext));; _logger = logger; }
protected abstract void RenderMenuItem(HtmlTextWriter writer, MenuItem item, bool vertical, bool notLast, bool isFirst, OwnerContext oc);
protected override void RenderMenuItem(HtmlTextWriter writer, MenuItem item, bool vertical, bool notLast, bool isFirst, OwnerContext oc) { Menu owner = Owner; string clientID = oc.ClientID; bool displayChildren = owner.DisplayChildren(item); bool dynamicChildren = displayChildren && (item.Depth + 1 >= oc.StaticDisplayLevels); bool isDynamicItem = IsDynamicItem(owner, item); bool isVertical = oc.IsVertical || isDynamicItem; Unit itemSpacing = owner.GetItemSpacing(item, isDynamicItem); if (itemSpacing != Unit.Empty && (item.Depth > 0 || !isFirst)) { RenderMenuItemSpacing(writer, itemSpacing, isVertical); } if (!String.IsNullOrEmpty(item.ToolTip)) { writer.AddAttribute(HtmlTextWriterAttribute.Title, item.ToolTip); } if (isVertical) { writer.RenderBeginTag(HtmlTextWriterTag.Tr); } string parentId = isDynamicItem ? "'" + item.Parent.Path + "'" : "null"; if (dynamicChildren) { writer.AddAttribute("onmouseover", "javascript:Menu_OverItem ('" + clientID + "','" + item.Path + "'," + parentId + ")"); writer.AddAttribute("onmouseout", "javascript:Menu_OutItem ('" + clientID + "','" + item.Path + "')"); } else if (isDynamicItem) { writer.AddAttribute("onmouseover", "javascript:Menu_OverDynamicLeafItem ('" + clientID + "','" + item.Path + "'," + parentId + ")"); writer.AddAttribute("onmouseout", "javascript:Menu_OutItem ('" + clientID + "','" + item.Path + "'," + parentId + ")"); } else { writer.AddAttribute("onmouseover", "javascript:Menu_OverStaticLeafItem ('" + clientID + "','" + item.Path + "')"); writer.AddAttribute("onmouseout", "javascript:Menu_OutItem ('" + clientID + "','" + item.Path + "')"); } writer.RenderBeginTag(HtmlTextWriterTag.Td); // Top separator image if (isDynamicItem) { RenderSeparatorImage(owner, writer, oc.DynamicTopSeparatorImageUrl, false); } else { RenderSeparatorImage(owner, writer, oc.StaticTopSeparatorImageUrl, false); } // Menu item box MenuItemStyle style = new MenuItemStyle(); if (oc.Header != null) { // styles are registered if (!isDynamicItem && oc.StaticMenuItemStyle != null) { AddCssClass(style, oc.StaticMenuItemStyle.CssClass); AddCssClass(style, oc.StaticMenuItemStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicMenuItemStyle != null) { AddCssClass(style, oc.DynamicMenuItemStyle.CssClass); AddCssClass(style, oc.DynamicMenuItemStyle.RegisteredCssClass); } if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) { AddCssClass(style, oc.LevelMenuItemStyles [item.Depth].CssClass); AddCssClass(style, oc.LevelMenuItemStyles [item.Depth].RegisteredCssClass); } if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) { AddCssClass(style, oc.StaticSelectedStyle.CssClass); AddCssClass(style, oc.StaticSelectedStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicSelectedStyle != null) { AddCssClass(style, oc.DynamicSelectedStyle.CssClass); AddCssClass(style, oc.DynamicSelectedStyle.RegisteredCssClass); } if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) { AddCssClass(style, oc.LevelSelectedStyles [item.Depth].CssClass); AddCssClass(style, oc.LevelSelectedStyles [item.Depth].RegisteredCssClass); } } } else { // styles are not registered if (!isDynamicItem && oc.StaticMenuItemStyle != null) { style.CopyFrom(oc.StaticMenuItemStyle); } if (isDynamicItem && oc.DynamicMenuItemStyle != null) { style.CopyFrom(oc.DynamicMenuItemStyle); } if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) { style.CopyFrom(oc.LevelMenuItemStyles [item.Depth]); } if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) { style.CopyFrom(oc.StaticSelectedStyle); } if (isDynamicItem && oc.DynamicSelectedStyle != null) { style.CopyFrom(oc.DynamicSelectedStyle); } if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) { style.CopyFrom(oc.LevelSelectedStyles [item.Depth]); } } } style.AddAttributesToRender(writer); writer.AddAttribute("id", GetItemClientId(clientID, item, "i")); writer.AddAttribute("cellpadding", "0", false); writer.AddAttribute("cellspacing", "0", false); writer.AddAttribute("border", "0", false); writer.AddAttribute("width", "100%", false); writer.RenderBeginTag(HtmlTextWriterTag.Table); writer.RenderBeginTag(HtmlTextWriterTag.Tr); // Menu item text if (isVertical) { writer.AddStyleAttribute(HtmlTextWriterStyle.Width, "100%"); } if (!owner.ItemWrap) { writer.AddStyleAttribute("white-space", "nowrap"); } writer.RenderBeginTag(HtmlTextWriterTag.Td); RenderItemHref(owner, writer, item); Style linkStyle = new Style(); if (oc.Header != null) { // styles are registered AddCssClass(linkStyle, oc.ControlLinkStyle.RegisteredCssClass); if (!isDynamicItem && oc.StaticMenuItemStyle != null) { AddCssClass(linkStyle, oc.StaticMenuItemStyle.CssClass); AddCssClass(linkStyle, oc.StaticMenuItemLinkStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicMenuItemStyle != null) { AddCssClass(linkStyle, oc.DynamicMenuItemStyle.CssClass); AddCssClass(linkStyle, oc.DynamicMenuItemLinkStyle.RegisteredCssClass); } if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) { AddCssClass(linkStyle, oc.LevelMenuItemStyles [item.Depth].CssClass); AddCssClass(linkStyle, oc.LevelMenuItemLinkStyles [item.Depth].RegisteredCssClass); } if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) { AddCssClass(linkStyle, oc.StaticSelectedStyle.CssClass); AddCssClass(linkStyle, oc.StaticSelectedLinkStyle.RegisteredCssClass); } if (isDynamicItem && oc.DynamicSelectedStyle != null) { AddCssClass(linkStyle, oc.DynamicSelectedStyle.CssClass); AddCssClass(linkStyle, oc.DynamicSelectedLinkStyle.RegisteredCssClass); } if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) { AddCssClass(linkStyle, oc.LevelSelectedStyles [item.Depth].CssClass); AddCssClass(linkStyle, oc.LevelSelectedLinkStyles [item.Depth].RegisteredCssClass); } } } else { // styles are not registered linkStyle.CopyFrom(oc.ControlLinkStyle); if (!isDynamicItem && oc.StaticMenuItemStyle != null) { linkStyle.CopyFrom(oc.StaticMenuItemLinkStyle); } if (isDynamicItem && oc.DynamicMenuItemStyle != null) { linkStyle.CopyFrom(oc.DynamicMenuItemLinkStyle); } if (oc.LevelMenuItemStyles != null && oc.LevelMenuItemStyles.Count > item.Depth) { linkStyle.CopyFrom(oc.LevelMenuItemLinkStyles [item.Depth]); } if (item == oc.SelectedItem) { if (!isDynamicItem && oc.StaticSelectedStyle != null) { linkStyle.CopyFrom(oc.StaticSelectedLinkStyle); } if (isDynamicItem && oc.DynamicSelectedStyle != null) { linkStyle.CopyFrom(oc.DynamicSelectedLinkStyle); } if (oc.LevelSelectedStyles != null && oc.LevelSelectedStyles.Count > item.Depth) { linkStyle.CopyFrom(oc.LevelSelectedLinkStyles [item.Depth]); } } linkStyle.AlwaysRenderTextDecoration = true; } linkStyle.AddAttributesToRender(writer); writer.AddAttribute("id", GetItemClientId(clientID, item, "l")); if (item.Depth > 0 && !isDynamicItem) { double value; Unit unit = oc.StaticSubMenuIndent; if (unit == Unit.Empty) { value = 16; } else { value = unit.Value; } Unit indent = new Unit(value * item.Depth, oc.StaticSubMenuIndent.Type); writer.AddStyleAttribute(HtmlTextWriterStyle.MarginLeft, indent.ToString()); } writer.RenderBeginTag(HtmlTextWriterTag.A); owner.RenderItemContent(writer, item, isDynamicItem); writer.RenderEndTag(); // A writer.RenderEndTag(); // TD // Popup image if (dynamicChildren) { string popOutImage = GetPopOutImage(owner, item, isDynamicItem); if (popOutImage != null) { writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.AddAttribute("src", owner.ResolveClientUrl(popOutImage)); writer.AddAttribute("border", "0"); string toolTip = String.Format(isDynamicItem ? oc.DynamicPopOutImageTextFormatString : oc.StaticPopOutImageTextFormatString, item.Text); writer.AddAttribute(HtmlTextWriterAttribute.Alt, toolTip); writer.RenderBeginTag(HtmlTextWriterTag.Img); writer.RenderEndTag(); // IMG writer.RenderEndTag(); // TD } } writer.RenderEndTag(); // TR writer.RenderEndTag(); // TABLE writer.RenderEndTag(); // TD if (!isVertical && itemSpacing == Unit.Empty && (notLast || (displayChildren && !dynamicChildren))) { writer.AddStyleAttribute("width", "3px"); writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.RenderEndTag(); } // Bottom separator image string separatorImg = item.SeparatorImageUrl; if (separatorImg.Length == 0) { if (isDynamicItem) { separatorImg = oc.DynamicBottomSeparatorImageUrl; } else { separatorImg = oc.StaticBottomSeparatorImageUrl; } } if (separatorImg.Length > 0) { if (!isVertical) { writer.RenderBeginTag(HtmlTextWriterTag.Td); } RenderSeparatorImage(owner, writer, separatorImg, false); if (!isVertical) { writer.RenderEndTag(); // TD } } if (isVertical) { writer.RenderEndTag(); // TR } if (itemSpacing != Unit.Empty) { RenderMenuItemSpacing(writer, itemSpacing, isVertical); } // Submenu if (displayChildren && !dynamicChildren) { if (isVertical) { writer.RenderBeginTag(HtmlTextWriterTag.Tr); } writer.RenderBeginTag(HtmlTextWriterTag.Td); writer.AddAttribute("width", "100%"); owner.RenderMenu(writer, item.ChildItems, vertical, false, item.Depth + 1, notLast); if (item.Depth + 2 == oc.StaticDisplayLevels) { owner.RenderDynamicMenu(writer, item.ChildItems); } writer.RenderEndTag(); // TD if (isVertical) { writer.RenderEndTag(); // TR } } }
public OwnerMaster(OwnerContext context) { _ownerContext = context; }
public NavbarElementRepository(OwnerContext context) : base(context) { }
public PdfRepository(OwnerContext context) : base(context) { }
protected override void RenderMenuItem (HtmlTextWriter writer, MenuItem item, bool vertical, bool notLast, bool isFirst, OwnerContext oc) { Menu owner = Owner; string clientID = oc.ClientID; bool displayChildren = owner.DisplayChildren (item); bool isDynamicItem = IsDynamicItem (owner, item); int itemLevel = item.Depth + 1; string str; writer.RenderBeginTag (HtmlTextWriterTag.Li); if (isDynamicItem) RenderSeparatorImage (owner, writer, oc.DynamicTopSeparatorImageUrl, true); else RenderSeparatorImage (owner, writer, oc.StaticTopSeparatorImageUrl, true); var linkStyle = new Style (); if (displayChildren && (isDynamicItem || itemLevel >= oc.StaticDisplayLevels)) AddCssClass (linkStyle, isDynamicItem && haveDynamicPopOut ? "popout-dynamic" : "popout"); AddCssClass (linkStyle, "level" + itemLevel); MenuItemStyleCollection levelStyles = oc.LevelMenuItemStyles; if (levelStyles != null && levelStyles.Count >= itemLevel) { MenuItemStyle style = levelStyles [itemLevel - 1]; string cssClass = style.CssClass; if (!String.IsNullOrEmpty (cssClass)) AddCssClass (linkStyle, cssClass); } if (owner.SelectedItem == item) AddCssClass (linkStyle, "selected"); str = item.ToolTip; if (!String.IsNullOrEmpty (str)) writer.AddAttribute ("title", str); linkStyle.AddAttributesToRender (writer); RenderItemHref (owner, writer, item); writer.RenderBeginTag (HtmlTextWriterTag.A); owner.RenderItemContent (writer, item, isDynamicItem); writer.RenderEndTag (); str = item.SeparatorImageUrl; if (String.IsNullOrEmpty (str)) { if (isDynamicItem) str = oc.DynamicBottomSeparatorImageUrl; else str = oc.StaticBottomSeparatorImageUrl; } RenderSeparatorImage (owner, writer, str, true); // if (itemLevel == 1) // writer.RenderEndTag (); // </li> if (displayChildren) owner.RenderMenu (writer, item.ChildItems, vertical, isDynamicItem, itemLevel, notLast); if (itemLevel > 1) writer.RenderEndTag (); // </li> }
public OwnerController(OwnerContext context) { _context = context; }
public SmsRepository(OwnerContext context) : base(context) { }