91 lines
4.0 KiB
HTML
91 lines
4.0 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% block title %}Проверка приглашения — InviteMe{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="checkin-container">
|
|
<h1 class="mb-4 text-center">Проверка приглашения</h1>
|
|
|
|
{% if active_events %}
|
|
<div class="row justify-content-center mb-4">
|
|
<div class="col-md-6">
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<h5 class="card-title">Выберите мероприятие</h5>
|
|
<form method="POST" action="{{ url_for('main.check_in', token=token) }}">
|
|
<div class="mb-3">
|
|
<select id="event-select" name="event_id" class="form-select" onchange="this.form.submit()">
|
|
<option value="">-- Мероприятие --</option>
|
|
{% for event in active_events %}
|
|
<option value="{{ event.id }}" {% if checkin_event and checkin_event.id == event.id %}selected{% endif %}>
|
|
{{ event.name }}
|
|
</option>
|
|
{% endfor %}
|
|
</select>
|
|
</div>
|
|
<noscript><button type="submit" class="btn btn-primary">Выбрать</button></noscript>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
|
|
{% if checkin_event %}
|
|
<div class="alert alert-info text-center">
|
|
Текущее мероприятие: <strong>{{ checkin_event.name }}</strong>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<h5 class="card-title">Сканировать QR-код</h5>
|
|
<div class="mb-3">
|
|
<label for="camera-select" class="form-label">Камера</label>
|
|
<select id="camera-select" class="form-select">
|
|
<option value="">-- Выберите камеру --</option>
|
|
</select>
|
|
</div>
|
|
<div id="qr-reader" class="qr-reader"></div>
|
|
<button id="start-scan" class="btn btn-primary w-100 mt-2">Включить камеру</button>
|
|
<button id="stop-scan" class="btn btn-secondary w-100 mt-2 d-none">Выключить камеру</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-md-6 mb-3">
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<h5 class="card-title">Или найти по ФИО</h5>
|
|
<input type="text" id="search-input" class="form-control" placeholder="Введите фамилию..." autocomplete="off">
|
|
<div id="search-results" class="list-group mt-2"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="guest-card" class="card mt-4 d-none">
|
|
<div class="card-body text-center">
|
|
<img id="guest-photo" src="" alt="Фото гостя" class="guest-photo mb-3">
|
|
<h2 id="guest-name" class="card-title"></h2>
|
|
<p id="guest-department" class="lead"></p>
|
|
<p id="guest-position" class="text-muted"></p>
|
|
<p id="guest-email" class="text-muted"></p>
|
|
<p id="guest-event" class="text-info"></p>
|
|
|
|
<div id="check-in-status" class="alert d-none"></div>
|
|
|
|
<button id="check-in-btn" class="btn btn-success btn-lg w-100">Отметить вход</button>
|
|
<button id="reset-btn" class="btn btn-outline-secondary w-100 mt-2">Сбросить</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|
|
|
|
{% block scripts %}
|
|
<script src="https://unpkg.com/html5-qrcode@2.3.8/html5-qrcode.min.js"></script>
|
|
<script src="{{ url_for('static', filename='js/checkin.js') }}"></script>
|
|
{% endblock %}
|