Added configuration menu. Added some services. New translation system. Assets
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
@using Moonlight.App.Services
|
||||
|
||||
@inject TranslationService TranslationService
|
||||
@inject ConfigService ConfigService
|
||||
|
||||
@{
|
||||
@@ -20,17 +19,17 @@
|
||||
<ul class="menu menu-gray-600 menu-hover-primary fw-semibold order-1">
|
||||
<li class="menu-item">
|
||||
<a href="@(marketingConfig.GetValue<string>("About"))" target="_blank" class="menu-link px-2">
|
||||
@(TranslationService.Translate("Footer.AboutUs"))
|
||||
<TL>About us</TL>
|
||||
</a>
|
||||
</li>
|
||||
<li class="menu-item">
|
||||
<a href="@(marketingConfig.GetValue<string>("Imprint"))" target="_blank" class="menu-link px-2">
|
||||
@(TranslationService.Translate("Footer.Imprint"))
|
||||
<TL>Imprint</TL>
|
||||
</a>
|
||||
</li>
|
||||
<li class="menu-item">
|
||||
<a href="@(marketingConfig.GetValue<string>("Privacy"))" target="_blank" class="menu-link px-2">
|
||||
@(TranslationService.Translate("Footer.Privacy"))
|
||||
<TL>Privacy</TL>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
@inject IdentityService IdentityService
|
||||
@inject NavigationManager NavigationManager
|
||||
@inject CookieService CookieService
|
||||
@inject TranslationService TranslationService
|
||||
|
||||
<div class="app-navbar flex-shrink-0">
|
||||
<div class="app-navbar-item ms-1 ms-lg-3">
|
||||
@@ -58,10 +57,10 @@
|
||||
</div>
|
||||
<div class="separator my-2"></div>
|
||||
<div class="menu-item px-5 my-1">
|
||||
<a href="/settings" class="menu-link px-5">@TranslationService.Translate("Navbar.Account.Settings")</a>
|
||||
<a href="/settings" class="menu-link px-5"><TL>Account settings</TL></a>
|
||||
</div>
|
||||
<div class="menu-item px-5">
|
||||
<a @onclick="Logout" class="menu-link px-5">@TranslationService.Translate("Navbar.Logout")</a>
|
||||
<a @onclick="Logout" class="menu-link px-5"><TL>Logout</TL></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
@using Moonlight.App.Services
|
||||
|
||||
@inject IdentityService IdentityService
|
||||
@inject TranslationService TranslationService
|
||||
@inject ConfigService ConfigService
|
||||
@inject IJSRuntime JsRuntime
|
||||
|
||||
@@ -17,7 +16,7 @@
|
||||
<a href="@(User != null ? "/" : "/login")">
|
||||
@if (sidebar == "dark-sidebar")
|
||||
{
|
||||
<img alt="Logo" src="@(moonlightConfig.GetValue<string>("AppUrl"))/api/moonlight/resources/images/logofull.png" class="h-45px app-sidebar-logo-default"/>
|
||||
<img alt="Logo" src="@(moonlightConfig.GetValue<string>("AppUrl"))/api/moonlight/resources/images/logolong.png" class="h-45px app-sidebar-logo-default"/>
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -40,7 +39,7 @@
|
||||
<div class="app-sidebar-footer flex-column-auto pt-2 pb-6 px-6" id="kt_app_sidebar_footer">
|
||||
<a id="support_ticket_toggle_sidebar"
|
||||
class="btn btn-flex flex-center btn-custom btn-primary overflow-hidden text-nowrap px-0 h-40px w-100 btn-label">
|
||||
@(TranslationService.Translate("Sidebar.Footer.OpenSupport"))
|
||||
<TL>Open support</TL>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
@using Moonlight.App.Services.Sessions
|
||||
@using Moonlight.App.Database.Entities
|
||||
|
||||
@inject TranslationService TranslationService
|
||||
@inject IdentityService IdentityService
|
||||
|
||||
<div class="app-sidebar-menu overflow-hidden flex-column-fluid">
|
||||
@@ -15,7 +14,7 @@
|
||||
<span class="menu-icon">
|
||||
<i class="bx bxs-log-in"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Login")</span>
|
||||
<span class="menu-title"><TL>Login</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -23,7 +22,7 @@
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-user-plus"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Register")</span>
|
||||
<span class="menu-title"><TL>Register</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
}
|
||||
@@ -34,7 +33,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-layer"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Dashboard")</span>
|
||||
<span class="menu-title"><TL>Dashboard</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div data-kt-menu-trigger="click" class="menu-item menu-accordion">
|
||||
@@ -42,7 +41,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-cart-alt"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Order")</span>
|
||||
<span class="menu-title"><TL>Order</TL></span>
|
||||
<span class="menu-arrow"></span>
|
||||
</span>
|
||||
<div class="menu-sub menu-sub-accordion">
|
||||
@@ -51,7 +50,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Website")</span>
|
||||
<span class="menu-title"><TL>Website</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -60,7 +59,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Database")</span>
|
||||
<span class="menu-title"><TL>Database</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -69,7 +68,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Domain")</span>
|
||||
<span class="menu-title"><TL>Domain</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
@@ -79,7 +78,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-server"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Servers")</span>
|
||||
<span class="menu-title"><TL>Servers</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -87,7 +86,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-globe"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Websites")</span>
|
||||
<span class="menu-title"><TL>Websites</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -95,7 +94,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-data"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Databases")</span>
|
||||
<span class="menu-title"><TL>Databases</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -103,7 +102,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-purchase-tag"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Domains")</span>
|
||||
<span class="menu-title"><TL>Domains</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -111,7 +110,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-notepad"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Changelog")</span>
|
||||
<span class="menu-title"><TL>Changelog</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -119,7 +118,7 @@ else
|
||||
{
|
||||
<div class="menu-item pt-5">
|
||||
<div class="menu-content">
|
||||
<span class="menu-heading fw-bold text-uppercase fs-7">@TranslationService.Translate("Sidebar.Menu.Admin")</span>
|
||||
<span class="menu-heading fw-bold text-uppercase fs-7"><TL>Admin</TL></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -127,7 +126,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-layer"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Dashboard")</span>
|
||||
<span class="menu-title"><TL>Dashboard</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -135,7 +134,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-chip"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.System")</span>
|
||||
<span class="menu-title"><TL>System</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div data-kt-menu-trigger="click" class="menu-item menu-accordion">
|
||||
@@ -143,7 +142,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-server"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Servers")</span>
|
||||
<span class="menu-title"><TL>Servers</TL></span>
|
||||
<span class="menu-arrow"></span>
|
||||
</span>
|
||||
<div class="menu-sub menu-sub-accordion">
|
||||
@@ -152,7 +151,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Overview")</span>
|
||||
<span class="menu-title"><TL>Overview</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -161,7 +160,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Manager")</span>
|
||||
<span class="menu-title"><TL>Manager</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -170,7 +169,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Cleanup")</span>
|
||||
<span class="menu-title"><TL>Cleanup</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -179,7 +178,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Nodes")</span>
|
||||
<span class="menu-title"><TL>Nodes</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -188,7 +187,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Images")</span>
|
||||
<span class="menu-title"><TL>Images</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
@@ -198,7 +197,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-cube"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.AaPanel")</span>
|
||||
<span class="menu-title"><TL>aaPanel</TL></span>
|
||||
<span class="menu-arrow"></span>
|
||||
</span>
|
||||
<div class="menu-sub menu-sub-accordion">
|
||||
@@ -207,7 +206,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Overview")</span>
|
||||
<span class="menu-title"><TL>Overview</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -215,7 +214,7 @@ else
|
||||
<span class="menu-bullet">
|
||||
<span class="bullet bullet-dot"></span>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Databases")</span>
|
||||
<span class="menu-title"><TL>Databases</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
@@ -225,7 +224,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-user"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Users")</span>
|
||||
<span class="menu-title"><TL>Users</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -233,7 +232,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-support"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Support")</span>
|
||||
<span class="menu-title"><TL>Support</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="menu-item">
|
||||
@@ -241,7 +240,7 @@ else
|
||||
<span class="menu-icon">
|
||||
<i class="bx bx-objects-vertical-bottom"></i>
|
||||
</span>
|
||||
<span class="menu-title">@TranslationService.Translate("Sidebar.Menu.Statistics")</span>
|
||||
<span class="menu-title"><TL>Statistics</TL></span>
|
||||
</a>
|
||||
</div>
|
||||
}
|
||||
|
||||
31
Moonlight/Shared/Components/Partials/TL.razor
Normal file
31
Moonlight/Shared/Components/Partials/TL.razor
Normal file
@@ -0,0 +1,31 @@
|
||||
@using Microsoft.AspNetCore.Components.Rendering
|
||||
@using Logging.Net
|
||||
@using Moonlight.App.Services
|
||||
|
||||
@inject SmartTranslateService SmartTranslateService
|
||||
|
||||
@{
|
||||
var x = "";
|
||||
|
||||
if (ChildContent != null)
|
||||
{
|
||||
var rb = new RenderTreeBuilder();
|
||||
ChildContent.Invoke(rb);
|
||||
|
||||
foreach (var frame in rb.GetFrames().Array)
|
||||
{
|
||||
if (frame.Sequence != 0)
|
||||
x += frame.MarkupContent;
|
||||
}
|
||||
|
||||
x = SmartTranslateService.Translate(x);
|
||||
}
|
||||
}
|
||||
|
||||
<span>@(x)</span>
|
||||
|
||||
@code
|
||||
{
|
||||
[Parameter]
|
||||
public RenderFragment? ChildContent { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user