Add conference series pages
This commit is contained in:
parent
098c7e4447
commit
57b2db205d
9 changed files with 367 additions and 3 deletions
|
|
@ -134,7 +134,7 @@ tr.conf-hl > td {
|
|||
{% if item_list %}
|
||||
{% set count = item_list | length %}
|
||||
<tr class="conf-section-row">
|
||||
<td colspan="6">{{ heading }} <span class="fw-normal opacity-75">{{ count }} conference{{ "" if count == 1 else "s" }}</span></td>
|
||||
<td colspan="7">{{ heading }} <span class="fw-normal opacity-75">{{ count }} conference{{ "" if count == 1 else "s" }}</span></td>
|
||||
</tr>
|
||||
{% set ns = namespace(prev_month="") %}
|
||||
{% for item in item_list %}
|
||||
|
|
@ -142,7 +142,7 @@ tr.conf-hl > td {
|
|||
{% if month_label != ns.prev_month %}
|
||||
{% set ns.prev_month = month_label %}
|
||||
<tr class="conf-month-row">
|
||||
<td colspan="6">{{ month_label }}</td>
|
||||
<td colspan="7">{{ month_label }}</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
<tr{% if item.going %} class="conf-going"{% endif %} data-conf-key="{{ item.sort_date.isoformat() }}|{{ item.name }}">
|
||||
|
|
@ -176,6 +176,13 @@ tr.conf-hl > td {
|
|||
{% endif %}
|
||||
</td>
|
||||
<td class="text-muted small">{{ item.topic }}</td>
|
||||
<td class="text-nowrap text-muted small">
|
||||
{% if item.series and item.series_detail %}
|
||||
<a href="{{ url_for('conference_series_page', series_id=item.series) }}">{{ item.series_detail.name }}</a>
|
||||
{% elif item.series %}
|
||||
{{ item.series }}
|
||||
{% endif %}
|
||||
</td>
|
||||
<td class="text-nowrap">
|
||||
{% set country = get_country(item.country) if item.country else None %}
|
||||
{% if country %}{{ country.flag }} {{ item.location }}
|
||||
|
|
@ -213,6 +220,7 @@ tr.conf-hl > td {
|
|||
<col>
|
||||
<col style="width: 18rem">
|
||||
<col style="width: 14rem">
|
||||
<col style="width: 14rem">
|
||||
<col style="width: 7rem">
|
||||
<col style="width: 10rem">
|
||||
</colgroup>
|
||||
|
|
@ -221,6 +229,7 @@ tr.conf-hl > td {
|
|||
<th>Dates</th>
|
||||
<th>Conference</th>
|
||||
<th>Topic</th>
|
||||
<th>Series</th>
|
||||
<th>Location</th>
|
||||
<th>CFP ends</th>
|
||||
<th>Price</th>
|
||||
|
|
|
|||
85
templates/conference_series.html
Normal file
85
templates/conference_series.html
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}{{ series.name }} - Edward Betts{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="container-fluid mt-2">
|
||||
<h1>{{ series.name }}</h1>
|
||||
|
||||
<dl class="row">
|
||||
{% if series.topic %}
|
||||
<dt class="col-sm-2">Topic</dt>
|
||||
<dd class="col-sm-10">{{ series.topic }}</dd>
|
||||
{% endif %}
|
||||
{% if series.usual_location or series.country %}
|
||||
<dt class="col-sm-2">Usual location</dt>
|
||||
<dd class="col-sm-10">
|
||||
{% set country = get_country(series.country) if series.country else None %}
|
||||
{% if country %}{{ country.flag }} {% endif %}{{ series.usual_location or "" }}
|
||||
</dd>
|
||||
{% endif %}
|
||||
{% if series.cadence %}
|
||||
<dt class="col-sm-2">Cadence</dt>
|
||||
<dd class="col-sm-10">{{ series.cadence }}</dd>
|
||||
{% endif %}
|
||||
{% if series.url %}
|
||||
<dt class="col-sm-2">Website</dt>
|
||||
<dd class="col-sm-10"><a href="{{ series.url }}">{{ series.url }}</a></dd>
|
||||
{% endif %}
|
||||
{% if series.notes %}
|
||||
<dt class="col-sm-2">Notes</dt>
|
||||
<dd class="col-sm-10">{{ series.notes }}</dd>
|
||||
{% endif %}
|
||||
</dl>
|
||||
|
||||
<h2>Editions</h2>
|
||||
<table class="table table-sm table-hover align-middle">
|
||||
<thead class="table-light">
|
||||
<tr>
|
||||
<th>Dates</th>
|
||||
<th>Conference</th>
|
||||
<th>Location</th>
|
||||
<th>Attendance</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for item in conferences %}
|
||||
<tr>
|
||||
<td class="text-nowrap text-muted small">
|
||||
{{ item.display_date }}
|
||||
{% if item.date_status == "tentative" %}
|
||||
<span class="badge text-bg-warning ms-1">tentative</span>
|
||||
{% elif item.date_status == "approximate" %}
|
||||
<span class="badge text-bg-secondary ms-1">approximate</span>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
{% if item.url %}<a href="{{ item.url }}">{{ item.name }}</a>
|
||||
{% else %}{{ item.name }}{% endif %}
|
||||
</td>
|
||||
<td>
|
||||
{% set country = get_country(item.country) if item.country else None %}
|
||||
{% if country %}{{ country.flag }} {% endif %}{{ item.location }}
|
||||
</td>
|
||||
<td>
|
||||
{% if item.going %}
|
||||
<span class="badge text-bg-success">going</span>
|
||||
{% endif %}
|
||||
{% if item.registered %}
|
||||
<span class="badge text-bg-primary">registered</span>
|
||||
{% endif %}
|
||||
{% if item.linked_trip %}
|
||||
{% set trip = item.linked_trip %}
|
||||
<a href="{{ url_for('trip_page', start=trip.start.isoformat()) }}"
|
||||
class="ms-1"
|
||||
title="Trip: {{ trip.title }}">
|
||||
trip{% if trip.title != item.name %}: {{ trip.title }}{% endif %}
|
||||
</a>
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{% endblock %}
|
||||
44
templates/conference_series_list.html
Normal file
44
templates/conference_series_list.html
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block title %}Conference Series - Edward Betts{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="container-fluid mt-2">
|
||||
<h1>Conference Series</h1>
|
||||
|
||||
<table class="table table-sm table-hover align-middle">
|
||||
<thead class="table-light">
|
||||
<tr>
|
||||
<th>Series</th>
|
||||
<th>Topic</th>
|
||||
<th>Usual location</th>
|
||||
<th>Conferences</th>
|
||||
<th>Next</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for item in series_list %}
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ url_for('conference_series_page', series_id=item.id) }}">{{ item.name }}</a>
|
||||
{% if item.url %}
|
||||
<a class="text-muted ms-1 text-decoration-none" href="{{ item.url }}">↗</a>
|
||||
{% endif %}
|
||||
</td>
|
||||
<td class="text-muted small">{{ item.topic or "" }}</td>
|
||||
<td>
|
||||
{% set country = get_country(item.country) if item.country else None %}
|
||||
{% if country %}{{ country.flag }} {% endif %}{{ item.usual_location or "" }}
|
||||
</td>
|
||||
<td>{{ item.count }}</td>
|
||||
<td class="text-muted small">
|
||||
{% if item.next_conf %}
|
||||
{{ item.next_conf.display_date }} · {{ item.next_conf.name }}
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
@ -28,6 +28,7 @@
|
|||
{% set conference_pages = [
|
||||
{"endpoint": "conference_list", "label": "Conferences" },
|
||||
{"endpoint": "past_conference_list", "label": "Past conferences" },
|
||||
{"endpoint": "conference_series_list", "label": "Conference series" },
|
||||
] %}
|
||||
|
||||
|
||||
|
|
@ -63,7 +64,7 @@
|
|||
</li>
|
||||
|
||||
<!-- Conference dropdown -->
|
||||
{% set conference_active = request.endpoint in ['conference_list', 'past_conference_list'] %}
|
||||
{% set conference_active = request.endpoint in ['conference_list', 'past_conference_list', 'conference_series_list', 'conference_series_page'] %}
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle{% if conference_active %} border border-white border-2 active{% endif %}" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
Conferences
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue