Graphe des révisions
34 Révisions
Auteur SHA1 Message Date
Francois CB ce808118a5 update 1.0.7.0 in the manifest 2026-09-18 17:15:13 +02:00
Francois CB 12ce432f77 Fold 1.0.8.0 into 1.0.7.0 2026-09-18 17:15:13 +02:00
Francois CB 254eb1703f add 1.0.8.0 to the manifest 2026-09-18 16:31:45 +02:00
Francois CB 1c7acfe185 Add the client script while index.html is served
Writing the tag into index.html on disk fails on most fresh installs
(linuxserver image, distro packages, Docker as a normal user) because
the web files belong to root. A middleware now adds the tag to the
response instead, so the ShareLink action and the guest lockdown work
right after install. The on-disk edit stays as a best-effort extra, and
the tag uses a relative src so it also works under a base URL.

Bump to 1.0.8.0.
2026-09-18 16:31:45 +02:00
Francois CB 21ca14b780 add 1.0.7.0 to the manifest 2026-09-18 15:48:42 +02:00
Francois CB d88034c988 Don't let a failed index.html backup block the injection
On linuxserver/jellyfin the web folder belongs to root, so copying
index.html to index.html.sharelinks.bak threw even when index.html itself
was writable, and the ShareLink action never got injected. The backup is
best-effort now.

Bump to 1.0.7.0.
2026-09-18 15:48:42 +02:00
Francois CB c365b8859c add 1.0.6.0 to the manifest 2026-09-18 11:56:42 +02:00
Francois Coutau Bégarie 079a1de23e Fix guest sign-in on Jellyfin 12 (#22)
The sign-in page stored the guest's server entry with LastConnectionMode 1
(Remote) but only a ManualAddress. jellyfin-web 12 builds its ApiClient from
that entry, gets no address, throws "Must supply a serverAddress" and never
leaves the splash screen. Store mode 2 (Manual), which is what jellyfin-web
itself writes after a normal sign-in.

Also hide the Modern layout header links, user menu and drawer toggle for
guests (Modern is the default in 12), and close the item action sheet on
desktop when ShareLink opens its popup. Escape only closes it in the TV
layout, a click on the dialog container works everywhere.

Bump to 1.0.6.0.
2026-09-18 11:55:48 +02:00
Francois CB b48f977c22 add 1.0.5.0 to the manifest 2026-09-11 14:50:03 +02:00
Francois Coutau Bégarie f57c1a1955 Keep redemption working on Jellyfin 10.11.9 and later (#20)
Jellyfin 10.11.9 changed IUserManager.ChangePassword to take the user id
instead of the User. A call compiled against either signature throws
MissingMethodException on the other, so look up whichever one the server
has and call it through a delegate. Bumps to 1.0.5.0.
2026-09-11 14:49:55 +02:00
Francois CB 988c5e2b9b Make README wording clearer and more natural 2026-09-07 12:31:02 +02:00
Francois CB 8b14b57793 Correct the screenshot alt text 2026-08-29 22:59:11 +02:00
Francois CB 04d1a04bcb Drop build instructions from the README 2026-08-29 22:49:50 +02:00
Francois CB 06281aeb6d Rewrite the README: threat model, design decisions, tighter wording 2026-08-29 22:49:13 +02:00
Francois CB e2ed426622 Refine README.md for clarity and fix typos
Updated language for clarity and corrected minor typos.
2026-07-27 21:29:05 +02:00
Francois CB 911ab41b0c delete guest devices on teardown (#18)
Jellyfin does not cascade a user delete to the Device rows redemption
creates, and DeviceManager throws for the whole listing when one device's
user is missing, so a single leftover guest 404s the dashboard devices page.

Deletes the guest's devices before the user, and sweeps devices this plugin
created whose user is already gone at startup for links torn down by older
builds.
2026-07-27 20:56:04 +02:00
Francois CB d1ee74677b Block plugin routes for share guests (#16)
* block plugin routes for share guests

Adds a global MVC filter that refuses share-guest accounts on any plugin
controller. Jellyfin's own API stays open, the share tag policy already
bounds it and playback needs it.

Guests are identified by the auth provider marker on the account, so this
covers a leaked token used from curl or a native client, not just the web
client where the CSS lockdown runs.

* add plugin exception list and honest wording

Config page lists installed plugins with a checkbox each, for the ones that
need to answer guests during playback. Default is unticked.

Renames the hidden selectors setting to say it is cosmetic, and stops the
readme implying the web client lockdown confines anything.

* bump to 1.0.4.0
2026-07-27 20:39:21 +02:00
Francois CB 4c48861506 Revise README for clarity and add workflow images
Updated README to clarify guest session settings and added workflow steps with images.
2026-07-27 20:01:16 +02:00
Francois CB 98065fe170 Add new images to README 2026-07-27 19:30:44 +02:00
Francois CB 917b80fe50 Merge pull request #14 from Franciskid/fix/season-share-leaks-whole-series
Stop a shared season handing over the rest of the series
2026-07-27 00:35:25 +02:00
Francois CB a811095784 Update ShareLink expiry and image dimensions
Updated the expiry duration for ShareLink from 30 days to 7 days and changed the image dimensions in the README.
2026-07-27 00:16:37 +02:00
Francois CB bedd7bf36a Update README with new image and text corrections
Updated image source and fixed minor text formatting issues.
2026-07-26 23:52:47 +02:00
Francois CB 3ed982b893 Merge pull request #12 from Franciskid/feature/cleanup-finished-links
Add a button to clear out finished share links, and fold 1.0.3.1 back into 1.0.3.0
2026-07-26 23:06:40 +02:00
Francois CB 2f91845f7e Merge pull request #11 from Franciskid/fix/viewer-ceiling-refusal
Refuse an over-the-ceiling viewer without destroying the link
2026-07-26 21:48:41 +02:00
Francois CB 111bede362 Merge pull request #10 from Franciskid/feature/multi-use-links
Let a link be used by several people instead of dying on first open
2026-07-26 21:29:25 +02:00
Francois CB e419cbbce4 Merge pull request #9 from Franciskid/security/harden-redemption-and-expiry
Harden redemption, expiry limits, token storage and guest sign-in
2026-07-26 20:44:42 +02:00
Francois CB b9f57e24aa Merge pull request #8 from Franciskid/fix/hide-share-tags-from-non-admins
Keep the share tag out of the UI for everyone except admins
2026-07-26 20:44:11 +02:00
Francois CB 9607edd9a8 Merge pull request #7 from Franciskid/fix/menu-section-and-media-only
Move the ShareLink action to its own section, and only for media
2026-07-26 20:43:49 +02:00
Francois CB 95813b8e42 Merge pull request #6 from Franciskid/series-season-sharing
Share whole series and seasons
2026-07-08 01:51:15 +02:00
Francois CB c637558085 Merge pull request #5 from Franciskid/friendly-redeem-page
Friendly page for dead share links, empty selector default
2026-07-08 01:39:59 +02:00
Francois CB b66a88b72c Merge pull request #4 from Franciskid/server-minted-guest-sessions
Stop storing guest passwords, mint sessions server side
2026-07-08 01:16:48 +02:00
Francois CB 1d7d9b1b85 Add installation section to README
Added installation instructions for the plugin.
2026-07-07 23:40:14 +02:00
Francois CB dc01f87bf6 Delete ShareLinks.sln 2026-07-07 22:31:17 +02:00
Francois CB 58b4fdcbaa Enhance README with images and formatting
Added images and updated the README structure.
2026-07-07 22:29:00 +02:00