diff --git a/app/filters.py b/app/filters.py index 97b188e..d3c047f 100644 --- a/app/filters.py +++ b/app/filters.py @@ -98,6 +98,17 @@ def jellyfin_link(jellyfin_id: str) -> Markup: link = f"{jellyfin_server_url}/web/#/details?id={jellyfin_id}" return Markup(f'{jellyfin_id}') +@template_filter('jellyfin_link_button') +def jellyfin_link_btn(jellyfin_id: str) -> Markup: + + jellyfin_server_url = app.config.get('JELLYFIN_SERVER_URL') + if not jellyfin_server_url: + return Markup(f"JELLYFIN_SERVER_URL not configured") + + link = f"{jellyfin_server_url}/web/#/details?id={jellyfin_id}" + return Markup(f'Open in Jellyfin') + + # A template filter for displaying a datetime in a human-readable format @template_filter('human_datetime') def human_datetime(dt) -> str: diff --git a/templates/partials/_playlist_info.html b/templates/partials/_playlist_info.html index 1101543..52d136c 100644 --- a/templates/partials/_playlist_info.html +++ b/templates/partials/_playlist_info.html @@ -9,8 +9,9 @@

{{ item.track_count }} songs, {{ total_duration }}

Last Updated: {{ item.last_updated | human_datetime}} | Last Change: {{ item.last_changed | human_datetime}}

{% include 'partials/_add_remove_button.html' %} - {% if session['is_admin'] and item.jellyfin_id %}

+ {{item.jellyfin_id | jellyfin_link_button}} + {% if session['is_admin'] and item.jellyfin_id %} -

- {% endif %} + {% endif %} +