Initial commit: InviteMe production redesign
This commit is contained in:
@@ -0,0 +1,82 @@
|
||||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Мероприятия — InviteMe{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<header class="page-header"><div><div class="eyebrow">Планирование</div><h1 class="page-title">Мероприятия</h1><p class="page-subtitle">Настройте даты, площадки, билеты и правила RSVP.</p></div><a href="{{ url_for('main.admin_event_add') }}" class="btn btn-primary">+ Создать мероприятие</a></header>
|
||||
|
||||
<div class="row">
|
||||
{% for event in events %}
|
||||
<div class="col-md-4 mb-4">
|
||||
<div class="card h-100 {% if not event.is_active %}border-secondary{% endif %}">
|
||||
<div class="card-body">
|
||||
<div class="d-flex justify-content-between gap-2 mb-3"><div><div class="eyebrow">{% if event.is_active %}Активно{% else %}Архив{% endif %}</div><h2 class="h5 card-title mb-0">{{ event.name }}</h2></div><span class="badge {% if event.is_active %}bg-success{% else %}bg-secondary{% endif %} align-self-start">{{ event.total_guests }} гостей</span></div>
|
||||
<p class="card-text text-muted">
|
||||
{% if event.event_date %}
|
||||
{{ event.event_date | localtime('%d.%m.%Y %H:%M') }}<br>
|
||||
{% endif %}
|
||||
{% if event.location %}
|
||||
{{ event.location }}<br>
|
||||
{% endif %}
|
||||
Отметились на входе: {{ event.checked_in }}
|
||||
</p>
|
||||
{% if event.description %}
|
||||
<p class="card-text">{{ event.description }}</p>
|
||||
{% endif %}
|
||||
<div class="d-flex flex-wrap gap-2">
|
||||
<form action="{{ url_for('main.admin_event_switch', event_id=event.id) }}" method="POST" class="d-inline">
|
||||
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
|
||||
<button type="submit" class="btn btn-success btn-sm">Выбрать</button>
|
||||
</form>
|
||||
<a href="{{ url_for('main.admin_event_edit', event_id=event.id) }}" class="btn btn-outline-primary btn-sm">Изменить</a>
|
||||
<a href="{{ url_for('main.admin_event_ticket', event_id=event.id) }}" class="btn btn-outline-info btn-sm">Билет</a>
|
||||
{% if current_user and current_user.is_admin %}
|
||||
<button type="button" class="btn btn-outline-danger btn-sm" data-bs-toggle="modal" data-bs-target="#deleteEventModal{{ event.id }}">Удалить</button>
|
||||
{% endif %}
|
||||
{% if not event.is_active %}
|
||||
<span class="badge bg-secondary">Неактивно</span>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer text-muted">
|
||||
Создано: {{ event.created_at | localdate('%d.%m.%Y') }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% if current_user and current_user.is_admin %}
|
||||
<!-- Modal for hard delete -->
|
||||
<div class="modal fade" id="deleteEventModal{{ event.id }}" tabindex="-1" aria-hidden="true">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<form action="{{ url_for('main.admin_event_delete_hard', event_id=event.id) }}" method="POST">
|
||||
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Удаление мероприятия</h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>Вы собираетесь полностью удалить мероприятие <strong>{{ event.name }}</strong>.</p>
|
||||
<p class="text-danger">Все гости, QR-коды, билеты и логотипы этого мероприятия будут удалены безвозвратно.</p>
|
||||
<div class="mb-3">
|
||||
<label for="deleteReason{{ event.id }}" class="form-label">Причина удаления <span class="text-danger">*</span></label>
|
||||
<textarea class="form-control" id="deleteReason{{ event.id }}" name="reason" rows="3" required></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Отмена</button>
|
||||
<button type="submit" class="btn btn-danger">Удалить</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% else %}
|
||||
<div class="col-12">
|
||||
<div class="alert alert-info">Пока нет ни одного мероприятия. <a href="{{ url_for('main.admin_event_add') }}">Создайте первое</a>.</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user