From a5380d312723bcbb4b6705e4625e9ebfbd77bd5c Mon Sep 17 00:00:00 2001 From: andrei Date: Sun, 21 Apr 2024 16:57:58 +0500 Subject: [PATCH] =?UTF-8?q?=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20=D0=BE?= =?UTF-8?q?=D1=82=D0=BE=D0=B1=D1=80=D0=B0=D0=B6=D0=B5=D0=BD=D0=B8=D0=B5=20?= =?UTF-8?q?=D0=B7=D0=B0=D0=BD=D1=8F=D1=82=D1=8B=D1=85=20=D0=BC=D0=B5=D1=81?= =?UTF-8?q?=D1=82=20(=D0=A2=D1=80=D0=B5=D0=B1=D1=83=D0=B5=D1=82=D1=81?= =?UTF-8?q?=D1=8F=20=D0=BE=D0=BF=D1=82=D0=B8=D0=BC=D0=B8=D0=B7=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D1=8F)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../css/includes/film_timtable_card.css | 70 ++++++++++++++++++ CineSync/static/css/style.css | 71 ++----------------- CineSync/static/css/timetable/session.css | 2 +- .../includes/film_timetable_card.html | 3 + CineSync/templates/timetable/session.html | 3 + CineSync/timetable/views.py | 2 +- 6 files changed, 84 insertions(+), 67 deletions(-) create mode 100644 CineSync/static/css/includes/film_timtable_card.css diff --git a/CineSync/static/css/includes/film_timtable_card.css b/CineSync/static/css/includes/film_timtable_card.css new file mode 100644 index 0000000..bea6a7c --- /dev/null +++ b/CineSync/static/css/includes/film_timtable_card.css @@ -0,0 +1,70 @@ +.age_limit { + margin-left: 1vw; + padding: 0.1vw; + padding-left: 0.25vw; + padding-right: 0.25vw; + border: 0.15vw solid #aaaaaa; + color: #aaaaaa; + font-weight: bold; + border-radius: 0.5vw; + font-size: 0.7vw; +} +.film_card { + width: 100%; + background-color: #eaeaea; + margin-top: 1vw; + margin-bottom: 1vw; + border-radius: 3vw; + display: flex; + flex-direction: row; + flex-wrap: nowrap; + align-items: center; + justify-content: flex-start; +} +.film_card_image { + object-fit: cover; + height: 15vw !important; + width: 10vw !important; + border-radius: 3vw; +} +.film_card_column { + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: space-around; + height: 10vw; + margin-left: 2vw; + overflow-x: scroll; +} +.film_card_column::-webkit-scrollbar { + height: 7px; +} +.film_card_column::-webkit-scrollbar-thumb { + background-color: #0d1d3a; + border-radius: 5vw; + border: 1px solid #eaeaea; +} +.film_card_title_row { + height: 20%; + margin-top: 0.5vw; + margin-bottom: 0.5vw; + display: flex; + flex-direction: row; + flex-wrap: nowrap; + align-items: center; + justify-content: space-evenly; +} +.film_card_row { + height: 60%; + display: flex; + align-items: center; + flex-direction: row; + flex-wrap: nowrap; +} +.film_card_footer { + height: 20%; + display: flex; + align-items: flex-start; + flex-direction: row; + flex-wrap: nowrap; +} \ No newline at end of file diff --git a/CineSync/static/css/style.css b/CineSync/static/css/style.css index 41bc62e..9b41a2c 100644 --- a/CineSync/static/css/style.css +++ b/CineSync/static/css/style.css @@ -31,70 +31,18 @@ padding-bottom: 2vw; flex-direction: column; } -.film_card { - width: 100%; - background-color: #eaeaea; - margin-top: 1vw; - margin-bottom: 1vw; - border-radius: 3vw; - display: flex; - flex-direction: row; - flex-wrap: nowrap; - align-items: center; - justify-content: flex-start; +.session_time { + font-size: 12px; + color: #eaeaea; } -.film_card_image { - object-fit: cover; - height: 15vw !important; - width: 10vw !important; - border-radius: 3vw; -} -.film_card_column { - display: flex; - flex-direction: column; - align-items: flex-start; - justify-content: space-around; - height: 10vw; - margin-left: 2vw; - overflow-x: scroll; -} -.film_card_column::-webkit-scrollbar { - height: 7px; -} -.film_card_column::-webkit-scrollbar-thumb { - background-color: #0d1d3a; - border-radius: 5vw; - border: 1px solid #eaeaea; -} -.film_card_title_row { - height: 20%; - margin-top: 0.5vw; - margin-bottom: 0.5vw; - display: flex; - flex-direction: row; - flex-wrap: nowrap; - align-items: center; - justify-content: space-evenly; -} -.film_card_row { - height: 60%; - display: flex; - align-items: center; - flex-direction: row; - flex-wrap: nowrap; -} -.film_card_footer { - height: 20%; - display: flex; - align-items: flex-start; - flex-direction: row; - flex-wrap: nowrap; +.genre { + margin-right: 0.5vw; } .film_session { background-color: rgb(255, 64, 96); color: #eaeaea; font-weight: bold; - padding: 1vw; + padding: 0.5vw; padding-top: 1vw; padding-bottom: 1vw; margin: 0.3vw; @@ -107,13 +55,6 @@ .film_session:hover { background-color: rgb(196, 47, 72); } -.session_time { - font-size: 12px; - color: #eaeaea; -} -.genre { - margin-right: 0.5vw; -} body::-webkit-scrollbar { width: 8px; } diff --git a/CineSync/static/css/timetable/session.css b/CineSync/static/css/timetable/session.css index 8bf2b8e..9235dd3 100644 --- a/CineSync/static/css/timetable/session.css +++ b/CineSync/static/css/timetable/session.css @@ -119,5 +119,5 @@ font-size: 1.2vw; } .disabled { - background-color: #0d1d3a !important; + background-color: #5a5a5a !important; } \ No newline at end of file diff --git a/CineSync/templates/includes/film_timetable_card.html b/CineSync/templates/includes/film_timetable_card.html index e81e3fb..7fc3c1b 100644 --- a/CineSync/templates/includes/film_timetable_card.html +++ b/CineSync/templates/includes/film_timetable_card.html @@ -1,3 +1,5 @@ +{% load static %} +
{% if film.image %}
+ {{ film.age_limit }}
{% for time_sessions in session %} diff --git a/CineSync/templates/timetable/session.html b/CineSync/templates/timetable/session.html index 55cbb57..fe3a7a9 100644 --- a/CineSync/templates/timetable/session.html +++ b/CineSync/templates/timetable/session.html @@ -34,6 +34,8 @@ Ряд {{ forloop.counter }} {% for _ in row.column_count|get_range %} + {% with column_seat_str=forloop.counter|stringformat:"i" row_seat_str=row.row_number|stringformat:"i" %} + {% if column_seat_str|add:"-"|add:row_seat_str in occupied_seats %} {% endif %} + {% endwith %} {% endfor %} diff --git a/CineSync/timetable/views.py b/CineSync/timetable/views.py index 5383333..6f1ae5e 100644 --- a/CineSync/timetable/views.py +++ b/CineSync/timetable/views.py @@ -54,7 +54,7 @@ def session_view(request, sess_id): height = round(session.auditorium.rows.count() * 4 + 7) tickets = Ticket.objects.get_tickets_for_session(session.pk) - occupied_seats = [f'{str(ticket.column_number)}{str(ticket.row_number)}' for ticket in tickets] + occupied_seats = [f"{str(ticket.row_number)}-{str(ticket.column_number)}" for ticket in tickets] if request.method == 'POST': form = SeatSelectionForm(request.POST, auditorium=session.auditorium)