Repository navigation
Conversation
Lumen asked SeerrNG again for everything on every visit: going back to Discover repeated all its calls, including one detail lookup per title in "New on <server>". Besides being slow (SeerrNG's first lookup of a title can take seconds), every call counts against SeerrNG's per-account rate limit, so quick browsing could hit 429s. - apiCache.ts: answers younger than 3 minutes are reused without asking; older ones (up to a day) show at once while a new answer loads. Saved per account in localStorage so a reopened app starts from what it last showed; signing out or switching account drops it. - Any request or other change (POST/PUT/DELETE, another narrator) marks everything stale, so nothing keeps showing a title as not requested. Requests, quota, sign-in and public settings are always re-checked. - useApi, the Discover rows, "New on <server>" (the finished row is saved too) and list pages use it. A failed refresh keeps the saved answer up. - Books, Audiobooks, Movies and Series show placeholder posters while the first page loads, so a slow answer doesn't look like an empty page. Checked in the SeerrNG Android app (emulator, Android 16): Movies and Back, and a full close and reopen, ask SeerrNG for none of Discover's rows again; Back still behaves.
…ttings Tester feedback: - Requests gets an Everyone tab for admins and request managers: every waiting request first, then the newest, each with who asked, and Approve / Decline on waiting ones. The tab shows how many are waiting. - The request sheet and the Advanced options get "Request as" for people SeerrNG lets choose the requester (Admin, or Manage Users together with Manage Requests). - Title pages show the posters' corner glyph on their poster: the check when it's in the library, the clock when requested. - "Lumen settings for everyone" can be saved from the admin page. A small nginx script (njs, already in the image) checks with SeerrNG that the person is an admin, then writes lumen-config.json into a mounted /lumen-data folder. Without that folder the page keeps the download.
With a big download queue, the request that was actually downloading could be far down the history, past the newest requests Lumen lists, so the Requests page showed only queued titles at 0%. Both Requests lists now also pull in every request whose download has started (from SeerrNG's in-progress requests); the Everyone tab puts them right after the ones waiting for approval, furthest along first. Radarr and Sonarr report everything in the download client's queue as "downloading". Requests and posters now say Queued while none of it is here yet.
…ab icon Mirrors snapetech consolidate/next 48d2ff30 and f6bfd8f0: admin request actions on the Everyone tab (Change, Retry, Remove) and logo / tab icon uploads on the admin settings page.
Tester feedback (Tatsu, #4): - branding.logoShape frames the custom logo: "rounded" (default), "circle", or "raw" (the file as it is: transparent, uncropped, as wide as it is up to 160px). The admin settings page picks it, with a live preview. The logo CSS now beats the play mark's own rules, which gave a custom logo the accent square on the sign-in card. - mediaServerName replaces Plex / Jellyfin / Emby in every label, filter and the sign-in page (up to 40 characters). Set on the admin page; empty keeps the real name.
Owner
Author
|
Sent to SeerrNG as snapetech-org/seerrng#596. New tester PRs here go into the next consolidated PR. |
The Everyone tab listed waiting requests, started downloads and only the 20 newest requests, so a big library (hundreds of requests) showed a small slice. It now has SeerrNG's own filters with their counts (All, Waiting, Downloading, Failed, Available) and a Show more button that loads 20 more at a time (in SeerrNG pages of up to 100). All still puts waiting requests and started downloads first; Downloading puts started ones first.
Owner
Author
|
Merged upstream as snapetech-org/seerrng#596 (a03a2a04), with three review fixes from the maintainer: uploads keep earlier images, cache expiry is checked on every read, and the Everyone tab shows an error with Retry instead of an empty list. main now has it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Next SeerrNG PR (consolidated)
This branch collects the changes for the next Lumen PR to SeerrNG. Tester PRs here that pass review are added to
next, keeping each tester as the commit author. When it's ready,nextgoes to snapetech-org/seerrng as one PR. Don't merge this intomain:lumen/there is synced from SeerrNG.Based on SeerrNG main f7bc03b4, which includes #595 (v3.72.21).
Included so far
lumen-config.jsoninto a mounted/lumen-datafolder. It only accepts JSON objects up to 64 KB, sent as JSON. The saved file wins over a mounted one./lumen-datamounted, the admin settings page has Upload buttons. The image is checked by its first bytes (PNG, JPEG, WebP, SVG or ICO, up to 2 MB, SeerrNG admins only) and kept in/lumen-data/brandingunder a new name each time, so no browser shows an old copy. Its address is saved for everyone straight away, and other unsaved edits on the page stay unsaved./branding/serves uploads first, then a mounted branding folder, with a CSP that lets nothing there run scripts.branding.logoShape: rounded square (default), circle, or "as uploaded" (transparent, uncropped, keeps its width). Picked on the admin page with a live preview. The logo CSS now beats the play mark's rules, which put a custom logo on the accent square on the sign-in card.mediaServerNamereplaces Plex / Jellyfin / Emby in every label, filter and the sign-in page.Testing
tsc --noEmit, build, unit tests and Playwright on desktop/iPhone/Android/tablet: 327 passed, 13 skipped, plus 22 unit tests (including the real-nginx proxy tests). New tests cover the cache (reuse, ask again after a request, drop on sign-out), Everyone with Approve/Decline and who can see it, Request as and who gets it, the title-page badge, and Save for everyone (saving, and the read-only folder note), started downloads and Queued, Change / Retry / Remove, and uploads.To add