protected void Page_Load(object sender, EventArgs e) { ScriptHelper.RegisterScriptFile(Page, @"~/CMSModules/ImportExport/SiteManager/NewSite/DefineSiteStructure/menu.js"); ScriptHelper.RegisterDialogScript(this); // Initialize content management menu Group group = new Group(); group.Caption = GetString("ContentMenu.ContentManagement"); group.ControlPath = "~/CMSAdminControls/UI/UniMenu/NewSite/NewSiteMenu.ascx"; menuLeft.Groups.Add(group); }
/// <summary> /// Generates separator between groups. /// </summary> /// <param name="group">Group object</param> /// <returns>Panel separating groups</returns> protected Panel GetGroupSeparator(Group group) { string css = String.IsNullOrEmpty(group.SeparatorCssClass) ? "UniMenuSeparator" : "UniMenuSeparator " + group.SeparatorCssClass; // Create panel and set up return(new CMSPanel() { ID = "pnlGroupSeparator" + identifier, ShortID = "gs" + identifier, EnableViewState = false, CssClass = css }); }
/// <summary> /// Creates group panel from group. /// </summary> /// <param name="group">Definition of group</param> /// <param name="identifier">Identifier of panel</param> private CMSPanel CreateGroupPanelWith(Group group, int identifier) { Panel innerPanel = GetContent(group.Control, group.UIElementID, group.Caption); CMSPanel groupPanel = null; if (innerPanel != null) { groupPanel = new CMSPanel() { ID = "pnlGroup" + identifier, ShortID = "g" + identifier }; groupPanel.Controls.Add(GetLeftBorder()); groupPanel.Controls.Add(innerPanel); groupPanel.Controls.Add(GetRightBorder()); groupPanel.CssClass = group.CssClass; } return(groupPanel); }
protected void Page_Load(object sender, EventArgs e) { if (StopProcessing) { return; } // Handle the pre-selection preselectedItem = QueryHelper.GetString(QueryParameterName, ""); if (preselectedItem.StartsWithCSafe("cms.", true)) { preselectedItem = preselectedItem.Substring(4); } uniMenu.HighlightItem = preselectedItem; // If element name is not set, use root module element string elemName = ElementName; if (String.IsNullOrEmpty(elemName)) { elemName = ModuleName.Replace(".", ""); } // Get the UI elements DataSet ds = UIElementInfoProvider.GetChildUIElements(ModuleName, elemName); if (!DataHelper.DataSourceIsEmpty(ds)) { FilterElements(ds); // Prepare the list of elements foreach (DataRow dr in ds.Tables[0].Rows) { string url = ValidationHelper.GetString(dr["ElementTargetURL"], ""); Group group = new Group(); if (url.EndsWithCSafe("ascx")) { group.ControlPath = url; } else { group.UIElementID = ValidationHelper.GetInteger(dr["ElementID"], 0); } group.CssClass = "ContentMenuGroup"; if (GenerateElementCssClass) { string name = ValidationHelper.GetString(dr["ElementName"], String.Empty).Replace(".", String.Empty); group.CssClass += " ContentMenuGroup" + name; group.SeparatorCssClass = "UniMenuSeparator" + name; } group.Caption = ResHelper.LocalizeString(ValidationHelper.GetString(dr["ElementCaption"], "")); uniMenu.Groups.Add(group); } // Raise groups created event if (OnGroupsCreated != null) { OnGroupsCreated(this, uniMenu.Groups); } // Button created & filtered event handler if (OnButtonCreating != null) { uniMenu.OnButtonCreating += uniMenu_OnButtonCreating; } if (OnButtonCreated != null) { uniMenu.OnButtonCreated += uniMenu_OnButtonCreated; } if (OnButtonFiltered != null) { uniMenu.OnButtonFiltered += uniMenu_OnButtonFiltered; } } // Add editing icon in development mode if (SettingsKeyProvider.DevelopmentMode && CMSContext.CurrentUser.IsGlobalAdministrator && !DisableEditIcon) { ResourceInfo ri = ResourceInfoProvider.GetResourceInfo(ModuleName); if (ri != null) { ltlAfter.Text += String.Format("<div class=\"UIElementsLink\" >{0}</div>", UIHelper.GetResourceUIElementsLink(Page, ri.ResourceId)); } } }
protected void Page_Load(object sender, EventArgs e) { if (StopProcessing) { return; } // Handle the pre-selection preselectedItem = QueryHelper.GetString(QueryParameterName, ""); if (preselectedItem.StartsWithCSafe("cms.", true)) { preselectedItem = preselectedItem.Substring(4); } uniMenu.HighlightItem = preselectedItem; // If element name is not set, use root module element string elemName = ElementName; if (String.IsNullOrEmpty(elemName)) { elemName = ModuleName.Replace(".", ""); } // Get the UI elements DataSet ds = UIElementInfoProvider.GetChildUIElements(ModuleName, elemName); if (!DataHelper.DataSourceIsEmpty(ds)) { FilterElements(ds); // Prepare the list of elements foreach (DataRow dr in ds.Tables[0].Rows) { string url = ValidationHelper.GetString(dr["ElementTargetURL"], ""); UIElementTypeEnum type = ValidationHelper.GetString(dr["ElementType"], "").ToEnum<UIElementTypeEnum>(); Group group = new Group(); if (url.EndsWithCSafe("ascx") && (type == UIElementTypeEnum.UserControl)) { group.ControlPath = url; } else { group.UIElementID = ValidationHelper.GetInteger(dr["ElementID"], 0); } group.CssClass = "ContentMenuGroup"; if (GenerateElementCssClass) { string name = ValidationHelper.GetString(dr["ElementName"], String.Empty).Replace(".", String.Empty); group.CssClass += " ContentMenuGroup" + name; group.SeparatorCssClass = "UniMenuSeparator" + name; } group.Caption = ResHelper.LocalizeString(ValidationHelper.GetString(dr["ElementCaption"], "")); if (group.Caption == String.Empty) { group.Caption = ResHelper.LocalizeString(ValidationHelper.GetString(dr["ElementDisplayName"], "")); } uniMenu.Groups.Add(group); } // Raise groups created event RaiseOnGroupsCreated(this, uniMenu.Groups); // Button created & filtered event handler uniMenu.OnButtonCreating += uniMenu_OnButtonCreating; uniMenu.OnButtonCreated += uniMenu_OnButtonCreated; uniMenu.OnButtonFiltered += uniMenu_OnButtonFiltered; } // Add editing icon in development mode if (SystemContext.DevelopmentMode && MembershipContext.AuthenticatedUser.IsGlobalAdministrator && !DisableEditIcon) { var link = UIContextHelper.GetResourceUIElementLink(ModuleName, ElementName); if (!String.IsNullOrEmpty(link)) { ltlAfter.Text += String.Format("<div class=\"UIElementsLink\" >{0}</div>", link); } } }
protected void Page_Load(object sender, EventArgs e) { if (Groups.Count > 0) { pnlScrollControls.IsRTL = IsRTL; pnlScrollControls.InnerItemClass = "MiddleBigButton"; if (RememberSelectedItem) { RegisterRememberSelectedItemScript(); RegisterSelectItemScript("SelectButton(this);"); } RegisterSelectItemScript(""); InnerControls = new List <CMSUserControl>(Groups.Count); // Process the groups for (identifier = 0; identifier < Groups.Count; identifier++) { Group group = Groups[identifier]; if (!string.IsNullOrEmpty(group.ControlPath) && (group.Control == null)) { group.Control = TryToCreateGroupControlBy(group.ControlPath, identifier); } if (group.Control != null) { int index = identifier; if (InnerControls.Count < index) { index = InnerControls.Count; } InnerControls.Insert(index, group.Control); } CMSPanel groupPanel = CreateGroupPanelWith(group, identifier); if (groupPanel != null) { mMenuEmpty = false; CurrentPanelControl.Controls.Add(groupPanel); // Insert separator after group if (Groups.Count > 1) { CurrentPanelControl.Controls.Add(GetGroupSeparator(group)); } } } // Handle the pre-selection if (preselectedPanel != null) { // Add the selected class to the preselected button preselectedPanel.CssClass += " Selected"; } else if ((firstPanel != null) && HighlightFirstItem) { // Add the selected class to the first button firstPanel.CssClass += " Selected"; } if (!HorizontalLayout) { CurrentPanelControl.CssClass = "Vertical"; if (Width > 0) { CurrentPanelControl.Attributes.Add("style", "width:" + Width + "px"); } } } if (DisableScrollPanel) { pnlScrollControls.Visible = false; pnlLeftScroller.Visible = false; pnlRightScroller.Visible = false; } else { pnlControls.Visible = false; } }
/// <summary> /// Generates separator between groups. /// </summary> /// <param name="group">Group object</param> /// <returns>Panel separating groups</returns> protected Panel GetGroupSeparator(Group group) { string css = String.IsNullOrEmpty(group.SeparatorCssClass) ? "UniMenuSeparator" : "UniMenuSeparator " + group.SeparatorCssClass; // Create panel and set up return new CMSPanel() { ID = "pnlGroupSeparator" + identifier, ShortID = "gs" + identifier, EnableViewState = false, CssClass = css }; }
/// <summary> /// Creates group panel from group. /// </summary> /// <param name="group">Definition of group</param> /// <param name="identifier">Identifier of panel</param> private CMSPanel CreateGroupPanelWith(Group group, int identifier) { Panel innerPanel = GetContent(group.Control, group.UIElementID, group.Caption); CMSPanel groupPanel = null; if (innerPanel != null) { groupPanel = new CMSPanel() { ID = "pnlGroup" + identifier, ShortID = "g" + identifier }; groupPanel.Controls.Add(GetLeftBorder()); groupPanel.Controls.Add(innerPanel); groupPanel.Controls.Add(GetRightBorder()); groupPanel.CssClass = group.CssClass; } return groupPanel; }