diff --git a/backend/app/routes/plex.py b/backend/app/routes/plex.py index af1a177..3b8b408 100644 --- a/backend/app/routes/plex.py +++ b/backend/app/routes/plex.py @@ -197,12 +197,6 @@ def watch_import_now( # --- Read: libraries / browse / show / image -------------------------------------------------- -def _enabled() -> None: - """Guard read endpoints when the module is off (avoids leaking a stale mirror).""" - # Read endpoints stay usable as long as a mirror exists; the toggle only gates sync + UI. - return None - - @router.get("/libraries") def list_libraries(user: User = Depends(current_user), db: Session = Depends(get_db)) -> dict: """The mirrored libraries the user can browse (drives the Plex scope selector).""" diff --git a/frontend/src/components/PlexBrowse.tsx b/frontend/src/components/PlexBrowse.tsx index 0164b4c..9a7f341 100644 --- a/frontend/src/components/PlexBrowse.tsx +++ b/frontend/src/components/PlexBrowse.tsx @@ -211,12 +211,6 @@ export default function PlexBrowse({ await api.plexSetState(card.id, next).catch(() => {}); qc.invalidateQueries({ queryKey: ["plex-library"] }); } - async function toggleEpisodeWatched(ep: PlexCard) { - const next = ep.status === "watched" ? "new" : "watched"; - optimisticStatus(ep.id, next); - await api.plexSetState(ep.id, next).catch(() => {}); - qc.invalidateQueries({ queryKey: ["plex-library"] }); - } // Apply a metadata filter (clicked on an info page / show hero / cast) then show the unified grid. // Array filters (genres/people/studios) UNION with what's set; scalars replace. Clicking a person // (cast/crew) widens to the 'both' scope so their movies AND shows show up together (mixed feed). @@ -348,7 +342,7 @@ export default function PlexBrowse({ ep={ep} withShowTitle onPlay={() => onCard(ep)} - onToggleWatched={() => toggleEpisodeWatched(ep)} + onToggleWatched={() => toggleWatched(ep)} /> ))} diff --git a/frontend/src/i18n/locales/de/plex.json b/frontend/src/i18n/locales/de/plex.json index 49f8a0d..c239936 100644 --- a/frontend/src/i18n/locales/de/plex.json +++ b/frontend/src/i18n/locales/de/plex.json @@ -12,7 +12,6 @@ "release": "Erscheinungsdatum" }, "filter": { - "library": "Bibliothek", "scope": "Bibliothek", "scopeOpt": { "both": "Alle", @@ -67,7 +66,6 @@ "noMatchesFiltered_other": "Keine Treffer — {{count}} Filter schränken die Ergebnisse zusätzlich ein.", "loading": "Wird geladen…", "empty": "Noch nichts hier. Starte eine Plex-Synchronisierung auf der Admin-Konfigurationsseite.", - "loadMore": "Mehr laden", "watched": "Angesehen", "inProgress": "Läuft", "play": "Abspielen", @@ -92,7 +90,6 @@ "markSeasonUnwatched": "Staffel als ungesehen", "addShowCollection": "Zur Sammlung" }, - "playerSoon": "Player kommt bald — „{{title}}“", "collEditor": { "manage": "Sammlungen", "title": "Sammlungen — {{title}}", @@ -218,9 +215,6 @@ "playAll": "Alle abspielen", "delete": "Playlist löschen", "empty": "Diese Playlist ist leer. Füge Titel über deren Infoseite hinzu.", - "up": "Nach oben", - "down": "Nach unten", - "remove": "Entfernen", "layoutAccordion": "Akkordeon-Ansicht", "layoutTree": "Baum-Ansicht", "removeShow": "Ganze Serie entfernen", diff --git a/frontend/src/i18n/locales/en/plex.json b/frontend/src/i18n/locales/en/plex.json index aa75fed..9b78e0a 100644 --- a/frontend/src/i18n/locales/en/plex.json +++ b/frontend/src/i18n/locales/en/plex.json @@ -12,7 +12,6 @@ "release": "Release date" }, "filter": { - "library": "Library", "scope": "Library", "scopeOpt": { "both": "All", @@ -67,7 +66,6 @@ "noMatchesFiltered_other": "No matches — {{count}} filters are also narrowing the results.", "loading": "Loading…", "empty": "Nothing here yet. Run a Plex sync from the admin Config page.", - "loadMore": "Load more", "watched": "Watched", "inProgress": "In progress", "play": "Play", @@ -92,7 +90,6 @@ "markSeasonUnwatched": "Mark season unwatched", "addShowCollection": "Add to collection" }, - "playerSoon": "Player coming soon — “{{title}}”", "collEditor": { "manage": "Collections", "title": "Collections — {{title}}", @@ -218,9 +215,6 @@ "playAll": "Play all", "delete": "Delete playlist", "empty": "This playlist is empty. Add titles from their info page.", - "up": "Move up", - "down": "Move down", - "remove": "Remove", "layoutAccordion": "Accordion view", "layoutTree": "Tree view", "removeShow": "Remove whole show", diff --git a/frontend/src/i18n/locales/hu/plex.json b/frontend/src/i18n/locales/hu/plex.json index d8d6a1a..e922099 100644 --- a/frontend/src/i18n/locales/hu/plex.json +++ b/frontend/src/i18n/locales/hu/plex.json @@ -12,7 +12,6 @@ "release": "Megjelenés dátuma" }, "filter": { - "library": "Könyvtár", "scope": "Könyvtár", "scopeOpt": { "both": "Mind", @@ -67,7 +66,6 @@ "noMatchesFiltered_other": "Nincs találat — {{count}} szűrő is szűkíti az eredményt.", "loading": "Betöltés…", "empty": "Még nincs itt semmi. Futtass egy Plex-szinkront az admin Konfiguráció oldalról.", - "loadMore": "Több betöltése", "watched": "Megnézve", "inProgress": "Folyamatban", "play": "Lejátszás", @@ -92,7 +90,6 @@ "markSeasonUnwatched": "Évad jelölés visszavonása", "addShowCollection": "Kollekcióhoz adás" }, - "playerSoon": "A lejátszó hamarosan jön — „{{title}}”", "collEditor": { "manage": "Kollekciók", "title": "Kollekciók — {{title}}", @@ -218,9 +215,6 @@ "playAll": "Összes lejátszása", "delete": "Lista törlése", "empty": "Ez a lista üres. Adj hozzá címeket az info-oldalukról.", - "up": "Fel", - "down": "Le", - "remove": "Eltávolítás", "layoutAccordion": "Harmonika nézet", "layoutTree": "Fa nézet", "removeShow": "Egész sorozat eltávolítása",