mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-21 11:17:28 +08:00
#19457: Allowing draft elements to be added to the navigation
If the resulting MenuItemLink is empty, don't display it in the navigation Work Item: 19457 --HG-- branch : 1.x
This commit is contained in:
@@ -3,29 +3,35 @@
|
||||
var items = Enumerable.Cast<dynamic>((System.Collections.IEnumerable)Model);
|
||||
}
|
||||
@{
|
||||
if (!HasText(Model.Text)) {
|
||||
@DisplayChildren(Model)
|
||||
} else {
|
||||
if((bool)Model.Selected) {
|
||||
Model.Classes.Add("current");
|
||||
}
|
||||
|
||||
if(items.Any()) {
|
||||
Model.Classes.Add("dropdown");
|
||||
}
|
||||
var tag = Tag(Model, "li");
|
||||
@tag.StartElement
|
||||
|
||||
@* morphing the shape to keep Model untouched*@
|
||||
Model.Metadata.Alternates.Clear();
|
||||
Model.Metadata.Type = "MenuItemLink";
|
||||
@Display(Model)
|
||||
|
||||
if (items.Any()) {
|
||||
<ul>
|
||||
if (!HasText(Model.Text)) {
|
||||
@DisplayChildren(Model)
|
||||
</ul>
|
||||
}
|
||||
@tag.EndElement
|
||||
else {
|
||||
if ((bool) Model.Selected) {
|
||||
Model.Classes.Add("current");
|
||||
}
|
||||
|
||||
if (items.Any()) {
|
||||
Model.Classes.Add("dropdown");
|
||||
}
|
||||
|
||||
@* morphing the shape to keep Model untouched*@
|
||||
Model.Metadata.Alternates.Clear();
|
||||
Model.Metadata.Type = "MenuItemLink";
|
||||
|
||||
@* render the menu item only if it has some content *@
|
||||
var renderedMenuItemLink = Display(Model);
|
||||
if (HasText(renderedMenuItemLink)) {
|
||||
var tag = Tag(Model, "li");
|
||||
@tag.StartElement
|
||||
@renderedMenuItemLink
|
||||
@tag.EndElement
|
||||
}
|
||||
|
||||
if (items.Any()) {
|
||||
<ul>
|
||||
@DisplayChildren(Model)
|
||||
</ul>
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user