diff --git a/gallery/easel/route/view/common/templates/base.html b/gallery/easel/route/view/common/templates/base.html index b563d9d..52d9658 100644 --- a/gallery/easel/route/view/common/templates/base.html +++ b/gallery/easel/route/view/common/templates/base.html @@ -19,9 +19,11 @@ {% endblock %} - +
+ {% if not request | is_widget %}
+
{{request.query_params.widget}}
+ {% endif %}
{% block content %}{% endblock %}
+ {% if not request | is_widget %} + {% endif %}
-{# #} \ No newline at end of file diff --git a/gallery/easel/route/view/common/utils/template.py b/gallery/easel/route/view/common/utils/template.py index 25f66ab..59bb043 100644 --- a/gallery/easel/route/view/common/utils/template.py +++ b/gallery/easel/route/view/common/utils/template.py @@ -1,6 +1,7 @@ from pathlib import Path from babel.dates import format_date +from fastapi import Request from fastapi.templating import Jinja2Templates from gallery.version import __version__ @@ -8,6 +9,10 @@ from gallery.version import __version__ from ...translation import _ +def is_widget(request: Request) -> bool: + return request.url.hostname.startswith("weather") or (request.query_params.get("widget") is not None) + + def build_templates(templates_dir: Path | None = None, filters: dict | None = None) -> Jinja2Templates: directory = [Path(__file__).parent.parent / "templates"] if templates_dir: @@ -20,6 +25,7 @@ def build_templates(templates_dir: Path | None = None, filters: dict | None = No "format_date": format_date, } ) + templates.env.filters["is_widget"] = is_widget if filters: templates.env.filters.update(filters) return templates