Add playlist link button to watchlist pages; fix LastCinema slug

- Each panel now has a full-width '→ OPEN FULL PLAYLIST ON YOUTUBE' link
  below the embed — resolves YouTube showing single video instead of playlist
- Link inherits panel accent color, inverts on hover
- Renamed TheLastCinema-watchlist.md → LastCinema-watchlist.md so build.py
  generates lastcinema.html (matching hub link)
- Regenerated all 5 collection pages

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-28 14:32:20 +02:00
parent dd51655792
commit aec3300e40
7 changed files with 223 additions and 2 deletions

View File

@@ -112,6 +112,8 @@ def build_panels_html(playlists: list) -> str:
embed_url = f"https://www.youtube.com/embed/videoseries?list={pl['list_id']}"
title_esc = escape(pl['name'].upper())
playlist_url = f"https://www.youtube.com/playlist?list={pl['list_id']}"
panels.append(f"""
<section class="playlist-panel panel-{color}">
<div class="panel-header">
@@ -125,6 +127,9 @@ def build_panels_html(playlists: list) -> str:
allowfullscreen>
</iframe>
</div>
<a href="{playlist_url}" target="_blank" rel="noopener" class="playlist-link">
→ OPEN FULL PLAYLIST ON YOUTUBE
</a>
</section>""")
return '\n'.join(panels)
@@ -405,6 +410,24 @@ def generate_html(data: dict, slug: str) -> str:
.panel-teal {{ --border-color: var(--wl-teal); }}
.panel-green {{ --border-color: var(--wl-green); }}
.panel-toucan {{ --border-color: var(--wl-toucan); }}
.playlist-link {{
display: block;
padding: 0.85rem 1.25rem;
font-weight: 700;
text-transform: uppercase;
font-size: 0.9rem;
letter-spacing: 0.08em;
color: var(--border-color);
text-decoration: none;
border-top: 1px solid var(--border-color);
transition: background 100ms ease, color 100ms ease;
}}
.playlist-link:hover {{
background: var(--border-color);
color: var(--bg-void);
}}
</style>
</head>
<body>