All checks were successful
Docker / docker (push) Successful in 1m43s
Bouton dans le header (visible uniquement en filtre 10/10) qui supprime toutes les notes 10/10 en une fois via l'API Trakt bulk. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
78 lines
2.7 KiB
HTML
78 lines
2.7 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="fr">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Trakt Rater</title>
|
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
|
|
<link rel="stylesheet" href="/static/style.css">
|
|
</head>
|
|
<body>
|
|
|
|
<!-- Login -->
|
|
<div id="login-screen" class="hidden">
|
|
<div class="login-card">
|
|
<div class="login-logo">
|
|
<svg viewBox="0 0 24 24" fill="currentColor" width="32" height="32"><path d="M7 4v16l13-8L7 4z"/></svg>
|
|
<h1>Trakt Rater</h1>
|
|
</div>
|
|
<p>Notez rapidement vos films non notés</p>
|
|
<a href="/auth/login" class="btn-primary">
|
|
<svg viewBox="0 0 24 24" fill="currentColor" width="16" height="16"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 14.5v-9l6 4.5-6 4.5z"/></svg>
|
|
Se connecter avec Trakt
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- App -->
|
|
<div id="app" class="hidden">
|
|
<header>
|
|
<div class="header-left">
|
|
<svg class="logo-mark" viewBox="0 0 24 24" fill="currentColor"><path d="M7 4v16l13-8L7 4z"/></svg>
|
|
<span class="app-name">Trakt Rater</span>
|
|
<span id="count-badge" class="badge">—</span>
|
|
</div>
|
|
<div class="header-right">
|
|
<div class="ctrl">
|
|
<label>Afficher</label>
|
|
<select id="filter-select">
|
|
<option value="all">Tous</option>
|
|
<option value="unrated">Non notés</option>
|
|
<option value="10">Notés 10/10</option>
|
|
</select>
|
|
</div>
|
|
<div class="ctrl">
|
|
<label>Trier par</label>
|
|
<select id="sort-select">
|
|
<option value="watched_at">Date de visionnage</option>
|
|
<option value="title">Titre</option>
|
|
<option value="year">Année</option>
|
|
</select>
|
|
</div>
|
|
<button id="remove-all-10-btn" class="btn-danger hidden" onclick="removeAll10()">Supprimer tous les 10/10</button>
|
|
<button id="skipped-toggle" class="btn-ghost" onclick="toggleSkipped()">Voir les passés (<span id="skipped-count">0</span>)</button>
|
|
<a href="/auth/logout" class="btn-ghost">Déconnexion</a>
|
|
</div>
|
|
</header>
|
|
|
|
<main>
|
|
<div id="loading" class="state hidden">
|
|
<div class="spinner"></div>
|
|
<span>Chargement…</span>
|
|
</div>
|
|
<div id="empty" class="state hidden">
|
|
<span style="font-size:2rem">🎉</span>
|
|
<p>Tous les films sont notés !</p>
|
|
</div>
|
|
<div id="movie-list"></div>
|
|
<div id="pagination"></div>
|
|
</main>
|
|
</div>
|
|
|
|
<div id="toast" class="toast"></div>
|
|
|
|
<script src="/static/app.js"></script>
|
|
</body>
|
|
</html>
|