templates/programs/show.html.twig
{% extends 'base.html.twig' %}
{% import 'macros/layout.html.twig' as layout %}
{% block breadcrumb %}
<ol class="breadcrumb">
{% if isOrganizer %}
<li><a href="{{ path('Programs') }}">{{ msg('my-programs') }}</a></li>
{% endif %}
<li class="active">{{ bdi(program.displayTitle) }}</li>
</ol>
{% endblock %}
{% block body %}
<div class="container">
<div class="page-header">
<div class="page-title">{{ msg('event-list')|upper }}</div>
<div class="btn-group pull-right">
<a class="btn btn-default" href="{{ path('EditProgram', {'programId': program.id}) }}">{{ msg('settings') }}</a>
{% if isOrganizer %}
<a href="{{ path('NewEvent', {'programId': program.id}) }}" class="btn btn-primary">
{{ msg('create-new-event') }}
</a>
{% endif %}
</div>
<h1 class="page-subject-title">
{{ bdi(program.displayTitle) }}
</h1>
<div class="programs-organizers">
{{ msg('organizers') }}:
{% set user_links = [] %}
{% for username in program.organizerNames %}
{% set user_links = user_links|merge(['<a target="_blank" href="https://meta.wikimedia.org/wiki/User:' ~ username ~ '">' ~ username ~ '</a>']) %}
{% endfor %}
{{ user_links|list_format|raw }}
</div>
</div>
{% if program.events|length < 1 %}
<div class="text-center">{{ msg('no-events') }}</div>
{% else %}
<table class="table em-table events-list">
<thead>
<tr>
<th>
<div class="sort-link sort-link--event" data-column="event">
{{ msg('event') }}
</div>
</th>
{% if isOrganizer %}
<th class="text-nowrap"></th>
{% endif %}
{% for metric in visibleMetrics if metrics[metric] is defined %}
<th class="text-nowrap">
<div class="sort-link sort-link--{{ metric }}" data-column="{{ metric }}">
{{ msg(metric, [metrics[metric]]) }}
</div>
</th>
{% endfor %}
</tr>
</thead>
<tbody>
{% for event in program.events %}
<tr class="event-entry">
<td class="sort-entry--event" data-value="{{ event.title }}">
<a href="{{ path('Event', {'programId': program.id, 'eventId': event.id}) }}">{{ bdi(event.displayTitle) }}</a>
</td>
{% set num_participants = event.numParticipants %}
{% if isOrganizer %}
<td class="text-nowrap">
{{ layout.actionButtons('Event', event, {'programId': program.id, 'eventId': event.id}, num_participants == 0) }}
</td>
{% endif %}
{% for metric in visibleMetrics if metrics[metric] is defined %}
{% set stat = event.statistic(metric) %}
<td class="text-nowrap sort-entry--{{ metric }} text-nowrap" data-value="{{ stat ? stat.value : -1 }}">
{{ (stat ? stat.value|num_format : '–')|raw }}
</td>
{% endfor %}
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
{% endblock %}