diff --git a/Oqtane.Client/Themes/Controls/FontIcon.razor b/Oqtane.Client/Themes/Controls/FontIcon.razor new file mode 100644 index 00000000..04cd682a --- /dev/null +++ b/Oqtane.Client/Themes/Controls/FontIcon.razor @@ -0,0 +1,4 @@ +@if (!string.IsNullOrWhiteSpace(Value)) +{ + +} \ No newline at end of file diff --git a/Oqtane.Client/Themes/Controls/FontIcon.razor.cs b/Oqtane.Client/Themes/Controls/FontIcon.razor.cs new file mode 100644 index 00000000..07ecda89 --- /dev/null +++ b/Oqtane.Client/Themes/Controls/FontIcon.razor.cs @@ -0,0 +1,10 @@ +using Microsoft.AspNetCore.Components; + +namespace Oqtane.Themes.Controls +{ + public partial class FontIcon : ComponentBase + { + [Parameter()] + public string Value { get; set; } + } +} diff --git a/Oqtane.Client/Themes/Controls/MenuHorizontal.razor b/Oqtane.Client/Themes/Controls/MenuHorizontal.razor index 575a513b..c4c45f16 100644 --- a/Oqtane.Client/Themes/Controls/MenuHorizontal.razor +++ b/Oqtane.Client/Themes/Controls/MenuHorizontal.razor @@ -1,4 +1,5 @@ @namespace Oqtane.Themes.Controls + @inherits MenuBase @if (MenuPages.Any()) @@ -10,35 +11,7 @@
} diff --git a/Oqtane.Client/Themes/Controls/MenuItemsBase.cs b/Oqtane.Client/Themes/Controls/MenuItemsBase.cs new file mode 100644 index 00000000..bfdd3cd4 --- /dev/null +++ b/Oqtane.Client/Themes/Controls/MenuItemsBase.cs @@ -0,0 +1,27 @@ +using System.Collections.Generic; +using System.Linq; + +using Microsoft.AspNetCore.Components; + +using Oqtane.Models; +using Oqtane.UI; + +namespace Oqtane.Themes.Controls +{ + public abstract class MenuItemsBase : MenuBase + { + [Parameter()] + public Page ParentPage { get; set; } + + [Parameter()] + public IEnumerable Pages { get; set; } + + protected IEnumerable GetChildPages() + { + return Pages + .Where(e => e.ParentId == ParentPage?.PageId) + .OrderBy(e => e.Order) + .AsEnumerable(); + } + } +} diff --git a/Oqtane.Client/Themes/Controls/MenuItemsHorizontal.razor b/Oqtane.Client/Themes/Controls/MenuItemsHorizontal.razor new file mode 100644 index 00000000..1ba03d4f --- /dev/null +++ b/Oqtane.Client/Themes/Controls/MenuItemsHorizontal.razor @@ -0,0 +1,78 @@ +@namespace Oqtane.Themes.Controls + +@inherits MenuItemsBase + +@if (ParentPage != null) +{ + +} +else +{ + +} \ No newline at end of file diff --git a/Oqtane.Client/Themes/Controls/MenuItemsHorizontal.razor.cs b/Oqtane.Client/Themes/Controls/MenuItemsHorizontal.razor.cs new file mode 100644 index 00000000..30226bfb --- /dev/null +++ b/Oqtane.Client/Themes/Controls/MenuItemsHorizontal.razor.cs @@ -0,0 +1,6 @@ +namespace Oqtane.Themes.Controls +{ + public partial class MenuItemsHorizontal : MenuItemsBase + { + } +} diff --git a/Oqtane.Client/Themes/Controls/MenuItemsVertical.razor b/Oqtane.Client/Themes/Controls/MenuItemsVertical.razor new file mode 100644 index 00000000..ab6c92d8 --- /dev/null +++ b/Oqtane.Client/Themes/Controls/MenuItemsVertical.razor @@ -0,0 +1,62 @@ +@namespace Oqtane.Themes.Controls + +@inherits MenuItemsBase + +@if (ParentPage != null) +{ + foreach (var childPage in GetChildPages()) + { + if (childPage.PageId == PageState.Page.PageId) + { + + } + else + { + + } + if (Pages.Any(e => e.ParentId == childPage.PageId)) + { + + } + } +} +else +{ + +} \ No newline at end of file diff --git a/Oqtane.Client/Themes/Controls/MenuItemsVertical.razor.cs b/Oqtane.Client/Themes/Controls/MenuItemsVertical.razor.cs new file mode 100644 index 00000000..85ba00b8 --- /dev/null +++ b/Oqtane.Client/Themes/Controls/MenuItemsVertical.razor.cs @@ -0,0 +1,6 @@ +namespace Oqtane.Themes.Controls +{ + public partial class MenuItemsVertical : MenuItemsBase + { + } +} diff --git a/Oqtane.Client/Themes/Controls/MenuVertical.razor b/Oqtane.Client/Themes/Controls/MenuVertical.razor index 79b20589..a552ea11 100644 --- a/Oqtane.Client/Themes/Controls/MenuVertical.razor +++ b/Oqtane.Client/Themes/Controls/MenuVertical.razor @@ -10,25 +10,7 @@ }