Merge branch 'css' of ParkSuMin/Cursovaya into main

Основная работа по переходу на bootstrap
This commit is contained in:
2024-11-30 18:02:41 +00:00
committed by Gogs
11 changed files with 393 additions and 213 deletions

View File

@@ -1,28 +1,60 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<html lang="en" data-bs-theme="light">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Авторизация</title>
<link href="/static/css/auth.css" type="text/css" rel="stylesheet">
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
</head>
<body>
<h1>Авторизация</h1>
<div class="form">
<form action="" method="post" name="auth">
<label for="login">Логин: </label>
<input type="text" name="login" required>
<label for="password">Пароль: </label>
<input type="password" name="password" required><br>
<p>
Уровень доступа:
<select name="access">
<option value="internal_users">Внутренний</option>
<option value="external_users">Внешний</option>
</select>
</p>
<input type="submit" value="Вход">
</form>
</div>
</body>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<!-- Custom styles for this template -->
<link
href="https://getbootstrap.com/docs/5.3/examples/sign-in/sign-in.css"
rel="stylesheet"
/>
</head>
<body class="d-flex align-items-center py-4 bg-body-tertiary">
<main class="form-signin w-100 m-auto">
<form name="auth" action="" method="post">
<h1 class="h3 mb-3 fw-normal">Авторизация</h1>
<div class="form-floating">
<input
class="form-control"
name="login"
placeholder="test"
type="text"
required
/>
<label for="floatingInput">Имя пользователя</label>
</div>
<div class="form-floating">
<input
type="password"
class="form-control"
name="password"
placeholder="tset"
required
/>
<label for="floatingPassword">Пароль</label>
</div>
<div class="my-3">
<select class="form-select" required="" name="access">
<option value="" selected="selected">Уровень доступа</option>
<option value="internal_users">Внутренний</option>
<option value="external_users">Внешний</option>
</select>
</div>
<button class="w-100 btn btn-lg btn-success" type="submit">Вход</button>
</form>
</main>
</body>
</html>

View File

@@ -1,15 +1,21 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>Успех</title>
<link href="/static/css/auth.css" type="text/css" rel="stylesheet">
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
<h1>Успешно!</h1>
<p>Отчет успешно добавлен в базу данных!</p>
<a href="{{ url_for('index') }}"><button>На главную страницу</button></a>
<a href="{{ url_for('report_bp.menu') }}"><button>В меню отчетов</button></a>
<body class="d-flex flex-column h-100">
<main class="flex-shrink-0">
<div class="container">
<h1 class="mt-5">Успешно!</h1>
<p class="lead">Отчет успешно добавлен в базу данных!</p>
<div class="gap-2 py-5">
<a href="{{ url_for('index') }}"><button class="btn btn-primary">На главную страницу</button></a>
<a href="{{ url_for('report_bp.menu') }}"><button class="btn btn-primary">В меню отчетов</button></a>
</div>
</div>
</main>
</body>
</html>

View File

@@ -1,21 +1,35 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>{{ title }}</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link href="/static/css/report.css" type="text/css" rel="stylesheet">
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<link
href="https://getbootstrap.com/docs/5.3/assets/css/docs.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="/static/js/check.js"></script>
</head>
<body>
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
<body class="p-3 m-0 border-0 bd-example m-0 border-0">
<div class="row flex-nowrap justify-content-between pb-5">
<div class="col-1 pt-1"></div>
<div class="col-10 text-center">
<h1 class="display-5 fw-bold">{{ title }}</h1>
</div>
<div class="col-1 d-flex justify-content-end align-items-center">
<a href="{{ url_for('logout') }}"><button class="btn btn-danger">Выход</button></a>
</div>
</div>
<h1>{{ title }}</h1>
<div class="form">
<div class="form py-5">
<form action="" method="post" onsubmit="return check_month({{ date_today.month }}, {{ date_today.year }})">
<label for="category">Выберите предмет формирования отчета</label>
<select name="category" id="category" required>
<select class="form-select" name="category" id="category" required>
{% for item in items.keys() %}
<option value="{{ item }}">{{ items[item]['name'] }}</option>
{% endfor %}
@@ -23,7 +37,7 @@
<label for="month">Выберите отчетный период</label>
<div class="period">
<select name="month" id="month" required>
<select class="form-select" name="month" id="month" required>
<option value="1">Январь</option>
<option value="2">Февраль</option>
<option value="3">Март</option>
@@ -37,18 +51,19 @@
<option value="11">Ноябрь</option>
<option value="12">Декабрь</option>
</select>
<input type="number" id= "year" name="year" value={{ date_today.year }} min="2000" max={{ date_today.year }} required>
<input class="form-control" type="number" id= "year" name="year" value={{ date_today.year }} min="2000" max={{ date_today.year }} required>
</div>
{% if is_write %}
<button type="submit" value="write">Создать</button>
<button class="btn btn-primary" type="submit" value="write">Создать</button>
{% else %}
<button type="submit" value="read">Просмотр</button>
<button class="btn btn-primary" type="submit" value="read">Просмотр</button>
{% endif %}
</form>
</div>
<div class="return">
<a href="{{ url_for('index') }}"><button>Главное меню</button></a>
<div class="d-flex justify-content-center mt-5">
<a href="{{ url_for('index') }}"><button class="btn btn-warning">Главное меню</button></a>
</div>
</body>
</html>

View File

@@ -1,21 +1,43 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>Меню отчетов</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<link
href="https://getbootstrap.com/docs/5.3/assets/css/docs.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
<body class="p-3">
<div class="row flex-nowrap justify-content-between">
<div class="col-1 pt-1"></div>
<div class="col-10 text-center">
<label class="display-5 fw-bold">Выберите вариант отчетов</label>
</div>
<div class="col-1 d-flex justify-content-end align-items-center">
<a href="{{ url_for('logout') }}"><button class="btn btn-danger">Выход</button></a>
</div>
</div>
<h1>Выберите вариант отчетов</h1>
<div class="buttons_menu">
<a href="{{ url_for('report_bp.create') }}"><button>Создать отчет</button></a>
<a href="{{ url_for('report_bp.view') }}"><button>Читать отчеты</button></a>
</div>
<div class="return">
<a href="{{ url_for('index') }}"><button>Главное меню</button></a>
<div class="container">
<div class="row justify-content-center">
<div class="col-12 d-flex justify-content-center">
<div class="btn-group py-5" role="group" aria-label="Basic example">
<a href="{{ url_for('report_bp.create') }}"><button type="button" class="btn btn-primary me-2">Создать отчет</button></a>
<a href="{{ url_for('report_bp.view') }}"><button type="button" class="btn btn-secondary">Читать отчеты</button></a>
</div>
</div>
</div>
<div class="row justify-content-center">
<div class="col-12 d-flex justify-content-center">
<a href="{{ url_for('index') }}"><button class="btn btn-warning">Главное меню</button></a>
</div>
</div>
</div>
</body>
</html>
</html>

View File

@@ -1,30 +1,49 @@
<!DOCTYPE html>
<html lang="ru">
<html lang="ru" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>Поставки поставщиком</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<link
href="https://getbootstrap.com/docs/5.3/assets/css/docs.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
</div>
<!-- Input -->
<h1>Поставки поставщиком</h1>
<div class="form">
<p>Выберите поставщика</p>
<form action="" method="post">
<select name="seller">
{% for seller in sellers %}
<option value="{{ seller['name'] }}">{{ seller['name'] }}</option>
{% endfor %}
</select>
<input type="submit" value="Отправить">
</form>
<div class="return">
<a href="{{ url_for('requests_bp.requests') }}"><button>Обратно в меню запросов</button></a>
<body class="p-3 m-0 border-0">
<header>
<div class="row flex-nowrap justify-content-between pb-5">
<div class="col-1 pt-1"></div>
<div class="col-10 text-center">
<h1 class="display-5 fw-bold">Поставки поставщиком</h1>
</div>
<div class="col-1 d-flex justify-content-end align-items-center">
<a href="{{ url_for('logout') }}"><button class="btn btn-danger">Выход</button></a>
</div>
</div>
</div>
</header>
<main class="flex-shrink-0">
<div class="form py-5">
<form action="" method="post" style="display: inline-block;">
<label>Выберите поставщика</label>
<select class="form-select" name="seller">
{% for seller in sellers %}
<option value="{{ seller['name'] }}">{{ seller['name'] }}</option>
{% endfor %}
</select>
<button type="submit" class="btn btn-primary">Отправить</button>
</form>
<div class="d-flex justify-content-center mt-5">
<a href="{{ url_for('requests_bp.requests') }}"><button class="btn btn-warning">Обратно в меню запросов</button></a>
</div>
</div>
</main>
</body>
</html>
</html>

View File

@@ -1,32 +1,53 @@
<!DOCTYPE html>
<html lang="ru">
<html lang="ru" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>Количество заготовок на складе</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<link
href="https://getbootstrap.com/docs/5.3/assets/css/docs.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
</div>
<!-- Input -->
<h1>Количество заготовок на складе</h1>
<div class="form">
<form action="" method="post" style="display: inline-block;">
<p>Выберите материал<p></p>
<select name="material">
<option value="Сталь">Сталь</option>
<option value="Алюминий">Алюминий</option>
<option value="Медь">Медь</option>
<option value="Пластик">Пластик</option>
<option value="Дерево">Дерево</option>
</select>
<input type="submit" value="Отправить">
</form>
<div class="return">
<a href="{{ url_for('requests_bp.requests') }}"><button>Обратно в меню запросов</button></a>
<body class="p-3 m-0 border-0">
<header>
<div class="row flex-nowrap justify-content-between pb-5">
<div class="col-1 pt-1"></div>
<div class="col-10 text-center">
<h1 class="display-5 fw-bold">Количество заготовок на складе</h1>
</div>
<div class="col-1 d-flex justify-content-end align-items-center">
<a href="{{ url_for('logout') }}"><button class="btn btn-danger">Выход</button></a>
</div>
</div>
</div>
</header>
<!-- Input -->
<main class="flex-shrink-0">
<div class="form py-5">
<form action="" method="post" style="display: inline-block;">
<label>Выберите материал</label>
<select class="form-select" name="material">
<option value="Сталь">Сталь</option>
<option value="Алюминий">Алюминий</option>
<option value="Медь">Медь</option>
<option value="Пластик">Пластик</option>
<option value="Дерево">Дерево</option>
</select>
<button type="submit" class="btn btn-primary">Отправить</button>
</form>
<div class="d-flex justify-content-center mt-5">
<a href="{{ url_for('requests_bp.requests') }}"><button class="btn btn-warning">Обратно в меню запросов</button></a>
</div>
</div>
</main>
</body>
</html>

View File

@@ -1,22 +1,43 @@
<!DOCTYPE html>
<html lang="ru">
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>Запросы</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<link
href="https://getbootstrap.com/docs/5.3/assets/css/docs.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
<body class="p-3 m-0">
<div class="row flex-nowrap justify-content-between">
<div class="col-1 pt-1"></div>
<div class="col-10 text-center">
<label class="display-5 fw-bold">Выберите вариант запроса</label>
</div>
<div class="col-1 d-flex justify-content-end align-items-center">
<a href="{{ url_for('logout') }}"><button class="btn btn-danger">Выход</button></a>
</div>
</div>
<h1>Выберите вариант запроса</h1>
<div class="buttons_menu">
{% for point in options %}
<a href="{{ url_for(point['url']) }}"><button>{{ point['name'] }}</button></a>
{% endfor %}
</div>
<div class="return">
<a href="{{ url_for('index') }}"><button>Главное меню</button></a>
<div class="container">
<div class="row justify-content-center">
<div class="col-12 d-flex justify-content-center">
<div class="btn-group py-5" role="group" aria-label="Basic example">
{% for point in options %}
<a href="{{ url_for(point['url']) }}"><button class="btn btn-primary me-2">{{ point['name'] }}</button></a>
{% endfor %}
</div>
</div>
</div>
<div class="row justify-content-center">
<div class="col-12 d-flex justify-content-center">
<a href="{{ url_for('index') }}"><button class="btn btn-warning">Главное меню</button></a>
</div>
</div>
</div>
</body>
</html>
</html>

View File

@@ -1,55 +1,3 @@
h1, h2 {
text-align: center;
}
body {
background-color: #87CEEB;
}
button {
background-color: #067936;
border-radius: 10px;
padding: 10px 20px;
border: none;
color: white;
cursor: pointer;
margin-top: 10px;
}
input[type=submit] {
background-color: #f2c464;
}
div.logout, div.login {
position: absolute;
right: 2%;
text-align: center;
}
div.buttons_menu{
text-align: center;
margin: 20px 0;
}
div.logout button {
margin-top: -5px;
background-color: #ff0000;
}
div.login button {
margin-top: -5px;
background-color: #176917;
}
div.return {
text-align: center;
margin: 20px 0;
}
div.return button {
background-color: chocolate;
}
div.form {
margin-left: 30%;
margin-right: 30%;
@@ -58,6 +6,7 @@ div.form {
padding: 20px;
border-radius: 10px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
color: black;
}
div.form label {
@@ -75,7 +24,3 @@ div.form select, div.form input[type=number] {
width: 100%;
box-sizing: border-box;
}
div.form button {
margin-top: 15px;
}

View File

@@ -1,14 +1,18 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>Ошибка</title>
<link href="/static/css/auth.css" type="text/css" rel="stylesheet">
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
<h1>Сожалеем</h1>
<p>{{ error_message }}</p>
<a href="{{ url_for('index') }}"><button>На главную страницу</button></a>
<body class="d-flex flex-column h-100">
<main class="flex-shrink-0">
<div class="container">
<h1 class="mt-5">Сожалеем</h1>
<p class="lead"> {{ error_message }}</p>
<a href="{{ url_for('index') }}"><button class="btn btn-primary">На главную страницу</button></a>
</div>
</main>
</body>
</html>

View File

@@ -1,25 +1,95 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>Главное меню</title>
<link href="static/css/main.css" type="text/css" rel="stylesheet">
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<link
href="https://getbootstrap.com/docs/5.3/assets/css/docs.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
{% if 'role' in ses %}
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
<body class="p-3 m-0 border-0 bd-example m-0 border-0">
<header>
<div class="row flex-nowrap justify-content-between">
<div class="col-1 pt-1"></div>
<div class="col-10 text-center">
{% if 'role' in ses %}
<label class="display-5 fw-bold">Добро пожаловать, {{ ses['login'] }}</label>
{% else %}
<label class="display-5 fw-bold">Добро пожаловать!</label>
{% endif %}
</div>
<div class="col-1 d-flex justify-content-end align-items-center">
{% if 'role' in ses %}
<a href="{{ url_for('logout') }}"><button class="btn btn-danger">Выход</button></a>
{% else %}
<a href="{{ url_for('auth_bp.auth') }}"><button class="btn btn-success">Авторизация</button></a>
{% endif %}
</div>
</div>
</header>
<main class="flex-shrink-0">
<div class="d-flex gap-2 justify-content-center py-5">
{% if ses['access_user'] == 'internal_users' %}
<div class="d-flex justify-content-center">
<div class="feature col">
<div
class="feature-icon d-inline-flex align-items-center justify-content-center text-bg-primary bg-gradient fs-2 mb-3"
>
</div>
<h3 class="fs-2 text-body-emphasis">Запросы</h3>
<!-- <p>
Paragraph of text beneath the heading to explain the heading. We'll
add onto it with another sentence and probably just keep going until
we run out of words.
</p> -->
<a href="{{ url_for('requests_bp.requests') }}">
<button class="btn btn-primary">Перейти</button>
</a>
<div class="feature col">
<div
class="feature-icon d-inline-flex align-items-center justify-content-center text-bg-primary bg-gradient fs-2 mb-3"
>
</div>
<h3 class="fs-2 text-body-emphasis">Отчёты</h3>
<!-- <p>
Paragraph of text beneath the heading to explain the heading. We'll
add onto it with another sentence and probably just keep going until
we run out of words.
</p> -->
<a href="{{ url_for('report_bp.menu') }}">
<button class="btn btn-primary">Перейти</button>
</a>
</div>
</div>
</div>
{% else %}
<div class="feature col">
<div
class="feature-icon d-inline-flex align-items-center justify-content-center text-bg-primary bg-gradient fs-2 mb-3"
>
</div>
{% endif %}
</div>
</main>
<!-- {% if 'role' in ses %}
<label class="display-5 fw-bold">Добро пожаловать, username</label>
<h1>Здравствуйте, {{ ses['login'] }}!</h1>
{% if ses['access_user'] == 'internal_users' %}
<h2> Ваша роль: {{ ses['role'] }}</h2>
<!-- Not implemented -->
<div class="buttons_menu">
<a href="{{ url_for('requests_bp.requests') }}"><button>Запросы</button></a>
<a href="{{ url_for('report_bp.menu') }}"><button>Отчеты</button></a>
</div>
{% else %}
<!-- <p>Not implemented</p> -->
<div class="buttons_menu">
<a href="{{ url_for('waybill_bp.waybill') }}"><button>Новая накладная</button></a>
</div>
@@ -30,6 +100,6 @@
</div>
<h1>Здравствуйте!</h1>
<p>Для использования системы, пожалуйста, пройдите процедуру авторизации</p>
{% endif %}
{% endif %} -->
</body>
</html>

View File

@@ -1,36 +1,61 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" data-bs-theme="dark">
<head>
<meta charset="UTF-8">
<title>{{ header }}</title>
<link href="/static/css/main.css" type="text/css" rel="stylesheet">
<link href="/static/css/output.css" type="text/css" rel="stylesheet">
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css"
rel="stylesheet"
/>
<link
href="https://getbootstrap.com/docs/5.3/assets/css/docs.css"
rel="stylesheet"
/>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
<div class="logout">
<a href="{{ url_for('logout') }}"><button>Выход</button></a>
<body class="p-3 m-0 border-0 bd-example m-0 border-0">
<div class="row flex-nowrap justify-content-between">
<div class="col-1 pt-1"></div>
<div class="col-10 text-center">
<label class="display-5 fw-bold">{{ header }}</label>
</div>
<div class="col-1 d-flex justify-content-end align-items-center">
<a href="{{ url_for('logout') }}"><button class="btn btn-danger">Выход</button></a>
</div>
</div>
<h1>{{ header }}</h1>
<!-- Output -->
{% if items %}
<table>
<tr>
{% for key in items[0].keys() %}
<th>{{ key }}</th>
{% endfor %}
</tr>
{% for item in items %}
<tr>
{% for value in item.values() %}
<td>{{ value }}</td>
{% endfor %}
</tr>
{% endfor %}
</table>
<div class="row flex-nowrap justify-content-between py-5">
<div class="col-3"></div>
<div class="col-6">
<table class="table">
<thead class="table-dark">
<tr>
{% for key in items[0].keys() %}
<th>{{ key }}</th>
{% endfor %}
</tr>
</thead>
<tbody>
{% for item in items %}
<tr>
{% for value in item.values() %}
<td>{{ value }}</td>
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
</div>
<div class="col-3"></div>
</div>
{% else %}
<p>Информации не найдено</p>
<div class="d-flex justify-content-center gap-2 py-5">
<p>Информации не найдено</p>
</div>
{% endif %}
<div class="return">
<a href="{{ link }}"><button>Вернуться в меню выбора</button></a>
</div></body>
<div class="d-flex justify-content-center gap-2">
<a href="{{ link }}"><button class="btn btn-primary">Вернуться в меню выбора</button></a>
</div>
</body>
</html>