Add a custom Jinja filter `image_url` to `app.py` to correctly resolve image paths from object storage or local static files, and update all relevant templates (members, sponsors, competitions, contributors) to use this new filter instead of the `url_for('static', filename=...)` function, ensuring images are displayed correctly regardless of their storage location.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: cd9a7d26-a4e5-4215-975c-c59f4ed1f06d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: a02b1418-2e19-496d-9921-3a4afe97ac0d
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d0a1d46d-d203-4308-bc6a-312ac7c0243b/cd9a7d26-a4e5-4215-975c-c59f4ed1f06d/05bPjFc
63 lines
2.1 KiB
HTML
63 lines
2.1 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% block title %}Technical Turbulence - Competition Log{% endblock %}
|
|
|
|
{% block content %}
|
|
|
|
<div class="competitions">
|
|
<div class="sidebar">
|
|
<div class="sidebar-content">
|
|
{% for season in competitions_by_season.keys() %}
|
|
<a href="#{{ season.replace(' ', '') }}">{{ season }}</a>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="competitions-container">
|
|
<div class="competitions-inner">
|
|
<h1 class="heading" id="comp">Competition log</h1>
|
|
<hr id="comp-hr">
|
|
|
|
<div class="content-container">
|
|
{% for season, comps in competitions_by_season.items() %}
|
|
<h1 id="{{ season.replace(' ', '') }}" class="competition-year">{{ season }}</h1>
|
|
|
|
{% for comp in comps %}
|
|
<div class="competition-card">
|
|
{% if comp.image_path %}
|
|
<div class="competition-card-img">
|
|
<img src="{{ comp.image_path|image_url }}">
|
|
</div>
|
|
{% endif %}
|
|
<div class="competition-header">
|
|
<p class="competition-name">{{ comp.event_name }}</p>
|
|
<p class="middle-dot">·</p>
|
|
<p class="competition-date">{{ comp.date }}</p>
|
|
</div>
|
|
|
|
<p class="competition-subtitle">Description</p>
|
|
|
|
<p class="competition-description">{{ comp.description }}</p>
|
|
|
|
{% if comp.awards %}
|
|
<p class="competition-subtitle">Awards</p>
|
|
|
|
<ul class="competition-awards">
|
|
{% for award in comp.awards.split('|') %}
|
|
<li>{{ award }}</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endif %}
|
|
</div>
|
|
{% endfor %}
|
|
|
|
{% endfor %}
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{% endblock %}
|