This commit is contained in:
ShabOl 2023-12-08 00:52:08 +04:00
parent f487be606d
commit 31df2dcac5
44 changed files with 4793 additions and 2 deletions

42
.gitignore vendored Normal file
View File

@ -0,0 +1,42 @@
# See http://help.github.com/ignore-files/ for more about ignoring files.
# Compiled output
/dist
/tmp
/out-tsc
/bazel-out
# Node
/node_modules
npm-debug.log
yarn-error.log
# IDEs and editors
.idea/
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace
# Visual Studio Code
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
.history/*
# Miscellaneous
/.angular/cache
.sass-cache/
/connect.lock
/coverage
/libpeerconnection.log
testem.log
/typings
# System files
.DS_Store
Thumbs.db

View File

@ -1,3 +1,3 @@
# Отчёт по лабораторной работе №1
# Отчёт по лабораторной работе №2
Файл отчета: `Отчет лаб1.docx`
Файл отчета: `Отчет лаб2.docx`

178
about_us.html Normal file
View File

@ -0,0 +1,178 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>О нас</title>
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.2/font/bootstrap-icons.min.css">
<link href="style.css" rel="stylesheet">
</head>
<body class="d-flex flex-column min-vh-100">
<header>
<nav class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark">
<div class="container-md">
<a href="index.html" class="navbar-brand">
<i class="bi bi-film"></i>
<span class="fw-bold text-uppercase ms-2">СигмаТеатр</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#main-nav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end align-center" id="main-nav">
<ul class="navbar-nav">
<li class="nav-item me-3">
<a href="index.html#movies" class="nav-link">Фильмы</a>
</li>
<li class="nav-item me-3">
<a href="index.html#series" class="nav-link">Сериалы</a>
</li>
<li class="nav-item me-3">
<a href="about_us.html" class="nav-link">Справка</a>
</li>
<li class="nav-item me-3">
<a href="login.html" class="nav-link">Вход в аккаунт</a>
</li>
<li class="nav-item d-lg-none">
<a href="pricing.html" class="nav-link text-light">Купить подписку</a>
</li>
<li class="nav-item d-none d-lg-inline">
<a href="pricing.html" class="btn btn-light">Купить подписку</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<main>
<!-- Contact Info -->
<section id="contact-info">
<div class="container-md py-4">
<div class="row gx-5 gy-5">
<div class="col-lg-5">
<h2 class="text-center mb-5">Контактные данные</h2>
<ul class="list-group list-group-flush">
<li class="list-group-item">
<span class="fw-bold">Страна:</span> Россия
</li>
<li class="list-group-item">
<span class="fw-bold">Адрес:</span> 432029, Ульяновск
</li>
<li class="list-group-item">
<span class="fw-bold">Телефон:</span> +7 (987) 654 32-10
</li>
<li class="list-group-item">
<span class="fw-bold">Факс:</span> +49 221 95491533
</li>
<li class="list-group-item">
<span class="fw-bold">Электронная почта:</span> sigmacinema@gmail.com
</li>
<li class="list-group-item">
<span class="fw-bold">ИНН:</span> 7743013902
</li>
</ul>
</div>
<div class="col-lg-7">
<h2 class="text-center mb-5">Мы на карте</h2>
<iframe
src="https://www.google.com/maps/embed/v1/place?q=Ульяновск,+Россия,+432029&key=AIzaSyBFw0Qbyq9zTFTd-tUY6dZWTgaQzuU17R8"
width="100%" height="500" allowfullscreen="" loading="lazy"
referrerpolicy="no-referrer-when-downgrade"></iframe>
</div>
</div>
</div>
</section>
<!-- Feedback -->
<section id="feedback" class="bg-light">
<div class="container-md py-4 mt-5">
<div class="text-center">
<h2>Остались вопросы?</h2>
<p class="lead text-muted">Задайте ваш вопрос нашей службе поддержки - мы постараемся ответить на него в ближайшее время</p>
</div>
<div class="row justify-content-center mt-5">
<div class="col-lg-6">
<form>
<label for="email" class="form-label">Ваш адрес электронной почты</label>
<div class="input-group mb-3">
<span class="input-group-text"><i class="bi bi-envelope-fill"></i></span>
<input type="email" class="form-control" id="email" placeholder="myemail@mail.com">
</div>
<label for="name" class="form-label">Ваше имя</label>
<div class="input-group mb-3">
<span class="input-group-text"><i class="bi bi-person-fill"></i></span>
<input type="text" class="form-control" id="name" placeholder="Иванов Иван">
</div>
<label for="subject" class="form-label">О чем ваш вопрос?</label>
<div class="input-group mb-4">
<span class="input-group-text"><i class="bi bi-chat-right-dots-fill"></i></span>
<select id="subject" class="form-select">
<option value="pricing" selected>Оплата подписки</option>
<option value="content">Фильмы или сериалы</option>
<option value="other">Другое</option>
</select>
</div>
<textarea id="query" class="form-control" style="height: 140px" placeholder="Ваш вопрос..."></textarea>
<div class="text-center mt-4">
<button type="submit" class="btn btn-secondary" data-bs-toggle="modal" data-bs-target="#querry-modal">
Отправить
</button>
</div>
</form>
</div>
</div>
</div>
</section>
<!-- Querry Modal -->
<div class="modal fade" id="querry-modal" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="modal-title">Ваш вопрос отправлен</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
</div>
<div class="modal-body">
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Sint natus cum nihil. Minus, porro.</p>
</div>
</div>
</div>
</div>
</main>
<footer class="py-2 bg-dark text-light mt-auto">
<div class="container-md py-2">
<div class="d-flex flex-wrap justify-content-between align-items-center">
<div>
<div class="download-buttons-container justify-content-start">
<a href="https://play.google.com/store/games?hl=ru&gl=US"><img src="assets/footer/download-buttons/GooglePlay.svg" class="download-button" alt=""></a>
<a href="https://www.huawei.ru/appgallery/"><img src="assets/footer/download-buttons/AppGallery.svg" class="download-button" alt=""></a>
<a href="https://www.apple.com/app-store/"><img src="assets/footer/download-buttons/AppStore.svg" class="download-button" alt=""></a>
</div>
<h6 class="text-secondary mt-3">&copy; 2023 СигмаТеатр</h6>
</div>
<div class="download-buttons-container">
<a href="index.html" class="text-secondary text-decoration-none footer-navigation-button">Главная</a>
<a href="#" class="text-secondary text-decoration-none footer-navigation-button">Политика конфиденциальности</a>
<a href="about_us.html" class="text-secondary text-decoration-none footer-navigation-button">О нас</a>
<a href="admin_panel.html" class="text-secondary text-decoration-none footer-navigation-button">Страница администратора</a>
</div>
</div>
</div>
</footer>
</body>
</html>

178
admin_panel.html Normal file
View File

@ -0,0 +1,178 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CRUD администрирование</title>
<script type="module" src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.2/font/bootstrap-icons.min.css">
<link href="./node_modules/@fortawesome/fontawesome-free/css/all.min.css" rel="stylesheet" />
<link href="style.css" rel="stylesheet">
</head>
<body class="d-flex flex-column min-vh-100">
<header>
<nav class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark">
<div class="container-md">
<a href="index.html" class="navbar-brand">
<i class="bi bi-film"></i>
<span class="fw-bold text-uppercase ms-2">СигмаТеатр</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#main-nav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end align-center" id="main-nav">
<ul class="navbar-nav">
<li class="nav-item me-3">
<a href="index.html#movies" class="nav-link">Фильмы</a>
</li>
<li class="nav-item me-3">
<a href="index.html#series" class="nav-link">Сериалы</a>
</li>
<li class="nav-item me-3">
<a href="about_us.html" class="nav-link">Справка</a>
</li>
<li class="nav-item me-3">
<a href="login.html" class="nav-link">Вход в аккаунт</a>
</li>
<li class="nav-item d-lg-none">
<a href="pricing.html" class="nav-link text-light">Купить подписку</a>
</li>
<li class="nav-item d-none d-lg-inline">
<a href="pricing.html" class="btn btn-light">Купить подписку</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<main>
<section id="movies">
<div class="container-md py-4 mb-4">
<div class="text-center">
<h2>Страница администратора</h2>
<p class="lead text-muted">Выполнение CRUD-операций над фильмами или сериалами</p>
</div>
<button class="btn btn-primary" id="items-add">Добавить запись</button>
<table id="items-table" class="table table-striped">
<thead>
<tr>
<th scope="col"></th>
<th scope="col" class="w-25">Название</th>
<th scope="col" class="w-25">Категория</th>
<th scope="col" class="w-25">Требуется подписка</th>
<th scope="col" class="w-25">Год производства</th>
<th scope="col"></th>
<th scope="col"></th>
</tr></thead>
<tbody>
<tr id="line-1">
<th scope="row">1</th>
<td>Американский психопат</td>
<td>Фильм</td>
<td>+</td>
<td>1999</td>
<td><a href="#"><i class="fa-solid fa-pencil"></i></a></td>
<td><a href="#"><i class="fa-solid fa-trash"></i></a></td>
</tr>
<tr id="line-2">
<th scope="row">2</th>
<td>Драйв</td>
<td>Фильм</td>
<td>-</td>
<td>1999</td>
<td><a href="#"><i class="fa-solid fa-pencil"></i></a></td>
<td><a href="#"><i class="fa-solid fa-trash"></i></a></td>
</tr>
<tr id="line-3">
<th scope="row">3</th>
<td>Острые козырьки</td>
<td>Сериал</td>
<td>-</td>
<td>1999</td>
<td><a href="#"><i class="fa-solid fa-pencil"></i></a></td>
<td><a href="#"><i class="fa-solid fa-trash"></i></a></td>
</tr>
</tbody>
</table>
</div>
</section>
</main>
<footer class="py-2 bg-dark text-light mt-auto">
<div class="container-md py-2">
<div class="d-flex flex-wrap justify-content-between align-items-center">
<div>
<div class="download-buttons-container justify-content-start">
<a href="https://play.google.com/store/games?hl=ru&gl=US"><img src="assets/footer/download-buttons/GooglePlay.svg" class="download-button" alt=""></a>
<a href="https://www.huawei.ru/appgallery/"><img src="assets/footer/download-buttons/AppGallery.svg" class="download-button" alt=""></a>
<a href="https://www.apple.com/app-store/"><img src="assets/footer/download-buttons/AppStore.svg" class="download-button" alt=""></a>
</div>
<h6 class="text-secondary mt-3">&copy; 2023 СигмаТеатр</h6>
</div>
<div class="download-buttons-container">
<a href="index.html" class="text-secondary text-decoration-none footer-navigation-button">Главная</a>
<a href="#" class="text-secondary text-decoration-none footer-navigation-button">Политика конфиденциальности</a>
<a href="about_us.html" class="text-secondary text-decoration-none footer-navigation-button">О нас</a>
<a href="admin_panel.html" class="text-secondary text-decoration-none footer-navigation-button">Страница администратора</a>
</div>
</div>
</div>
</footer>
<!-- CRUD modal -->
<div id="items-update" class="modal fade" tabindex="-1" data-bs-backdrop="static" data-bs-keyboard="false">
<div class="modal-dialog">
<form id="items-form" class="needs-validation" novalidate>
<div class="modal-content">
<div class="modal-header">
<h1 class="modal-title fs-5" id="items-update-title"></h1>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<div class="text-center">
<img id="image-preview" src="https://via.placeholder.com/200" class="rounded rounded-circle"
alt="placeholder">
</div>
<input id="items-line-id" type="number" hidden>
<div class="mb-2">
<label for="item" class="form-label">Товары</label>
<select id="item" class="form-select" name="selected" required>
</select>
</div>
<div class="mb-2">
<label class="form-label" for="price">Цена</label>
<input id="price" name="price" class="form-control" type="number" value="0.00" min="1000.00"
step="0.50" required>
</div>
<div class="mb-2">
<label class="form-label" for="count">Количество</label>
<input id="count" name="count" class="form-control" type="number" value="0" min="1" step="1"
required>
</div>
<div class="mb-2">
<label class="form-label" for="image">Изображение</label>
<input id="image" type="file" name="image" class="form-control" accept="image/*">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Закрыть</button>
<button type="submit" class="btn btn-primary">Сохранить</button>
</div>
</div>
</form>
</div>
</div>
</body>
</html>

BIN
assets/LoginBG.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

BIN
assets/LoginBG_2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

@ -0,0 +1,3 @@
<svg fill="#fff" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
<path fill-rule="evenodd" d="M12.59 16.594l-2.593 2.423s-.203.157-.425.059l.497-4.5.017.013.01-.092s7.272-6.697 7.57-6.982c.298-.285.198-.346.198-.346.02-.346-.536 0-.536 0l-9.636 6.27-4.013-1.384s-.616-.224-.676-.713c-.06-.488.696-.753.696-.753l15.953-6.412s1.312-.59 1.312.387L18.123 19.24s-.398 1.018-1.49.53l-4.043-3.176z"/>
</svg>

After

Width:  |  Height:  |  Size: 436 B

View File

@ -0,0 +1,3 @@
<svg fill="#fff" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
<path fill-rule="evenodd" d="M19.761 6.474a3.949 3.949 0 0 0 1.715-2.185 7.732 7.732 0 0 1-2.477.957A3.865 3.865 0 0 0 16.154 4c-2.15 0-3.897 1.77-3.897 3.95 0 .31.034.61.101.9-3.24-.166-6.111-1.736-8.036-4.13a3.986 3.986 0 0 0-.527 1.99c0 1.368.688 2.578 1.734 3.286a3.861 3.861 0 0 1-1.766-.492v.048c0 1.915 1.344 3.512 3.128 3.873a3.83 3.83 0 0 1-1.762.07c.497 1.569 1.936 2.71 3.643 2.741A7.754 7.754 0 0 1 3 17.873a10.945 10.945 0 0 0 5.975 1.774c7.17 0 11.091-6.018 11.091-11.238 0-.172-.003-.344-.01-.512A7.945 7.945 0 0 0 22 5.852c-.71.32-1.465.53-2.239.622z"/>
</svg>

After

Width:  |  Height:  |  Size: 677 B

3
assets/footer/VK.svg Normal file
View File

@ -0,0 +1,3 @@
<svg fill="#fff" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
<path fill-rule="evenodd" d="M22.463 6.823c.095-.447-.116-.698-.615-.698h-2.515c-.576 0-.787.233-.96.572 0 0-1.36 2.7-3.013 4.4-.532.55-.802.715-1.095.715-.236 0-.345-.183-.345-.68V6.788c0-.608-.077-.787-.615-.787H9.274c-.307 0-.5.166-.5.393 0 .573.941.702.941 2.254v3.2c0 .645-.038.895-.364.895-.864 0-2.918-2.772-4.07-5.92C5.051 6.18 4.801 6 4.148 6H1.634C1.269 6 1 6.232 1 6.572c0 .626.787 3.523 3.878 7.404C6.95 16.587 9.678 18 12.134 18c1.498 0 1.862-.232 1.862-.823v-2.003c0-.5.212-.715.519-.715.345 0 .955.103 2.38 1.413C18.585 17.374 18.7 18 19.621 18h2.822c.288 0 .557-.125.557-.572 0-.59-.826-1.646-2.093-2.897-.518-.644-1.363-1.342-1.631-1.664-.384-.375-.269-.59 0-.983 0 0 2.898-3.81 3.187-5.061z"/>
</svg>

After

Width:  |  Height:  |  Size: 819 B

View File

@ -0,0 +1,3 @@
<svg fill="#fff" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24">
<path fill-rule="evenodd" d="M21.654 6.413c-.244-1.145-1.114-1.989-2.162-2.115-2.48-.298-4.99-.3-7.489-.298-2.499-.001-5.01 0-7.49.298-1.046.126-1.916.97-2.16 2.115C2.002 8.043 2 9.822 2 11.5s0 3.457.348 5.087c.245 1.144 1.115 1.989 2.162 2.115 2.48.298 4.99.3 7.49.298 2.499.001 5.009 0 7.488-.298 1.047-.126 1.917-.97 2.162-2.115.349-1.63.35-3.409.35-5.087s.003-3.457-.346-5.087zM10 15V8l6 3.51L10 15z"/>
</svg>

After

Width:  |  Height:  |  Size: 514 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.0 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 551 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 970 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 365 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 297 KiB

BIN
assets/pricing/diamond.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
assets/pricing/no-ads.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

184
index.html Normal file
View File

@ -0,0 +1,184 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>СигмаТеатр</title>
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.2/font/bootstrap-icons.min.css">
<link href="style.css" rel="stylesheet">
</head>
<body class="d-flex flex-column min-vh-100">
<header>
<nav class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark">
<div class="container-md">
<a href="index.html" class="navbar-brand">
<i class="bi bi-film"></i>
<span class="fw-bold text-uppercase ms-2">СигмаТеатр</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#main-nav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end align-center" id="main-nav">
<ul class="navbar-nav">
<li class="nav-item me-3">
<a href="index.html#movies" class="nav-link">Фильмы</a>
</li>
<li class="nav-item me-3">
<a href="index.html#series" class="nav-link">Сериалы</a>
</li>
<li class="nav-item me-3">
<a href="about_us.html" class="nav-link">Справка</a>
</li>
<li class="nav-item me-3">
<a href="login.html" class="nav-link">Вход в аккаунт</a>
</li>
<li class="nav-item d-lg-none">
<a href="pricing.html" class="nav-link text-light">Купить подписку</a>
</li>
<li class="nav-item d-none d-lg-inline">
<a href="pricing.html" class="btn btn-light">Купить подписку</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<main>
<section id="movies">
<div class="container-md py-4 mb-4">
<div class="text-center">
<h2>Самые базированные фильмы</h2>
<p class="lead text-muted">Здесь собраны ваши любимые кинофильмы</p>
</div>
<div class="row gx-5 gy-5 my-3">
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/AmericanPsycho.jpg" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Американский психопат</h5>
<h6 class="text-secondary">По подписке</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/Drive.jpg" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Драйв</h5>
<h6 class="text-secondary">Бесплатно</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/FightClub.png" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Бойцовский клуб</h5>
<h6 class="text-secondary">По подписке</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/Joker.jpg" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Джокер</h5>
<h6 class="text-secondary">По подписке</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/NoCountryForOldMen.jpg" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Старикам здесь не место</h5>
<h6 class="text-secondary">Бесплатно</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/Pusher.png" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Дилер</h5>
<h6 class="text-secondary">По подписке</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/Scarface.png" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Лицо со шрамом</h5>
<h6 class="text-secondary">По подписке</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/BladeRunner2049.jpg" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Бегущий по лезвию - 2049</h5>
<h6 class="text-secondary">Бесплатно</h6>
</a>
</div>
</div>
</div>
</section>
<section id="series" class="bg-light">
<div class="container-md py-4">
<div class="text-center">
<h2>Популярные сериалы</h2>
<p class="lead text-muted">Сериалы, главные герои которых - буквально вы</p>
</div>
<div class="row gx-5 gy-5 my-3">
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/BetterCallSaul.png" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Лучше звоните Солу</h5>
<h6 class="text-secondary">По подписке</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/PeakyBlinders.png" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Острые козырьки</h5>
<h6 class="text-secondary">Бесплатно</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/BreakingBad.png" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Во все тяжкие</h5>
<h6 class="text-secondary">По подписке</h6>
</a>
</div>
<div class="col-6 col-lg-3">
<a href="videoplayer.html" class="text-decoration-none">
<img src="assets/main-page/posters/Sopranos.png" class="img-fluid film-poster" alt="">
<h5 class="text-black mt-3">Клан Сопрано</h5>
<h6 class="text-secondary">Бесплатно</h6>
</a>
</div>
</div>
</div>
</section>
</main>
<footer class="py-2 bg-dark text-light mt-auto">
<div class="container-md py-2">
<div class="d-flex flex-wrap justify-content-between align-items-center">
<div>
<div class="download-buttons-container justify-content-start">
<a href="https://play.google.com/store/games?hl=ru&gl=US"><img src="assets/footer/download-buttons/GooglePlay.svg" class="download-button" alt=""></a>
<a href="https://www.huawei.ru/appgallery/"><img src="assets/footer/download-buttons/AppGallery.svg" class="download-button" alt=""></a>
<a href="https://www.apple.com/app-store/"><img src="assets/footer/download-buttons/AppStore.svg" class="download-button" alt=""></a>
</div>
<h6 class="text-secondary mt-3">&copy; 2023 СигмаТеатр</h6>
</div>
<div class="download-buttons-container">
<a href="index.html" class="text-secondary text-decoration-none footer-navigation-button">Главная</a>
<a href="#" class="text-secondary text-decoration-none footer-navigation-button">Политика конфиденциальности</a>
<a href="about_us.html" class="text-secondary text-decoration-none footer-navigation-button">О нас</a>
<a href="admin_panel.html" class="text-secondary text-decoration-none footer-navigation-button">Страница администратора</a>
</div>
</div>
</div>
</footer>
</body>
</html>

148
login.html Normal file
View File

@ -0,0 +1,148 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Вход в аккаунт</title>
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.2/font/bootstrap-icons.min.css">
<link href="style.css" rel="stylesheet">
</head>
<body class="d-flex flex-column min-vh-100">
<header>
<nav class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark">
<div class="container-md">
<a href="index.html" class="navbar-brand">
<i class="bi bi-film"></i>
<span class="fw-bold text-uppercase ms-2">СигмаТеатр</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#main-nav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end align-center" id="main-nav">
<ul class="navbar-nav">
<li class="nav-item me-3">
<a href="index.html#movies" class="nav-link">Фильмы</a>
</li>
<li class="nav-item me-3">
<a href="index.html#series" class="nav-link">Сериалы</a>
</li>
<li class="nav-item me-3">
<a href="about_us.html" class="nav-link">Справка</a>
</li>
<li class="nav-item me-3">
<a href="login.html" class="nav-link">Вход в аккаунт</a>
</li>
<li class="nav-item d-lg-none">
<a href="pricing.html" class="nav-link text-light">Купить подписку</a>
</li>
<li class="nav-item d-none d-lg-inline">
<a href="pricing.html" class="btn btn-light">Купить подписку</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<main>
<!-- Login -->
<section id="login">
<div class="container-sm py-4">
<div class="text-center">
<h2>Вход в аккаунт</h2>
<p class="lead text-muted">Войдите в ваш аккаунт чтобы воспользоваться подпиской и иметь возможность отмечать желаемые фильмы</p>
</div>
<div class="row justify-content-center mt-5">
<div class="col-lg-4">
<div class="card">
<div class="card-body">
<div class="d-flex flex-row justify-content-center">
<i class="bi bi-person-circle login-icon text-primary"></i>
<p class="lead my-auto ms-3 text-primary">Вход</p>
</div>
<form action="" class="my-3">
<label for="email" class="form-label">Электронная почта</label>
<div class="input-group mb-3">
<span class="input-group-text"><i class="bi bi-envelope-fill"></i></span>
<input type="email" class="form-control" id="email" placeholder="myemail@mail.com">
</div>
<label for="password" class="form-label">Пароль</label>
<div class="input-group mb-3">
<span class="input-group-text"><i class="bi bi-lock-fill"></i></span>
<input type="password" class="form-control" id="password">
</div>
<div class="input-group mt-4 d-flex justify-content-between">
<div class="form-check">
<input type="checkbox" class="form-check-input" id="formCheck">
<label for="formCheck" class="form-check-label text-secondary"><small>Запомнить на этом компьютере</small></label>
</div>
<div class="forgot">
<button class="btn btn-sm text-primary" data-bs-toggle="modal" data-bs-target="#forgot-modal">Забыли пароль?</button>
</div>
</div>
<div class="text-center mt-5">
<button class="btn btn-primary">Войти</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</section>
</main>
<footer class="py-2 bg-dark text-light mt-auto">
<div class="container-md py-2">
<div class="d-flex flex-wrap justify-content-between align-items-center">
<div>
<div class="download-buttons-container justify-content-start">
<a href="https://play.google.com/store/games?hl=ru&gl=US"><img src="assets/footer/download-buttons/GooglePlay.svg" class="download-button" alt=""></a>
<a href="https://www.huawei.ru/appgallery/"><img src="assets/footer/download-buttons/AppGallery.svg" class="download-button" alt=""></a>
<a href="https://www.apple.com/app-store/"><img src="assets/footer/download-buttons/AppStore.svg" class="download-button" alt=""></a>
</div>
<h6 class="text-secondary mt-3">&copy; 2023 СигмаТеатр</h6>
</div>
<div class="download-buttons-container">
<a href="index.html" class="text-secondary text-decoration-none footer-navigation-button">Главная</a>
<a href="#" class="text-secondary text-decoration-none footer-navigation-button">Политика конфиденциальности</a>
<a href="about_us.html" class="text-secondary text-decoration-none footer-navigation-button">О нас</a>
<a href="admin_panel.html" class="text-secondary text-decoration-none footer-navigation-button">Страница администратора</a>
</div>
</div>
</div>
</footer>
<!-- modal itself -->
<div class="modal fade" id="forgot-modal" tabindex="-1">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="modal-title">Восстановление пароля</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
</div>
<div class="modal-body">
<p>В поле ниже напишите адрес электроннной почты, с которой была совершена регистрация. На этот адрес придёт письмо с дальнейшеми указаниями.</p>
<label for="modal-email" class="form-label mt-3">Адрес электронной почты:</label>
<input type="text" class="form-control" id="modal-email" placeholder="myemail@mail.com">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary">Отправить</button>
</div>
</div>
</div>
</div>
</body>
</html>

3684
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

20
package.json Normal file
View File

@ -0,0 +1,20 @@
{
"name": "int-prog",
"version": "1.0.0",
"type": "module",
"scripts": {
"start": "vite",
"serve": "http-server -p 3000 ./dist/",
"build": "vite build",
"prod": "npm-run-all build serve"
},
"dependencies": {
"@fortawesome/fontawesome-free": "6.4.2",
"bootstrap": "^5.3.2"
},
"devDependencies": {
"http-server": "14.1.1",
"npm-run-all": "4.1.5",
"vite": "4.4.9"
}
}

160
pricing.html Normal file
View File

@ -0,0 +1,160 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Подписка</title>
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.2/font/bootstrap-icons.min.css">
<link href="style.css" rel="stylesheet">
</head>
<body class="d-flex flex-column min-vh-100">
<header>
<nav class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark">
<div class="container-md">
<a href="index.html" class="navbar-brand">
<i class="bi bi-film"></i>
<span class="fw-bold text-uppercase ms-2">СигмаТеатр</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#main-nav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end align-center" id="main-nav">
<ul class="navbar-nav">
<li class="nav-item me-3">
<a href="index.html#movies" class="nav-link">Фильмы</a>
</li>
<li class="nav-item me-3">
<a href="index.html#series" class="nav-link">Сериалы</a>
</li>
<li class="nav-item me-3">
<a href="about_us.html" class="nav-link">Справка</a>
</li>
<li class="nav-item me-3">
<a href="login.html" class="nav-link">Вход в аккаунт</a>
</li>
<li class="nav-item d-lg-none">
<a href="pricing.html" class="nav-link text-light">Купить подписку</a>
</li>
<li class="nav-item d-none d-lg-inline">
<a href="pricing.html" class="btn btn-light">Купить подписку</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<main>
<!-- Subscrition Features -->
<section id="subscription-features">
<div class="container-md py-5 mb-0">
<div class="text-center">
<h2>Преимущества подписки</h2>
<p class="lead text-muted">Всё лучшее - в одной подписке</p>
</div>
<div class="row justify-content-between align-items-center my-5 gy-5">
<div class="col-lg-6">
<div class="d-flex flex-row align-items-center">
<img src="assets/pricing/diamond.png" width="50px" height="100%" alt="">
<div class="ms-3">
<p class="lead">Большая коллекция</p>
<p>Известные топовые фильмы и новинки</p>
</div>
</div>
</div>
<div class="col-lg-6">
<div class="d-flex flex-row align-items-center">
<img src="assets/pricing/no-ads.png" width="50px" height="100%" alt="">
<div class="ms-3">
<p class="lead">Без рекламы</p>
<p>Видео не прервётся на самом интересном месте</p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Pricing -->
<section id="pricing" class="bg-light">
<div class="container-md py-5">
<div class="text-center">
<h2>Подписка на кинотеатр</h2>
<p class="lead text-muted">Выберите, какой план вам подходит больше всего</p>
</div>
<div class="row my-5 justify-content-center align-items-center gy-3">
<div class="col-8 col-lg-4 col-xl-3">
<div class="card border-1">
<div class="card-body text-center py-4">
<h4 class="card-title">Большой Шлёппа</h4>
<p class="lead card-subtitle">Подписка на неделю</p>
<p class="display-5 my-4 text-primary fw-bold">49,99 &#8381;</p>
<p class="card-text mx-5 text-muted d-none d-lg-block">Попробуйте и решите, нравится ли вам наш сервис</p>
<a href="#" class="btn btn-outline-primary btn-lg mt-3">Купить</a>
</div>
</div>
</div>
<div class="col-9 col-lg-4">
<div class="card border-primary border-3 pb-3">
<div class="card-header text-center text-primary">Самый популярный</div>
<div class="card-body text-center py-5">
<h4 class="card-title">Базированный гигачад</h4>
<p class="lead card-subtitle">Подписка на месяц</p>
<p class="display-4 my-4 text-primary fw-bold">149,99 &#8381;</p>
<p class="card-text mx-5 text-muted d-none d-lg-block">Для тех, кто очень любит смотреть фильмы и сериалы по вечерам</p>
<a href="#" class="btn btn-outline-primary btn-lg mt-4">Купить</a>
</div>
</div>
</div>
<div class="col-8 col-lg-4 col-xl-3">
<div class="card border-1">
<div class="card-body text-center py-4">
<h4 class="card-title">Райан Гослинг</h4>
<p class="lead card-subtitle">Подписка на год</p>
<p class="display-5 my-4 text-primary fw-bold">799,99 &#8381;</p>
<p class="card-text mx-5 text-muted d-none d-lg-block">Если вдруг захотите остаться с нами подольше</p>
<a href="#" class="btn btn-outline-primary btn-lg mt-3">Купить</a>
</div>
</div>
</div>
</div>
</div>
</section>
</main>
<footer class="py-2 bg-dark text-light mt-auto">
<div class="container-md py-2">
<div class="d-flex flex-wrap justify-content-between align-items-center">
<div>
<div class="download-buttons-container justify-content-start">
<a href="https://play.google.com/store/games?hl=ru&gl=US"><img src="assets/footer/download-buttons/GooglePlay.svg" class="download-button" alt=""></a>
<a href="https://www.huawei.ru/appgallery/"><img src="assets/footer/download-buttons/AppGallery.svg" class="download-button" alt=""></a>
<a href="https://www.apple.com/app-store/"><img src="assets/footer/download-buttons/AppStore.svg" class="download-button" alt=""></a>
</div>
<h6 class="text-secondary mt-3">&copy; 2023 СигмаТеатр</h6>
</div>
<div class="download-buttons-container">
<a href="index.html" class="text-secondary text-decoration-none footer-navigation-button">Главная</a>
<a href="#" class="text-secondary text-decoration-none footer-navigation-button">Политика конфиденциальности</a>
<a href="about_us.html" class="text-secondary text-decoration-none footer-navigation-button">О нас</a>
<a href="admin_panel.html" class="text-secondary text-decoration-none footer-navigation-button">Страница администратора</a>
</div>
</div>
</div>
</footer>
</body>
</html>

39
style.css Normal file
View File

@ -0,0 +1,39 @@
body{
padding-top: 56px;
}
.download-buttons-container {
display: flex;
flex-direction: row;
flex-wrap: wrap;
}
.download-button {
margin-right: 1rem;
}
.footer-navigation-button {
margin-left: 1rem;
}
@media (max-width: 1300px) {
.download-buttons-container {
flex-direction: column;
}
.download-button {
margin-top: 1rem;
}
.footer-navigation-button {
margin-bottom: 0.75rem;
}
}
.film-poster {
border-radius: 20px;
}
.login-icon {
font-size: 30px;
}

116
videoplayer.html Normal file
View File

@ -0,0 +1,116 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Просмотр</title>
<script src="node_modules/bootstrap/dist/js/bootstrap.min.js"></script>
<link href="node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.2/font/bootstrap-icons.min.css">
<link href="style.css" rel="stylesheet">
</head>
<body class="d-flex flex-column min-vh-100">
<header>
<nav class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark">
<div class="container-md">
<a href="index.html" class="navbar-brand">
<i class="bi bi-film"></i>
<span class="fw-bold text-uppercase ms-2">СигмаТеатр</span>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#main-nav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-end align-center" id="main-nav">
<ul class="navbar-nav">
<li class="nav-item me-3">
<a href="index.html#movies" class="nav-link">Фильмы</a>
</li>
<li class="nav-item me-3">
<a href="index.html#series" class="nav-link">Сериалы</a>
</li>
<li class="nav-item me-3">
<a href="about_us.html" class="nav-link">Справка</a>
</li>
<li class="nav-item me-3">
<a href="login.html" class="nav-link">Вход в аккаунт</a>
</li>
<li class="nav-item d-lg-none">
<a href="pricing.html" class="nav-link text-light">Купить подписку</a>
</li>
<li class="nav-item d-none d-lg-inline">
<a href="pricing.html" class="btn btn-light">Купить подписку</a>
</li>
</ul>
</div>
</div>
</nav>
</header>
<main>
<section id="player">
<div class="container-md py-4 mb-4">
<div class="ratio ratio-16x9 my-4">
<iframe width="560" height="315" src="https://www.youtube.com/embed/dfeUzm6KF4g?si=U2D-2WNsJzkcxlBX" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
</div>
<p class="display-4">Бойцовский клуб</p>
<div class="row gx-5 gy-5 mb-4">
<div class="col-lg-7">
<h3>Описание</h3>
<p class="my-4">
Сотрудник страховой компании страдает хронической бессонницей и отчаянно пытается вырваться из мучительно скучной жизни. Однажды в очередной командировке он встречает некоего Тайлера Дёрдена — харизматического торговца мылом с извращенной философией. Тайлер уверен, что самосовершенствование — удел слабых, а единственное, ради чего стоит жить, — саморазрушение.<br><br> Проходит немного времени, и вот уже новые друзья лупят друг друга почем зря на стоянке перед баром, и очищающий мордобой доставляет им высшее блаженство. Приобщая других мужчин к простым радостям физической жестокости, они основывают тайный Бойцовский клуб, который начинает пользоваться невероятной популярностью.
</p>
</div>
<div class="col-lg-5">
<h3>О фильме</h3>
<ul class="list-group list-group-flush my-3">
<li class="list-group-item">
<span class="fw-bold">Год производства:</span> 1999
</li>
<li class="list-group-item">
<span class="fw-bold">Страна:</span> США, Германия
</li>
<li class="list-group-item">
<span class="fw-bold">Слоган:</span> <span class="text-secondary">«Интриги. Хаос. Мыло»</span>
</li>
<li class="list-group-item">
<span class="fw-bold">Режиссер:</span> Дэвид Финчер
</li>
<li class="list-group-item">
<span class="fw-bold">Возраст:</span> 18+
</li>
</ul>
</div>
</div>
<button class="btn btn-primary">Посмотреть позже</button>
</div>
</section>
</main>
<footer class="py-2 bg-dark text-light mt-auto">
<div class="container-md py-2">
<div class="d-flex flex-wrap justify-content-between align-items-center">
<div>
<div class="download-buttons-container justify-content-start">
<a href="https://play.google.com/store/games?hl=ru&gl=US"><img src="assets/footer/download-buttons/GooglePlay.svg" class="download-button" alt=""></a>
<a href="https://www.huawei.ru/appgallery/"><img src="assets/footer/download-buttons/AppGallery.svg" class="download-button" alt=""></a>
<a href="https://www.apple.com/app-store/"><img src="assets/footer/download-buttons/AppStore.svg" class="download-button" alt=""></a>
</div>
<h6 class="text-secondary mt-3">&copy; 2023 СигмаТеатр</h6>
</div>
<div class="download-buttons-container">
<a href="index.html" class="text-secondary text-decoration-none footer-navigation-button">Главная</a>
<a href="#" class="text-secondary text-decoration-none footer-navigation-button">Политика конфиденциальности</a>
<a href="about_us.html" class="text-secondary text-decoration-none footer-navigation-button">О нас</a>
<a href="admin_panel.html" class="text-secondary text-decoration-none footer-navigation-button">Страница администратора</a>
</div>
</div>
</div>
</footer>
</body>
</html>

14
vite.config.js Normal file
View File

@ -0,0 +1,14 @@
import { resolve } from 'path'
import { defineConfig } from 'vite'
export default defineConfig({
build: {
rollupOptions: {
input: {
main: resolve(__dirname, 'index.html'),
page2: resolve(__dirname, 'page2.html'),
page3: resolve(__dirname, 'page3.html'),
},
},
},
})

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 289 KiB

Binary file not shown.

BIN
Отчет лаб2.docx Normal file

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 140 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 899 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB