{% extends "base.html" %} {% import "partials/detail_cards.html" as detail %} {% import "partials/icons.html" as icons %} {% import "partials/image_section.html" as img %} {% block title %}Brewlog · {{ cup.roast_name }} at {{ cup.cafe_name }}{% endblock %} {% block description %} {{ cup.roast_name }} by {{ cup.roaster_name }} at {{ cup.cafe_name }}, {{ cup.cafe_city }}. {% endblock %} {% block og_title %}{{ cup.roast_name }} at {{ cup.cafe_name }} — Brewlog{% endblock %} {% block og_description %} {{ cup.roast_name }} by {{ cup.roaster_name }} at {{ cup.cafe_name }}, {{ cup.cafe_city }}. {% endblock %} {% block head %} {% endblock %} {% block content %}
{{ img::image_thumbnail("cup", cup.id, image_url, is_authenticated) }}

{{ cup.roast_name }}

Cups · {{ cup.created_date }}

{% if image_url.is_some() %} {{ img::lightbox_script() }} {% endif %} {# ── Coffee + map ── #}
{{ detail::coffee_card(cup.roast_name, cup.roaster_name, cup.origin, cup.origin_flag, cup.region, cup.producer, cup.process, cup.tasting_notes, roaster_slug, roast_slug) }} {{ detail::map_with_legend(cup.map_countries, cup.map_max, cup.legend_entries) }}
{# ── Roaster & cafe ── #}
{{ detail::roaster_card(cup.roaster_name, cup.roaster_country, cup.roaster_country_flag, cup.roaster_city, cup.roaster_homepage, roaster_slug) }}

Cafe

Name
{{ cup.cafe_name }}
Country
{% if !cup.cafe_country_flag.is_empty() %}{{ cup.cafe_country_flag }}{% endif %}{{ cup.cafe_country }}
City
{{ cup.cafe_city }}
{% if let Some(url) = cup.cafe_website %}
Website
Visit Website
{% endif %}
{% if is_authenticated %} {{ detail::edit_delete_buttons(edit_url, "cup", "/api/v1/cups", cup.id) }} {% endif %} {% endblock %}