160 lines
8.8 KiB
HTML
160 lines
8.8 KiB
HTML
{% extends "base.html" %}
|
||
{% import "/components/header.html" as header %}
|
||
{% import "/components/footer.html" as footer %}
|
||
{% import "components/share.html" as share %}
|
||
{% block title %}Выставки{% endblock %}
|
||
|
||
|
||
|
||
{% block content %}
|
||
{{ header.section(user) }}
|
||
<section class="c_cr9xg">
|
||
<div class="c_s7it2">
|
||
<div class="c_fwe1m">
|
||
<h2 class="b_p0hpm">Выставки</h2>
|
||
</div>
|
||
</div>
|
||
<div class="c_dbu4q">
|
||
{% for exhibition in exhibitions %}
|
||
{% set link="/exhibition/{}".format(exhibition._id) %}
|
||
<article class="c_9fgdh b_ax8vz" id="l{{exhibition._id}}">
|
||
{% if link %}
|
||
<a href="{{link}}">
|
||
{% endif %}
|
||
<div class="b_ornr9">
|
||
<picture>
|
||
<img crossorigin="anonymous" fetchpriority="high" loading="eager" alt="{{ exhibition.title }}" class="b_ornr9"
|
||
src="/b/exhibition/{{ exhibition.poster_file_id }}" alt="Выставка {{exhibition.title }}">
|
||
</picture>
|
||
</div>
|
||
{% if link %}
|
||
</a>
|
||
{% endif %}
|
||
<div class="c_z3dpx b_73p10">
|
||
{% if link %}
|
||
<a href="{{link}}" class="b_73p10">
|
||
{% endif %}
|
||
<div class="{% if now > exhibition.date_finish %}b_vabj9_2{%else%}b_vabj9{% endif %}">
|
||
{% if now > exhibition.date_finish %}
|
||
<span class="c_95csi b_0jst1_2">Закончилась</span>
|
||
{% elif now > exhibition.datetime_start %}
|
||
<span class="c_95csi b_0jst1">Началась</span>
|
||
{% else %}
|
||
<span class="c_95csi b_0jst1">Формируется</span>
|
||
{% endif %}
|
||
</div>
|
||
<header class="c_m876y b_9xtz9">
|
||
<h3 class="c_hysjg b_8f3uh">{{ exhibition.title }}</h3>
|
||
</header>
|
||
<p class="c_2fr39 b_tfnz2">{{ exhibition.topic }}</p>
|
||
{% set user = exhibition.get('user') %}
|
||
<div class="c_dbbe4 b_otttb">
|
||
{% if user %}
|
||
<img class="c_pm80w b_a68fq" src="/a/{{user._id}}" alt="{{ user.username | e }}" crossorigin="anonymous" fetchpriority="high" loading="eager">
|
||
<div class="c_4402p b_ntazj">
|
||
<p class="c_kvah4 b_ghosy">{{ user.username | e }}</p>
|
||
</div>
|
||
{% endif %}
|
||
</div>
|
||
{% if exhibition.get('tizer_file_id') or exhibition.get('tizer_link') %}
|
||
<a class="c_aq9et" href="{% if exhibition.get('tizer_link') %}{{exhibition.tizer_link}}{% else %}/b/exhibition/{{ exhibition.tizer_file_id }}{% endif %}" rel="noopener noreferrer">
|
||
<span class="c_som9s">Релиз выставки</span>
|
||
</a>
|
||
{%endif%}
|
||
<a class="c_aq9et" href="{{link}}" rel="noopener noreferrer">
|
||
<span class="c_som9s">Список картин</span>
|
||
</a>
|
||
<p>Место проведения: {{ exhibition.get('place') }}</p>
|
||
<div class="b_otttb">
|
||
<span class="c_2fr39 b_tfnz2">С {{ ( exhibition.datetime_start.strftime('%d.%m.%Y')) if exhibition.datetime_start else ''}}</span>
|
||
<span class="c_2fr39 b_tfnz2">По {{ ( exhibition.date_finish.strftime('%d.%m.%Y')) if exhibition.date_finish else ''}}</span>
|
||
</div>
|
||
{% if link %}
|
||
</a>
|
||
{% endif %}
|
||
<div class="fl">
|
||
<span class="c_2fr39 b_tfnz2" style="z-index: 2;">
|
||
{{ share.share('/exhibition/{}'.format(exhibition._id), exhibition.title, '/b/exhibition/{}'.format(exhibition.poster_file_id), "Приглашаем на выставку") }}
|
||
</span>
|
||
</div>
|
||
|
||
<p class="c_drpqj b_mp1wb">{{ (exhibition._id.generation_time.strftime('%d.%m.%Y')) if exhibition._id else ''}}</p>
|
||
</div>
|
||
</article>
|
||
{% endfor %}
|
||
</div>
|
||
</section>
|
||
{{ footer.section() }}
|
||
{% endblock %}
|
||
|
||
{% block head %}
|
||
{{ header.style() }}
|
||
<style>/* Base (common) styles */
|
||
.c_aq9et {
|
||
cursor: pointer;
|
||
transition: transform 0.1s linear, box‑shadow 0.1s linear;
|
||
box-shadow: 0 0 0 rgba(0, 0, 0, 0);
|
||
}
|
||
|
||
.c_aq9et:active {
|
||
transform: scale(0.9);
|
||
box-shadow: 5px 5px 5px rgba(95, 23, 152, 0.32);
|
||
}
|
||
|
||
article>a{width: 100%;}
|
||
picture>img{ width: 100%; object-fit: scale-down; }
|
||
.fl{display: flex;justify-content: space-between;width: 100%;}
|
||
.c_som9s { color: #FFF; font-family: Inter; font-size: 14px; font-style: normal; font-weight: 400; line-height: normal; }
|
||
.c_aq9et { display: flex; padding: 19px 33px; justify-content: center; align-items: center; align-self: stretch; border-radius: 5px; background: #5F1798; }
|
||
.b_ornr9 { align-self: stretch; overflow: hidden;}
|
||
.b_0jst1 { color: #0ED646; font-family: Inter; font-size: 12px; font-style: normal; font-weight: 700; line-height: normal; }
|
||
.b_vabj9 { align-items: center; background: rgba(14, 214, 70, 0.20); border-radius: 30px; display: flex; justify-content: center; padding: 1.5px 10px; }
|
||
.b_0jst1_2 { color: #5F1798; font-family: Inter; font-size: 12px; font-style: normal; font-weight: 700; line-height: normal; }
|
||
.b_vabj9_2 { align-items: center; background: #5e17982f; border-radius: 30px; display: flex; justify-content: center; padding: 1.5px 10px; }
|
||
.b_8f3uh { -webkit-box-orient: vertical; -webkit-line-clamp: 1; color: #000; display: -webkit-box; flex: 1 0 0; font-family: Inter; font-size: 24px; font-style: normal; font-weight: 700; line-height: normal; overflow: hidden; text-overflow: ellipsis; }
|
||
.b_9xtz9 { align-items: center; align-self: stretch; display: flex; justify-content: center; }
|
||
.b_tfnz2 { align-self: stretch; color: #5F1798; font-family: Inter; font-size: 14px; font-style: normal; font-weight: 400; line-height: normal; cursor: pointer; }
|
||
.b_a68fq { aspect-ratio: 1/1; border-radius: 50px; height: 50px; width: 50px; object-fit: cover; }
|
||
.b_ghosy { align-self: stretch; color: #000; font-family: Inter; font-size: 16px; font-style: normal; font-weight: 400; line-height: normal; }
|
||
.b_ntazj { align-items: flex-start; display: flex; flex-direction: column; flex: 1 0 0; justify-content: center; }
|
||
.b_otttb { align-items: center; align-self: stretch; display: flex; gap: 13px; height: 50px; }
|
||
.b_s6ool { height: 51px; white-space: pre-line; -webkit-box-orient: vertical; -webkit-line-clamp: 3; align-self: stretch; color: rgba(58, 58, 58, 0.75); display: -webkit-box; font-family: Inter; font-size: 14px; font-style: normal; font-weight: 400; line-height: normal; overflow: hidden; text-overflow: ellipsis; }
|
||
.b_mp1wb { align-self: stretch; color: rgba(58, 58, 58, 0.75); font-family: Inter; font-size: 14px; font-style: normal; font-weight: 400; line-height: normal; text-align: right; }
|
||
.b_73p10 { align-items: flex-start; align-self: stretch; background: #FFF; display: flex; flex-direction: column; gap: 10px; justify-content: center; }
|
||
.c_z3dpx{ padding: 10px 20px;}
|
||
.b_ax8vz { align-items: flex-start; border-radius: 10px; border: 1px solid #5F1798; box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.30), 0 4px 20px 0 rgba(0, 0, 0, 0.20); display: flex; flex-direction: column; width: 335px; overflow: hidden;}
|
||
@media (min-width: 901px) {
|
||
.c_9fgdh { align-items: flex-start; border-radius: 10px; border: 1px solid #5F1798; box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.30), 0 4px 20px 0 rgba(0, 0, 0, 0.20); display: flex; flex-direction: column; flex-shrink: 0; width: 335px; }
|
||
}
|
||
@media (max-width: 699px) {
|
||
.b_ornr9{height: auto;}
|
||
}
|
||
</style>
|
||
<style>/* Base (common) styles */
|
||
.b_p0hpm { color: #5F1798; font-family: Inter; font-size: 42px; font-style: normal; font-weight: 700; line-height: normal; text-transform: uppercase; }
|
||
/* Mobile */
|
||
@media (max-width: 699px) {
|
||
.c_dbu4q { align-content: flex-start; align-items: flex-start; align-self: stretch; display: flex; flex-wrap: wrap; gap: 20px; justify-content: center; }
|
||
.c_fwe1m { align-items: center; display: flex; flex-direction: column; gap: 20px; width: 335px; }
|
||
.c_s7it2 { align-items: flex-start; align-self: stretch; display: flex; gap: 20px; justify-content: center; }
|
||
.c_cr9xg { align-items: center; background: #FFF; display: flex; flex-direction: column; gap: 30px; }
|
||
}
|
||
|
||
/* Tablet */
|
||
@media (min-width: 700px) and (max-width: 900px) {
|
||
.c_dbu4q { align-content: flex-start; align-items: flex-start; align-self: stretch; display: flex; flex-wrap: wrap; gap: 20px; }
|
||
.c_fwe1m { align-items: flex-start; display: flex; flex-direction: column; gap: 20px; width: 335px; }
|
||
.c_s7it2 { align-items: flex-start; align-self: stretch; display: flex; gap: 20px; }
|
||
.c_cr9xg { align-items: center; background: #FFF; display: flex; flex-direction: column; gap: 30px; padding-left: 50px; }
|
||
}
|
||
|
||
/* Desktop */
|
||
@media (min-width: 901px) {
|
||
.c_dbu4q { align-content: flex-start; align-items: flex-start; display: flex; flex-wrap: wrap; gap: 20px; width: 100%; }
|
||
.c_fwe1m { align-items: flex-start; display: flex; flex-direction: column; flex-shrink: 0; gap: 20px; width: 335px; }
|
||
.c_s7it2 { align-items: flex-start; display: flex; gap: 20px; width: 100%; }
|
||
.c_cr9xg { align-items: center; background: #FFF; display: flex; flex-direction: column; gap: 30px; padding-left: 100px;}
|
||
}</style>
|
||
{{ footer.style() }}
|
||
{% endblock %}
|