Commit Graph

581 Commits

Author SHA1 Message Date
dr-carrot
f6b5a6fe9f Merge branch 'develop' of https://github.com/Fallenbagel/jellyseerr into v1.7.0/postgresql 2024-05-08 17:11:54 -04:00
Joshua M. Boniface
c0a0b9c8a8 fix: use UTF8 encoding for webhook JSON (#714) 2024-04-29 12:19:01 +05:00
dr-carrot
cf4e3fd579 Merge branch 'develop' of https://github.com/Fallenbagel/jellyseerr into v1.7.0/postgresql 2024-04-23 18:06:12 -04:00
Fallenbagel
3856061fe1 fix(jellyfinapi): refactors jellyfin library sync to support automatic grouping and collections (#700)
* fix(jellyfinapi): refactors jellyfin library sync to support automatic grouping and collections

Previously, #450 added support for automatic library grouping. However, some users reported that
they were getting a 401 when using custom authentication such as LDAP. Therefore, that PR was
reverted (#524). This PR adds back the support for automatic library grouping for jellyfin
authentication users using the endpoint `/Library/MediaFolders` and fallsback to User views endpoint
if they're unable to sync the libraries (some, not all LDAP users had issues. Some reported that it
worked despite having custom authentication). Once it falls back to user views endpoint for syncing,
now it will detect if automatic grouping is enabled giving a warning that its not supported when
using some custom authentication methods. This PR also fixed collection syncing by expanding the
boxsets when syncing.

fix #256, fix #489, re #450, #524, fix #515, fix #474, fix #473

* refactor(i18n): adds the suffix "jellyfin" to jellyfin library sync message keys

* refactor(i18n): extract translation keys

* refactor: remove console logs

* refactor: remove more console logs

* refactor: apply review suggestions

* chore: fix prettier failing on .github file
2024-04-16 00:04:11 +05:00
dr-carrot
326d2cb4ca Merge remote-tracking branch 'og/develop' into v1.7.0/postgresql 2024-04-04 11:37:53 -04:00
Fallenbagel
0900a95532 fix: nullable type for jellyfinMediaId(4k) (#702)
The jellyfinMediaId(4k) properties were inferred as string | undefined, causing them to be set to
undefined when assigning null. This prevented the media from being saved correctly to the SQLite
database, as it doesn't accept undefined values. This resolves the availabilitySync job issue where
the "play on" button wasn't being removed for all media server types.

fix #668
2024-03-31 16:26:09 +05:00
Danish Humair
010df62776 feat: check if first jellyfin user is admin (#635)
* feat: merge check if first jellyfin user is admin

re #610

* refactor(i18n): extract admin error message into en locale

---------

Co-authored-by: fallenbagel <98979876+Fallenbagel@users.noreply.github.com>
2024-03-30 05:53:14 +05:00
Fallenbagel
530be4272c fix(jellyfinscanner): conditionally assign the jellyfinMediaId and jellyfinMediaId4k (#686)
Previously `jellyfinMediaId4k` was being assigned even if 4k server was not setup or even if 4k
content were not present. This fixes it by conditionally assigning the jellyfinMediaId and
JellyfinMediaId4k

fix #681
2024-03-14 03:11:53 +05:00
Fallenbagel
c2e87714b4 fix(embyauth): remove the accidentally added mediaServerType change code from another PR (#684)
Accidentally added the mediaServerType change code from another feature branch/PR during the auth
logic refactor that broke emby logins.
2024-03-14 01:08:09 +05:00
dr-carrot
637e7dbd8e Merge remote-tracking branch 'og/develop' into v1.7.0/postgresql 2024-03-03 17:24:16 -05:00
Fallenbagel
4c9013729e refactor: jellyfin authentication and add gravatar for missing avatars of jellyfin users (#664)
* refactor: jellyfin authentication

This refactor standardizes the authentication approach in Jellyfin to mirror the method employed in
Plex authentication for consistency

* feat: use gravatar for jellyfin users' with missing jellyfin avatars
2024-02-23 09:38:18 +05:00
Fallenbagel
3eb1bb3d8f feat(job): media availability support for jellyfin/emby (#522)
* feat(job): media availability support for jellyfin/emby

This refactors the media availability job to support jellyfin/emby for media removal automatically.
Needs further testing on 4k items (as I have not yet tested with 4k), however, non-4k items work as
intended.

fix #406, fix #193, fix #516, fix #362, fix #84

* fix(availabilitysync): use the correct 4k jellyfinMediaId

* fix: season mapping for plex

Fixes a bug introduced with this PR where media availability sync job removed the seasons from all
series even when those seasons existed
2024-02-23 07:42:59 +05:00
InvalidArgumentException
db84f6529a fix(jellyfin.ts): process virtual seasons if they have non virtual episodes (#639)
All seasons are processed now, but those without any episodes are filtered out again as unavailable.
This fixes in issue where jellyfin reports all seasons as virtual
2024-02-01 16:10:06 +05:00
dr-carrot
88b67686ff fix: remove eager load 2024-01-27 19:56:28 -05:00
dr-carrot
86444b80b9 chore: cleanup extra psql code 2024-01-27 19:29:41 -05:00
dr-carrot
5f7679982a fix: added not null to migration so typeorm doesn't delete ids 2024-01-27 19:08:47 -05:00
dr-carrot
610c372498 chore: finish log cleanup 2024-01-27 19:07:57 -05:00
dr-carrot
7aca0be41c chore: more log cleanup 2024-01-27 18:34:55 -05:00
dr-carrot
0bab6887b0 chore: mild log cleanup 2024-01-27 18:18:16 -05:00
dr-carrot
0d6a1f12fb chore: added some more+ additional debug sanity checks 2024-01-27 18:00:42 -05:00
dr-carrot
87c8444ec6 chore: added some more additional debug sanity checks 2024-01-27 17:15:55 -05:00
dr-carrot
f08c537cba chore: added some more debug sanity checks 2024-01-27 17:13:55 -05:00
dr-carrot
b1b4dd9cfc chore: added some debug sanity checks 2024-01-27 17:07:10 -05:00
dr-carrot
eb111ac1db fix: removed psql specific relation checks 2024-01-22 17:34:02 -05:00
dr-carrot
106cd195d4 fix: added default dates to postgres migration 2024-01-20 23:58:00 -05:00
dr-carrot
42ad4e0ae3 chore: cleanup logs 2024-01-20 17:50:56 -05:00
dr-carrot
501859207a chore: small tweaks for the datasource. Added docs for db setup 2024-01-20 17:50:04 -05:00
dr-carrot
8c7004c50d feat: added logging option to other datasources 2024-01-20 14:50:24 -05:00
dr-carrot
b594dec992 chore: relocate pushover sound migration 2024-01-20 14:49:23 -05:00
dr-carrot
e93ab06504 fix: issue with session migration 2024-01-20 14:48:47 -05:00
dr-carrot
0581d7b6ad fix: added option to log queries 2024-01-20 14:24:59 -05:00
dr-carrot
00c811d10d fix: added pushover sound migration tto initial migration 2024-01-19 19:17:07 -05:00
dr-carrot
14d3ec22b0 fix: access order 2024-01-19 18:31:31 -05:00
dr-carrot
e6cc2c55a2 Merged changes from develop 2024-01-19 17:19:58 -05:00
dr-carrot
4d85f29843 feat(postgres and migrations): added migrations for postgres & imporved ssl for postgres config
#186
2024-01-19 16:58:46 -05:00
Ryan Algar
44aaca0fb2 feat(db): add flag to toggle TLS for Postgres 2023-12-16 10:37:45 -08:00
fallenbagel
a0415e7b6b Merge branch 'develop' into custom-jellyfin-password-reset 2023-11-30 09:26:14 +05:00
fallenbagel
91f97f96ab refactor: jellyfin scan jobs moved from server/jobs to server/libs/scanners 2023-11-27 11:09:45 +05:00
Ryan Algar
abd80c1fa8 fix: don't use SQLite idiom when using PgSQL 2023-11-14 16:03:40 -08:00
Ryan Algar
573b64f901 test(pgsql): disable root certificate verification 2023-11-14 15:40:35 -08:00
zackhow
b39a5a7d82 feat: support for postgresql 2023-11-14 15:39:23 -08:00
Derek Paschal
13dd3cad54 Making the new setting optional 2023-11-14 08:51:29 -06:00
Derek Paschal
ce9802d5d4 Adding Jellyfin Setting for Custom "Forgot Password" URL
Adding Jellyfin Setting for Custom "Forgot Password" URL.  Useful in cases where you are using a custom authentication provider such as the LDAP plugin, Authelia, lldap, or any other external auth scheme with its own password reset page.
2023-11-14 08:20:28 -06:00
fallenbagel
67bde68596 refactor: cleans up local watchlist logic and fixes translation extractions 2023-11-08 01:04:20 +05:00
fallenbagel
3cb9494e62 fix(watchlist): discover local watchlist item display and profile local watchlist slider visibility
Previously when you expand the `Your Watchlist` slider from the discover page to see all your
watchlist items, you only see the first 20 items. This commit fixes that so you can see all your
local watchlist items when you expand that slider. In addition, this commit also fixes the visiblity
of profile watchlist slider for local watchlists
2023-11-08 00:41:28 +05:00
fallenbagel
405f6bbb7f fix(jellyfinlogin): use externalHostname if set for forgetpassword link
Implemented dynamic URL generation for the 'Forgot Password' feature. If jellyfin external hostname
is set, the URL is generated based on it; otherwise, jellyfin hostname is used as the base URL. The
URL includes additional parameters to handle emby support.

fix #199, fix #424, re #212
2023-11-07 04:13:19 +05:00
fallenbagel
b5acc09ba9 revert(jellyfinapi): reverts #450 as it broke library sync support for local accounts using LDAP
Reverted #450 which addressed the issue where the automatic grouping enabled libraries were not
functioning correctly. The previous fix inadvertently caused a bug for Jellyfin LDAP users,
preventing library syncing with a 401 error. Reverting this change temporarily until support for
automatic library grouping can be re-implemented

fix #489
2023-11-07 01:47:54 +05:00
fallenbagel
b9c0d5f46e Merge remote-tracking branch 'upstream/develop' into develop 2023-11-05 17:29:23 +05:00
Ryan Cohen
b40ba07a4d fix: request watchlist items sequentially to prevent bypassing quota (#3667) 2023-11-05 10:39:22 +09:00
RemiRigal
c84ca43074 feat: update SameSite policy of session cookie to Lax (#3650)
* update session cookie samesite policy to lax

* set cookie samesite policy based on csrf protection setting
2023-10-18 15:05:22 +00:00