2022-08-24 14:34:05 +02:00

86 lines
3.8 KiB
HTML

{% extends "layout_vue.html" %}
{% set active_id = "events" %}
{% from "_macros.html" import render_event_in_list, render_manage_form_styles, render_manage_form_scripts, render_event_dates_filter_form, render_event_warning_pills, render_pagination, render_event_date, render_field_with_errors, render_event_organizer %}
{%- block title -%}
{{ _('Events') }}
{%- endblock -%}
{% block styles %}
{{ render_manage_form_styles() }}
{% endblock %}
{% block header_before_site_js %}
{{ super() }}
{{ render_manage_form_scripts() }}
{%- endblock -%}
{% block component_scripts %}
<script src="{{ url_for('static', filename='vue/event-lists/add-event.vue.js')}}"></script>
{% endblock %}
{% block component_definitions %}
Vue.component("EventListAddEvent", EventListAddEvent);
{% endblock %}
{% block vue_container %}
{% endblock %}
{% block vue_app_data %}
var vue_app_data = { eventId: 0 };
{% endblock %}
{% block content %}
{% set can_add_to_list = current_admin_unit and has_access(current_admin_unit, "admin_unit:update")%}
{% if not admin_unit.is_verified %}
<div class="alert alert-warning" role="alert">
{{ _('The organization is not verified. Events are therefore not publicly visible.') }}
<a class="alert-link" href="{{ url_for('manage_admin_unit_verification_requests_outgoing', id=admin_unit.id) }}" role="button">{{ _('Verify organization') }}</a>
</div>
{% endif %}
<h1>{{ _('Events') }} <button id="toggle-search-btn" type="button" class="btn btn-outline-secondary mx-2" data-toggle="collapse" data-target="#search_form" aria-expanded="{% if form.is_submitted() %}true{% else %}false{% endif %}"><i class="fa fa-search"></i></button></h1>
<div class="my-4">
<a class="btn btn-outline-secondary my-1" href="{{ url_for('event_create_for_admin_unit_id', id=admin_unit.id) }}" role="button"><i class="fa fa-plus"></i> {{ _('Create event') }}</a>
</div>
<div class="my-4 {% if form.is_submitted() %}{% else %}collapse{% endif %}" id="search_form">
{{ render_event_dates_filter_form(form) }}
</div>
<ul class="list-group">
{% for event in events %}
<li class="list-group-item">
{{ render_event_in_list(event) }}
<div class="dropdown d-inline-block">
<button class="btn btn-link dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{ event.name }}</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="{{ url_for('event', event_id=event.id) }}">{{ _('View') }}</a>
<a class="dropdown-item" href="{{ url_for('event_update', event_id=event.id) }}">{{ _('Edit') }}</a>
<a class="dropdown-item" href="{{ url_for('event_delete', event_id=event.id) }}">{{ _('Delete') }}&hellip;</a>
<a class="dropdown-item" href="{{ url_for('event_create_for_admin_unit_id', id=event.admin_unit_id, template_id=event.id) }}">{{ _('Duplicate') }}&hellip;</a>
{% if can_add_to_list %}
<a class="dropdown-item" onclick="vue_app_data.eventId = '{{ event.id }}'; app.$bvModal.show('add-event-to-list-modal'); return false;" href="#">{{ _('Add to list') }}&hellip;</a>
{% endif %}
<a class="dropdown-item" href="{{ url_for('event_actions', event_id=event.id) }}">{{ _('More') }}&hellip;</a>
</div>
</div>
{{ render_event_warning_pills(event) }}
<small>{{ event.organizer.name }}</small>
</li>
{% endfor %}
</ul>
<div class="my-4">{{ render_pagination(pagination) }}</div>
<div id="vue-container">
{% if can_add_to_list %}
<b-modal id="add-event-to-list-modal" title="{{ _('Add event to list') }}" ok-only>
<event-list-add-event :event-id="eventId" organization-id="{{ current_admin_unit.id }}" />
</b-modal>
{% endif %}
</div>
{{ super() }}
{% endblock %}