mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 03:25:23 +08:00
Merge
--HG-- branch : dev
This commit is contained in:
@@ -27,6 +27,7 @@ namespace Orchard.Core.Contents {
|
||||
var contentTypes = contentTypeDefinitions.Where(ctd => ctd.Settings.GetModel<ContentTypeSettings>().Creatable).OrderBy(ctd => ctd.DisplayName);
|
||||
if (contentTypes.Count() > 0) {
|
||||
builder.Add(T("New"), "-1", menu => {
|
||||
menu.LinkToFirstChild(false);
|
||||
foreach (var contentTypeDefinition in contentTypes) {
|
||||
var ci = _contentManager.New(contentTypeDefinition.Name);
|
||||
var cim = _contentManager.GetItemMetadata(ci);
|
||||
|
@@ -16,7 +16,7 @@
|
||||
var firstOfTheSecond = secondLevelMenuItems.FirstOrDefault();
|
||||
var sectionHeaderMarkup = firstLevelMenuItem.RouteValues != null || HasText(firstLevelMenuItem.Url)
|
||||
? Html.Link(sectionHeaderText, (string)firstLevelMenuItem.Href)
|
||||
: firstOfTheSecond != null
|
||||
: firstOfTheSecond != null && firstLevelMenuItem.LinkToFirstChild
|
||||
? Html.Link(sectionHeaderText, (string)firstOfTheSecond.Href)
|
||||
: new HtmlString(string.Format("<span>{0}</span>", Html.Encode(sectionHeaderText)));
|
||||
|
||||
|
@@ -41,6 +41,7 @@ namespace Orchard.UI.Navigation {
|
||||
var menuItemShape = shapeFactory.MenuItem()
|
||||
.Text(menuItem.Text)
|
||||
.Href(menuItem.Href)
|
||||
.LinkToFirstChild(menuItem.LinkToFirstChild)
|
||||
.RouteValues(menuItem.RouteValues)
|
||||
.Item(menuItem)
|
||||
.Menu(menu)
|
||||
|
@@ -7,12 +7,14 @@ namespace Orchard.UI.Navigation {
|
||||
public class MenuItem {
|
||||
public MenuItem() {
|
||||
Permissions = Enumerable.Empty<Permission>();
|
||||
LinkToFirstChild = true;
|
||||
}
|
||||
|
||||
public string Text { get; set; }
|
||||
public string Url { get; set; }
|
||||
public string Href { get; set; }
|
||||
public string Position { get; set; }
|
||||
public bool LinkToFirstChild { get; set; }
|
||||
public RouteValueDictionary RouteValues { get; set; }
|
||||
public IEnumerable<MenuItem> Items { get; set; }
|
||||
public IEnumerable<Permission> Permissions { get; set; }
|
||||
|
@@ -28,6 +28,11 @@ namespace Orchard.UI.Navigation {
|
||||
return this;
|
||||
}
|
||||
|
||||
public NavigationItemBuilder LinkToFirstChild(bool value) {
|
||||
_item.LinkToFirstChild = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
public NavigationItemBuilder Permission(Permission permission) {
|
||||
_item.Permissions = _item.Permissions.Concat(new[]{permission});
|
||||
return this;
|
||||
|
@@ -73,6 +73,7 @@ namespace Orchard.UI.Navigation {
|
||||
RouteValues = item.RouteValues,
|
||||
Text = item.Text,
|
||||
Url = item.Url,
|
||||
LinkToFirstChild = item.LinkToFirstChild,
|
||||
Href = item.Href
|
||||
};
|
||||
}
|
||||
@@ -106,6 +107,7 @@ namespace Orchard.UI.Navigation {
|
||||
Text = items.First().Text,
|
||||
Url = items.First().Url,
|
||||
Href = items.First().Href,
|
||||
LinkToFirstChild = items.First().LinkToFirstChild,
|
||||
RouteValues = items.First().RouteValues,
|
||||
Items = Merge(items.Select(x => x.Items)).ToArray(),
|
||||
Position = SelectBestPositionValue(items.Select(x => x.Position)),
|
||||
|
Reference in New Issue
Block a user