Фикс багов
All checks were successful
Build and deploy / Publish image (push) Successful in 1m5s

This commit is contained in:
2025-01-02 17:39:43 +03:00
parent a68fcbb8d9
commit fe7bc86a85
7 changed files with 75 additions and 47 deletions

View File

@@ -1,6 +1,10 @@
@page "/otchislenie/congratulation" @page "/otchislenie/congratulation"
@using Microsoft.AspNetCore.Authorization
@using Otchinslator.Components.Layout @using Otchinslator.Components.Layout
@layout OtchislenieLayout @layout OtchislenieLayout
@attribute [Authorize]
<PageTitle>Поздравляем! | Отчислятор 3000</PageTitle>
<div> <div>
<div class="text-center mx-auto mb-4 font-bold text-4xl md:text-5xl w-max justify-center italic">Поздравляем!</div> <div class="text-center mx-auto mb-4 font-bold text-4xl md:text-5xl w-max justify-center italic">Поздравляем!</div>

View File

@@ -22,7 +22,7 @@
</div> </div>
</dialog> </dialog>
@* TODO: Исправить расположение названия *@ @* 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="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<br><p class="text-2xl text-red-500">pre-alpha</p></div>
<div class="flex flex-col space-y-4 w-96"> <div class="flex flex-col space-y-4 w-96">
<div class="card rounded-badge bg-base-200 p-4"> <div class="card rounded-badge bg-base-200 p-4">
<h2 class="card-title text-center text-3xl justify-center my-4">Мне нужно...</h2> <h2 class="card-title text-center text-3xl justify-center my-4">Мне нужно...</h2>

View File

@@ -3,7 +3,10 @@
@using Otchinslator.Components.Layout @using Otchinslator.Components.Layout
@layout OtchislenieLayout @layout OtchislenieLayout
@using BlazorPageScript @using BlazorPageScript
@using Microsoft.AspNetCore.Authorization
@attribute [Authorize]
<PageTitle>Анкета | Отчислятор 3000</PageTitle>
<PageScript Src="./Components/Pages/Questionnaire.razor.js"/> <PageScript Src="./Components/Pages/Questionnaire.razor.js"/>
<style> <style>
@@ -85,18 +88,18 @@
} }
</style> </style>
<dialog id="exit_modal" class="modal modal-bottom sm:modal-middle"> @* <dialog id="exit_modal" class="modal modal-bottom sm:modal-middle"> *@
<div class="modal-box"> @* <div class="modal-box"> *@
<h3 class="text-lg font-bold">Сервис отчислений</h3> @* <h3 class="text-lg font-bold">Сервис отчислений</h3> *@
<p class="py-4">Вы уверены что хотите выйти? Прогресс не сохранится</p> @* <p class="py-4">Вы уверены что хотите выйти? Прогресс не сохранится</p> *@
<div class="modal-action"> @* <div class="modal-action"> *@
<form method="dialog"> @* <form method="dialog"> *@
<button class="btn btn-error">На главную</button> @* <button class="btn btn-error">На главную</button> *@
<button class="btn btn-primary">Закрыть</button> @* <button class="btn btn-primary">Закрыть</button> *@
</form> @* </form> *@
</div> @* </div> *@
</div> @* </div> *@
</dialog> @* </dialog> *@
<dialog id="info_modal" class="modal modal-bottom sm:modal-middle"> <dialog id="info_modal" class="modal modal-bottom sm:modal-middle">
<div class="modal-box"> <div class="modal-box">
@@ -168,10 +171,10 @@
</div> </div>
<div class="join w-full mt-4 flex gap-2"> <div class="join w-full mt-4 flex gap-2">
<button onclick="exit_modal.showModal()" <a href="/"
class="relative btn btn-primary rounded-full flex-grow-0 w-[3rem] h-[3rem]"> class="relative btn btn-primary rounded-full flex-grow-0 w-[3rem] h-[3rem]">
<img class="absolute p-3" src="img/exit.svg" alt=""/> <img class="absolute p-3" src="img/exit.svg" alt=""/>
</button> </a>
<a href="otchislenie/statement" class="btn rounded-full btn-primary flex-grow w-30">Продолжим</a> <a href="otchislenie/statement" class="btn rounded-full btn-primary flex-grow w-30">Продолжим</a>
<button onclick="info_modal.showModal()" class="btn btn-primary rounded-full flex-grow-0 w-[3rem]">?</button> <button onclick="info_modal.showModal()" class="btn btn-primary rounded-full flex-grow-0 w-[3rem]">?</button>
</div> </div>

View File

@@ -1,6 +1,10 @@
@page "/otchislenie/result" @page "/otchislenie/result"
@using Microsoft.AspNetCore.Authorization
@using Otchinslator.Components.Layout @using Otchinslator.Components.Layout
@layout OtchislenieLayout @layout OtchislenieLayout
@attribute [Authorize]
<PageTitle>Уже почти | Отчислятор 3000</PageTitle>
<script> <script>
document.getElementById('downloadPDF').addEventListener('click', function () { document.getElementById('downloadPDF').addEventListener('click', function () {
@@ -23,28 +27,29 @@
</dialog> </dialog>
<div class="relative"> <div class="relative">
@* <div class="w-full"> *@ <div
@* <div class="flex flex-col space-y-4 xl:w-1/2 sm:w-full mx-auto"> *@ class="text-center font-bold text-4xl md:text-5xl w-max absolute left-1/2 -top-1/4 transform -translate-x-1/2 italic">
<object data="/getStatement" type="application/pdf" class="w-[28rem] h-[30rem] rounded-2xl"> <br>Заявление готово
<p class="text-center">Не удалось отобразить заявление, попробуйте скачать <a href="/getStatement">(тык)</a></p> </div>
</object> <object data="/getStatement" type="application/pdf" class="w-[28rem] h-[30rem] rounded-2xl">
<div class="join w-full mt-4 flex gap-2"> <p class="text-center">Не удалось отобразить заявление, попробуйте скачать <a href="/getStatement">(тык)</a></p>
<button onclick="exit_modal.showModal()" class="relative btn btn-primary rounded-full flex-grow-0 w-[3rem] h-[3rem]"> </object>
<img class="absolute p-3" src="img/exit.svg" alt=""/> <div class="join w-full mt-4 flex gap-2">
</button> <a href="/" class="relative btn btn-primary rounded-full flex-grow-0 w-[3rem] h-[3rem]">
@* <button id="gen" class="btn rounded-full btn-primary flex-grow w-30">Сгенерировать</button> *@ <img class="absolute p-3" src="img/exit.svg" alt=""/>
@* <a href="otchislenie/result" class="btn rounded-full btn-primary flex-grow w-30">Сгенерировать</a> *@ </a>
<button onclick="SendToDirectorModal.showModal()" <button onclick="SendToDirectorModal.showModal()"
class="btn btn-primary rounded-full flex-grow w-30"> class="btn btn-primary rounded-full flex-grow w-30">
Отправить директору Отправить директору
</button> </button>
<a id="downloadPDF" target="_blank" href="/getStatement" <a id="downloadPDF" target="_blank" href="/getStatement"
class="btn btn-primary bg-base-200 border-base-200 rounded-full flex-grow-0 w-[3rem]"> class="btn btn-primary bg-base-200 border-base-200 rounded-full flex-grow-0 w-[3rem]">
@* Скачать PDF *@<div class="absolute rounded-full w-12 h-12"> @* Скачать PDF *@
<img class="p-3" src="img/pdf.svg" alt=""/> <div class="absolute rounded-full w-12 h-12">
</div> <img class="p-3" src="img/pdf.svg" alt=""/>
</a> </div>
</div> </a>
</div>

View File

@@ -2,9 +2,25 @@
@using Otchinslator.Components.Layout @using Otchinslator.Components.Layout
@layout OtchislenieLayout @layout OtchislenieLayout
@using BlazorPageScript @using BlazorPageScript
@using Microsoft.AspNetCore.Authorization
@attribute [Authorize]
<PageTitle>Заявление | Отчислятор 3000</PageTitle>
<PageScript Src="./Components/Pages/Statement.razor.js" /> <PageScript Src="./Components/Pages/Statement.razor.js" />
<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">Укажите причину по которой хотите отчислиться</p>
<div class="modal-action">
<form method="dialog">
<button class="btn">Закрыть</button>
</form>
</div>
</div>
</dialog>
<dialog id="generateStatementModal" class="modal"> <dialog id="generateStatementModal" class="modal">
<div class="modal-box text-center justify-center"> <div class="modal-box text-center justify-center">
<h3 class="text-lg content-center items-center font-bold select-none">Генерация</h3> <h3 class="text-lg content-center items-center font-bold select-none">Генерация</h3>
@@ -29,14 +45,13 @@
<div class="relative"> <div class="relative">
<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>Укажите причину</div> <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>Укажите причину</div>
<div class="flex flex-col space-y-4 w-96"> <div class="flex flex-col space-y-4 w-96">
<textarea class="textarea textarea-bordered w-full h-96 resize-none" placeholder="Введите причину отчисления здесь..." name="statement"></textarea> <textarea class="textarea textarea-bordered w-full h-96 resize-none" placeholder="Введите причину отчисления..." name="statement">Прошу отчислить меня по собственному желанию в связи с </textarea>
</div> </div>
<div class="join w-full mt-4 flex gap-2"> <div class="join w-full mt-4 flex gap-2">
<button onclick="exit_modal.showModal()" class="relative btn btn-primary rounded-full flex-grow-0 w-[3rem] h-[3rem]"> <a href="/" class="relative btn btn-primary rounded-full flex-grow-0 w-[3rem] h-[3rem]">
<img class="absolute p-3" src="img/exit.svg" alt=""/> <img class="absolute p-3" src="img/exit.svg" alt=""/>
</button> </a>
<button id="gen" class="btn rounded-full btn-primary flex-grow w-30">Сгенерировать</button> <button id="gen" class="btn rounded-full btn-primary flex-grow w-30">Сгенерировать</button>
@* <a href="otchislenie/result" class="btn rounded-full btn-primary flex-grow w-30">Сгенерировать</a> *@
<button onclick="info_modal.showModal()" class="btn btn-primary rounded-full flex-grow-0 w-[3rem]">?</button> <button onclick="info_modal.showModal()" class="btn btn-primary rounded-full flex-grow-0 w-[3rem]">?</button>
</div> </div>
</div> </div>

View File

@@ -17,6 +17,9 @@ export function onLoad() {
} }
generateButton.addEventListener('click', async () => { generateButton.addEventListener('click', async () => {
// удаляем пробелы в начале и в конце строки
statementField.value = statementField.value.trim();
hideLoadingModal(false); hideLoadingModal(false);
console.log('Начата генерация заявления'); console.log('Начата генерация заявления');
generateStatementModal.showModal(); generateStatementModal.showModal();
@@ -79,9 +82,6 @@ export function onLoad() {
localStorage.setItem('statement', statementField.value); localStorage.setItem('statement', statementField.value);
if (statementField.value.length > 50) { if (statementField.value.length > 50) {
// удаляем пробелы в начале и в конце строки
statementField.value = statementField.value.trim();
generateButton.classList.remove('btn-disabled'); generateButton.classList.remove('btn-disabled');
} else } else
generateButton.classList.add('btn-disabled'); generateButton.classList.add('btn-disabled');

View File

@@ -48,6 +48,7 @@ if (!app.Environment.IsDevelopment())
app.UseStaticFiles(); app.UseStaticFiles();
app.UseAntiforgery(); app.UseAntiforgery();
app.MapControllers(); app.MapControllers();
app.UseAuthorization();
app.UseForwardedHeaders(); app.UseForwardedHeaders();
app.MapRazorComponents<App>(); app.MapRazorComponents<App>();