{% from 'message_box.html' import message_box %} {% from 'attachments/_management_info_column.html' import render_attachment_info %} {% from 'events/_affiliation.html' import render_affiliation %} {% macro render_contrib_list(event, total_entries, contribs, sessions, tracks, registered_persons, static_columns, dynamic_columns, has_types) %} {% if contribs %} {% set has_codes = contribs|selectattr('code')|any %}
{% if has_codes %} {% endif %} {% for item in static_columns if has_types or item.id != 'type' %} {% endfor %} {% for item in dynamic_columns %} {% endfor %} {% for contrib in contribs %} {% if has_codes %} {% endif %} {% for item in static_columns %} {% if item.id == 'session' %} {% elif item.id == 'track' %} {% elif item.id == 'type' and has_types %} {% elif item.id == 'status' %} {% endif %} {% endfor %} {% set data = contrib.data_by_field %} {% for item in dynamic_columns %} {% set friendly_data = data[item.id].friendly_data if item.id in data else '' %} {% endfor %} {{ render_attachment_info(contrib) }} {% endfor %}
{% trans %}ID{% endtrans %} {% trans %}Title{% endtrans %} {% trans %}Time{% endtrans %} {% trans %}Duration{% endtrans %} {% trans %}Presenters{% endtrans %} {% trans %}Code{% endtrans %} {% trans %}Subcontributions{% endtrans %} {{ item.caption }}{{ item.title }} {% trans %}Material{% endtrans %} {# Actions #}
{{ contrib.friendly_id }} {% if event.type == 'conference' %} {{ contrib.title }} {% else %} {{ contrib.title }} {% endif %} {% if contrib.is_scheduled %} {% if not contrib.session_block %} {% else %} {% endif %} {{ contrib.start_dt|format_datetime('short', timezone=event.timezone) }} {%- else -%} {% trans %}Not scheduled{% endtrans %} {%- endif %} {% if not contrib.session_block %} {% else %} {% endif %} {{ contrib.duration|format_human_timedelta(narrow=true) if contrib.duration else 'n/a' }} {% for speaker in contrib.speakers | sort(attribute='display_order_key') -%} {% set speaker_is_registered = speaker.person in registered_persons %}
{% set tooltip %} {% if speaker_is_registered %} {%- trans %}This speaker registered for the event{% endtrans -%} {% else %} {%- trans %}This speaker did not register yet{% endtrans -%} {% endif %} {% endset %} {{ speaker.display_full_name }} {% if speaker.affiliation %} ({{ render_affiliation(speaker) }}) {% endif %}
{%- endfor %}
{% if contrib.code -%} {{ contrib.code }} {%- else %} {% trans %}n/a{% endtrans %} {%- endif %} {%- trans %}Subcontributions{% endtrans -%} {{- contrib.subcontribution_count -}} {% if event.can_manage(session.user) %} {% elif contrib.session %} {{ contrib.session.title }} {% else %} {%- trans %}No session{% endtrans -%} {% endif %} {% if event.can_manage(session.user) %} {% elif contrib.track %} {% if contrib.track.track_group %} {{ contrib.track.track_group.title }}: {% endif %} {{ contrib.track.title }} {% else %} {% trans %}No track{% endtrans %} {% endif %} {% if contrib.type -%} {{ contrib.type.name }} {%- else %} {% trans %}n/a{% endtrans %} {%- endif %} {% if contrib.is_scheduled -%} {% trans %}Scheduled{% endtrans %} {%- else %} {% trans %}Not scheduled{% endtrans %} {%- endif %} {{- friendly_data if friendly_data else '-' -}}
{%- else %} {%- call message_box('info') %} {%- if total_entries %} {%- trans -%} The filtering criteria do not match with any of the existing contributions. Try to clear the filters. {%- endtrans %} {%- else %} {%- trans %}There are no contributions yet.{% endtrans %} {%- endif %} {%- endcall %} {%- endif %} {% endmacro %}