Перетащил главное окно в page

This commit is contained in:
2024-10-28 01:18:20 +03:00
parent d87e9ffd04
commit cb42b553cf
2 changed files with 85 additions and 97 deletions

View File

@@ -1,96 +1,5 @@
@using Microsoft.AspNetCore.Components.Authorization @inherits LayoutComponentBase
@inject AuthenticationStateProvider AuthenticationStateProvider
@inherits LayoutComponentBase
@code {
private MarkupString GetLinkIfAuth(string link) => new MarkupString(AuthenticationStateProvider.GetAuthenticationStateAsync().Result.User.Identity?.IsAuthenticated == true ? link : "MicrosoftIdentity/Account/SignIn");
}
<body class="flex items-center accent-error justify-center min-h-screen font-roboto text-primary-content"> <body class="flex items-center accent-error justify-center min-h-screen font-roboto text-primary-content">
<div class="relative"> @Body
@* TODO: Дописать модальное окно *@
<dialog id="info_modal" class="modal modal-bottom sm:modal-middle">
<div class="modal-box">
<h3 class="text-lg font-bold">Сервис отчислений</h3>
<p class="py-4">Привет, это сервис отчислений!<br>Автор: <a target="_blank" href="https://t.me/serega404">@@serega404</a></p>
<div class="modal-action">
<form method="dialog">
<button class="btn">Закрыть</button>
</form>
</div>
</div>
</dialog>
@* TODO: Исправить расположение названия *@
<div class="text-center font-bold text-4xl md:text-5xl w-max absolute left-1/2 -top-1/3 transform -translate-x-1/2 italic"><br>Отчислятор 3000</div>
<div class="flex flex-col space-y-4 w-96">
<div class="card rounded-badge bg-base-200 p-4">
<h2 class="card-title text-center text-3xl justify-center my-4">Мне нужно...</h2>
<div class="flex flex-col space-y-4 mt-1">
<a href="@GetLinkIfAuth("otchislenie")" class="btn h-16 btn-primary rounded-full text-2xl relative">
Отчислиться
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
@{
if (new Random().Next(0, 100) < 10)
{
<img class="p-2" src="img/soldier.svg" alt=""/>
}
else
{
<img class="p-3" src="img/wheelchair.svg" alt=""/>
}
}
</div>
</a>
<button class="btn h-16 btn-primary rounded-full text-2xl relative">
Понизить курс
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
<svg class="p-2" fill="none" viewBox="0 0 24 24" id="down-trend-round" xmlns="http://www.w3.org/2000/svg">
<path id="primary" d="M3,7l5.79,5.79a1,1,0,0,0,1.42,0l2.58-2.58a1,1,0,0,1,1.42,0L21,17" style="fill: none; stroke: rgb(0, 0, 0); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5;"></path><polyline id="primary-2" data-name="primary" points="17 17 21 17 21 13" style="fill: none; stroke: rgb(0, 0, 0); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5;"></polyline>
</svg>
</div>
<i class="absolute text-sm bottom-0 text-base-200 font-medium">временно не доступно</i>
</button>
<button class="btn h-16 btn-primary p-0 rounded-full text-2xl relative">
Уйти в академ
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
<img class="p-2" src="img/akadem.svg" alt=""/>
</div>
<i class="absolute text-sm bottom-0 text-base-200 font-medium">временно не доступно</i>
</button>
<div class="divider"></div>
<CascadingAuthenticationState>
<AuthorizeView>
<Authorized>
<a href="MicrosoftIdentity/Account/SignOut" class="btn btn-lg btn-primary rounded-full text-2xl relative">
@context.User.Identity?.Name!.Split("@")[0]
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
<svg class="p-3" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.5 15V19.5H5.5V5.5H16.5V10M10 12.5H22.5" stroke="#121923" stroke-width="1.2"/>
<path d="M20 10L22.5 12.5L20 15" stroke="#121923" stroke-width="1.2"/>
</svg>
</div>
</a>
</Authorized>
<NotAuthorized>
<a class="btn btn-lg bg-green-300 rounded-full text-2xl" href="MicrosoftIdentity/Account/SignIn">Начать</a>
</NotAuthorized>
</AuthorizeView>
</CascadingAuthenticationState>
</div>
</div>
<div class="text-center">
<button onclick="info_modal.showModal()" class="btn btn-sm btn-primary bg-base-200 rounded-full text-1xl">?</button>
</div>
</div>
</div>
@* <footer class="card fixed bottom-0 w-96 h-20 bg-base-200 rounded-badge p-4 mb-3"> *@
@* <div class="flex justify-center items-center"> *@
@* <ul class="steps justify-center center"> *@
@* <li class="step step-primary">Выбор</li> *@
@* <li class="step">...</li> *@
@* <li class="step">Заявление</li> *@
@* <li class="step" data-content="♿">Свобода</li> *@
@* </ul> *@
@* </div> *@
@* </footer> *@
</body> </body>

View File

@@ -1,7 +1,86 @@
@page "/" @using Microsoft.AspNetCore.Components.Authorization
@inject AuthenticationStateProvider AuthenticationStateProvider
@page "/"
<PageTitle>Home</PageTitle> <PageTitle>Отчислятор 3000</PageTitle>
<h1>Hello, world!</h1> @code {
private MarkupString GetLinkIfAuth(string link) => new MarkupString(AuthenticationStateProvider.GetAuthenticationStateAsync().Result.User.Identity?.IsAuthenticated == true ? link : "MicrosoftIdentity/Account/SignIn");
}
Welcome to your new app. <div class="relative">
@* TODO: Дописать модальное окно *@
<dialog id="info_modal" class="modal modal-bottom sm:modal-middle">
<div class="modal-box">
<h3 class="text-lg font-bold">Сервис отчислений</h3>
<p class="py-4">Привет, это сервис отчислений!<br>Автор: <a target="_blank" href="https://t.me/serega404">@@serega404</a></p>
<div class="modal-action">
<form method="dialog">
<button class="btn">Закрыть</button>
</form>
</div>
</div>
</dialog>
@* TODO: Исправить расположение названия *@
<div class="text-center font-bold text-4xl md:text-5xl w-max absolute left-1/2 -top-1/3 transform -translate-x-1/2 italic"><br>Отчислятор 3000</div>
<div class="flex flex-col space-y-4 w-96">
<div class="card rounded-badge bg-base-200 p-4">
<h2 class="card-title text-center text-3xl justify-center my-4">Мне нужно...</h2>
<div class="flex flex-col space-y-4 mt-1">
<a href="@GetLinkIfAuth("otchislenie")" class="btn h-16 btn-primary rounded-full text-2xl relative">
Отчислиться
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
@{
if (new Random().Next(0, 100) < 10)
{
<img class="p-2" src="img/soldier.svg" alt=""/>
}
else
{
<img class="p-3" src="img/wheelchair.svg" alt=""/>
}
}
</div>
</a>
<button class="btn h-16 btn-primary rounded-full text-2xl relative">
Понизить курс
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
<svg class="p-2" fill="none" viewBox="0 0 24 24" id="down-trend-round" xmlns="http://www.w3.org/2000/svg">
<path id="primary" d="M3,7l5.79,5.79a1,1,0,0,0,1.42,0l2.58-2.58a1,1,0,0,1,1.42,0L21,17" style="fill: none; stroke: rgb(0, 0, 0); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5;"></path><polyline id="primary-2" data-name="primary" points="17 17 21 17 21 13" style="fill: none; stroke: rgb(0, 0, 0); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5;"></polyline>
</svg>
</div>
<i class="absolute text-sm bottom-0 text-base-200 font-medium">временно не доступно</i>
</button>
<button class="btn h-16 btn-primary p-0 rounded-full text-2xl relative">
Уйти в академ
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
<img class="p-2" src="img/akadem.svg" alt=""/>
</div>
<i class="absolute text-sm bottom-0 text-base-200 font-medium">временно не доступно</i>
</button>
<div class="divider"></div>
<CascadingAuthenticationState>
<AuthorizeView>
<Authorized>
<a href="MicrosoftIdentity/Account/SignOut" class="btn btn-lg btn-primary rounded-full text-2xl relative">
@context.User.Identity?.Name!.Split("@")[0]
<div class="absolute bg-base-200 rounded-full right-1 w-14 h-14">
<svg class="p-3" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M16.5 15V19.5H5.5V5.5H16.5V10M10 12.5H22.5" stroke="#121923" stroke-width="1.2"/>
<path d="M20 10L22.5 12.5L20 15" stroke="#121923" stroke-width="1.2"/>
</svg>
</div>
</a>
</Authorized>
<NotAuthorized>
<a class="btn btn-lg bg-green-300 rounded-full text-2xl" href="MicrosoftIdentity/Account/SignIn">Начать</a>
</NotAuthorized>
</AuthorizeView>
</CascadingAuthenticationState>
</div>
</div>
<div class="text-center">
<button onclick="info_modal.showModal()" class="btn btn-sm btn-primary bg-base-200 rounded-full text-1xl">?</button>
</div>
</div>
</div>