Initial commit
This commit is contained in:
97
Views/Shared/_Layout.cshtml
Normal file
97
Views/Shared/_Layout.cshtml
Normal file
@@ -0,0 +1,97 @@
|
||||
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
|
||||
@using SimpleIdServer.IdServer.Options
|
||||
@using SimpleIdServer.IdServer.Resources
|
||||
@using SimpleIdp.Resources
|
||||
@using Microsoft.Extensions.Options
|
||||
@using System.Globalization
|
||||
@inject IOptions<IdServerHostOptions> options
|
||||
@model SimpleIdServer.IdServer.UI.ViewModels.ILayoutViewModel
|
||||
|
||||
@{
|
||||
var returnUrl = string.IsNullOrEmpty(Context.Request.Path) ? "~/" : $"~{Context.Request.Path.Value}{Context.Request.QueryString}";
|
||||
var currentCultureInfo = CultureInfo.DefaultThreadCurrentUICulture;
|
||||
string languagesLabel = LayoutResource.ResourceManager.GetString("languages");
|
||||
if (currentCultureInfo != null && !string.IsNullOrWhiteSpace(currentCultureInfo.Name))
|
||||
{
|
||||
var str = LayoutResource.ResourceManager.GetString(currentCultureInfo.Name);
|
||||
if (!string.IsNullOrWhiteSpace(str))
|
||||
{
|
||||
languagesLabel = string.Format(LayoutResource.ResourceManager.GetString("selected_language"), str);
|
||||
}
|
||||
}
|
||||
Layout = "~/Views/Shared/_CommonLayout.cshtml";
|
||||
}
|
||||
|
||||
<nav class="navbar navbar-expand-lg bg-primary">
|
||||
<div class="container-fluid">
|
||||
<a class="navbar-brand" href="#">
|
||||
<img src="~/images/SIDLogo.svg" width="40px" />
|
||||
</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
||||
<ul class="navbar-nav me-auto">
|
||||
@if (User.Identity.IsAuthenticated)
|
||||
{
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="@Url.Action("Profile", "Home")">
|
||||
Welcome @User.Identity.Name
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
|
||||
@if (options.Value.RealmEnabled)
|
||||
{
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="@Url.Action("Index", "Sessions", new { prefix = string.Empty })">
|
||||
@LayoutResource.Sessions
|
||||
</a>
|
||||
</li>
|
||||
}
|
||||
@RenderSection("SubMenu", required: false)
|
||||
</ul>
|
||||
<ul class="navbar-nav">
|
||||
@if (User.Identity.IsAuthenticated)
|
||||
{
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="@Url.Action("Disconnect", "Home", new { area = "" })">@LayoutResource.disconnect</a>
|
||||
</li>
|
||||
}
|
||||
else
|
||||
{
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="@Url.Action("Profile", "Home", new { area = "" })">@LayoutResource.authenticate</a>
|
||||
</li>
|
||||
}
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" data-bs-toggle="dropdown">
|
||||
@languagesLabel
|
||||
</a>
|
||||
<div class="dropdown-menu">
|
||||
@foreach (var language in Model.Languages)
|
||||
{
|
||||
<form asp-controller="Home" asp-action="SwitchLanguage" asp-area="" method="post">
|
||||
<input type="hidden" name="culture" value="@language.Code" />
|
||||
<input type="hidden" name="returnUrl" value="@returnUrl" />
|
||||
<button type="submit" class="dropdown-item" href="#">@language.Description</button>
|
||||
</form>
|
||||
}
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<div id="container">
|
||||
<div>
|
||||
@RenderSection("PageTitle", false)
|
||||
</div>
|
||||
<div>
|
||||
@RenderBody()
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@section Scripts {
|
||||
@RenderSection("Scripts", required: false)
|
||||
}
|
||||
Reference in New Issue
Block a user