From d2e0b764d762ec2c76700a7d98a5773091049c80 Mon Sep 17 00:00:00 2001 From: Nathan Heskew Date: Wed, 23 Feb 2011 09:48:26 -0800 Subject: [PATCH 1/3] Deduping the GroupInfos --HG-- branch : dev --- .../ContentManagement/DefaultContentManager.cs | 14 ++++++++------ src/Orchard/ContentManagement/IContentManager.cs | 4 ++-- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/Orchard/ContentManagement/DefaultContentManager.cs b/src/Orchard/ContentManagement/DefaultContentManager.cs index 0350f10a2..0f3829017 100644 --- a/src/Orchard/ContentManagement/DefaultContentManager.cs +++ b/src/Orchard/ContentManagement/DefaultContentManager.cs @@ -358,16 +358,18 @@ namespace Orchard.ContentManagement { return context.Metadata; } - public IList GetEditorGroupInfos(IContent content) { + public IEnumerable GetEditorGroupInfos(IContent content) { var metadata = GetItemMetadata(content); - // todo: (heskew) dedup and order - return metadata.EditorGroupInfo; + return metadata.EditorGroupInfo + .GroupBy(groupInfo => groupInfo.Id) + .Select(grouping => grouping.OrderBy(groupInfo => groupInfo.Position, new FlatPositionComparer()).FirstOrDefault()); } - public IList GetDisplayGroupInfos(IContent content) { + public IEnumerable GetDisplayGroupInfos(IContent content) { var metadata = GetItemMetadata(content); - // todo: (heskew) dedup and order - return metadata.DisplayGroupInfo; + return metadata.DisplayGroupInfo + .GroupBy(groupInfo => groupInfo.Id) + .Select(grouping => grouping.OrderBy(groupInfo => groupInfo.Position, new FlatPositionComparer()).FirstOrDefault()); } public GroupInfo GetEditorGroupInfo(IContent content, string groupInfoId) { diff --git a/src/Orchard/ContentManagement/IContentManager.cs b/src/Orchard/ContentManagement/IContentManager.cs index 2280c2197..f1836caaa 100644 --- a/src/Orchard/ContentManagement/IContentManager.cs +++ b/src/Orchard/ContentManagement/IContentManager.cs @@ -25,8 +25,8 @@ namespace Orchard.ContentManagement { IContentQuery Query(); ContentItemMetadata GetItemMetadata(IContent contentItem); - IList GetEditorGroupInfos(IContent contentItem); - IList GetDisplayGroupInfos(IContent contentItem); + IEnumerable GetEditorGroupInfos(IContent contentItem); + IEnumerable GetDisplayGroupInfos(IContent contentItem); GroupInfo GetEditorGroupInfo(IContent contentItem, string groupInfoId); GroupInfo GetDisplayGroupInfo(IContent contentItem, string groupInfoId); From 4a7930d33ff8f263644cd0c11b58a65b4f7f177a Mon Sep 17 00:00:00 2001 From: Nathan Heskew Date: Wed, 23 Feb 2011 10:09:30 -0800 Subject: [PATCH 2/3] More fine-grained admin menu classification to limit accidental item iconification. --HG-- branch : dev --- .../Modules/Orchard.Lists/Styles/menu.list.css | 9 ++++----- .../Modules/Orchard.Pages/Styles/menu.page.css | 7 ++++--- src/Orchard.Web/Themes/TheAdmin/Views/Menu.cshtml | 6 +++--- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.Lists/Styles/menu.list.css b/src/Orchard.Web/Modules/Orchard.Lists/Styles/menu.list.css index b293c8c49..604530d9e 100644 --- a/src/Orchard.Web/Modules/Orchard.Lists/Styles/menu.list.css +++ b/src/Orchard.Web/Modules/Orchard.Lists/Styles/menu.list.css @@ -1,16 +1,15 @@ -.navicon-list, -.navicon-lists { +.navicon-lists, +.section-new .subnavicon-list { background-image:url(images/menu.list.png) !important; } -.navicon-list:hover, .navicon-lists:hover { background-position:0 -30px !important; } /* subnav */ -ul ul .navicon-list { +.section-new .subnavicon-list { background-position:0 6px !important; padding-left:20px !important; } -ul ul .navicon-list:hover { +.section-new .subnavicon-list:hover { background-position:0 -26px !important; } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Pages/Styles/menu.page.css b/src/Orchard.Web/Modules/Orchard.Pages/Styles/menu.page.css index 45d01cab8..7a170c293 100644 --- a/src/Orchard.Web/Modules/Orchard.Pages/Styles/menu.page.css +++ b/src/Orchard.Web/Modules/Orchard.Pages/Styles/menu.page.css @@ -1,14 +1,15 @@ -.navicon-page { +.navicon-page, +.section-new .subnavicon-page { background-image:url(images/menu.page.png) !important; } .navicon-page:hover { background-position:0 -30px !important; } /* subnav */ -ul ul .navicon-page { +.section-new .subnavicon-page { background-position:0 6px !important; padding-left:20px !important; } -ul ul .navicon-page:hover { +.section-new .subnavicon-page:hover { background-position:0 -26px !important; } \ No newline at end of file diff --git a/src/Orchard.Web/Themes/TheAdmin/Views/Menu.cshtml b/src/Orchard.Web/Themes/TheAdmin/Views/Menu.cshtml index d8f11cd7c..0b3ee3fd7 100644 --- a/src/Orchard.Web/Themes/TheAdmin/Views/Menu.cshtml +++ b/src/Orchard.Web/Themes/TheAdmin/Views/Menu.cshtml @@ -69,10 +69,10 @@ @foreach (var secondLevelMenuItem in secondLevelMenuItems.Where(menuItem => !menuItem.LocalNav)) { string secondLevelTextHint = secondLevelMenuItem.TextHint; var secondLevelItemClassName = HasText(secondLevelTextHint) - ? "navicon-" + secondLevelTextHint.HtmlClassify() - : "navicon"; + ? "subnavicon-" + secondLevelTextHint.HtmlClassify() + : "subnavicon"; var secondLevelItemId = HasText(secondLevelMenuItem.IdHint) - ? "navicon-" + secondLevelMenuItem.IdHint + ? "subnavicon-" + secondLevelMenuItem.IdHint : null; if (secondLevelMenuItem.Selected) { From c0dfcfae22ff5aa4cd121807147110c368a210b3 Mon Sep 17 00:00:00 2001 From: Nathan Heskew Date: Wed, 23 Feb 2011 10:22:30 -0800 Subject: [PATCH 3/3] A little cleanup for the Setting admin menu group --HG-- branch : dev --- src/Orchard.Web/Core/Settings/AdminMenu.cs | 3 ++- src/Orchard.Web/Themes/TheAdmin/Styles/site.css | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Orchard.Web/Core/Settings/AdminMenu.cs b/src/Orchard.Web/Core/Settings/AdminMenu.cs index a8a3b5103..91ab9b625 100644 --- a/src/Orchard.Web/Core/Settings/AdminMenu.cs +++ b/src/Orchard.Web/Core/Settings/AdminMenu.cs @@ -20,7 +20,8 @@ namespace Orchard.Core.Settings { public void GetNavigation(NavigationBuilder builder) { builder.Add(T("Settings"), "50", - menu => menu.Add(T("General"), "0", item => item.Action("Index", "Admin", new { area = "Settings", groupInfoId = "Index" }) + menu => menu.LinkToFirstChild(false) + .Add(T("General"), "0", item => item.Action("Index", "Admin", new { area = "Settings", groupInfoId = "Index" }) .Permission(StandardPermissions.SiteOwner))); var site = _siteService.GetSiteSettings(); diff --git a/src/Orchard.Web/Themes/TheAdmin/Styles/site.css b/src/Orchard.Web/Themes/TheAdmin/Styles/site.css index 841726f32..83f0f2cf6 100644 --- a/src/Orchard.Web/Themes/TheAdmin/Styles/site.css +++ b/src/Orchard.Web/Themes/TheAdmin/Styles/site.css @@ -412,11 +412,12 @@ form.link button:hover { -webkit-border-radius: 3px; -moz-border-radius: 3px; } -.section-dashboard, .section-new -{ +.section-dashboard, .section-new, .section-settings { + padding:6px 0; +} +.section-dashboard, .section-new { background:#2b2b2b; border:1px solid #404040; - padding:6px 0; /*CSS3 properties*/ border-radius: 3px;