Commit Graph

185 Commits

Author SHA1 Message Date
Marc Brooks 70b4589382 Fix Book collections scanning all items
Added static method GetBaseItemKindsForCollectionType in ItemsController (moved from ContentFolderImageProvider to be shared)

Added AudioBook to GetRepresentativeItemTypes for CollectionType.books for consistency

Added GetBooks to GetUserItems for CollectionType.books which gets BaseItemKind.Book and BaseItemKind.AudioBook

Move GetBaseItemKindsForCollectionType to DtoExtensions

Cleaned up the missing null checks and used new collection expressions.
Associate Person to Book and AudioBook for related items.
2026-06-26 11:25:58 -05:00
Shadowghost 99ad70fbc8 Wrap method parameters 2026-04-01 18:01:25 +02:00
Shadowghost ae5420d4ae Handle linkedChildren in GetPlayedAndTotalCountBatch and optimize filter 2026-02-21 22:38:07 +01:00
Shadowghost 0f1a6fe4c2 Fix IsPlayed filter and setting BoxSet played/unplayed 2026-02-21 19:58:00 +01:00
Shadowghost 5996c4afce Complete LinkedChildren integration and batch DTO optimizations
This commit integrates remaining performance changes:

- Add batch user data fetching in DtoService to reduce N+1 queries
- Add GetNextUpEpisodesBatch in TVSeriesManager for efficient batch retrieval
- Update Video/Movie/BoxSet to use LibraryManager for alternate versions
- Transition LinkedChild to use ItemId instead of Path (obsolete Path/LibraryItemId)
- Update providers and controllers for LinkedChildren-based references
- Add NextUpEpisodeBatchResult for batched episode queries
- Integrate IDescendantQueryProvider in SqliteDatabaseProvider
2026-01-18 19:48:46 +01:00
evan314159 8b2a8b94b6 avoid Take(0) when limit == 0 (#14608)
Co-authored-by: Evan <evan@MacBook-Pro.local>
2025-12-08 21:15:46 -07:00
JPVenson 2aa39226c6 Apply filter server side (#14856) 2025-09-24 18:15:10 -06:00
Cody Robibero 4d36bd635d Revert IsPlayed optimization, pass UserItemData to IsPlayed when available (#14786) 2025-09-14 11:18:21 -06:00
Cody Robibero da3f3b09d9 Use existing userData (#14703) 2025-08-26 16:09:17 -06:00
Maxime e83b992eef Fix seasons random (#13224)
Sorting was always enabled so removed the `enableSorting` parameter
in QueryResult method.
2025-06-18 00:41:09 +02:00
Shane Powell 08b2ffeaab fixes #14193 (#14203) 2025-06-03 15:21:35 -06:00
JPVenson 42bdb22bfb Fixed namespaces 2025-03-25 16:45:00 +01:00
JPVenson 160020c551 WIP fixed namespaces 2025-03-25 15:30:22 +00:00
JPVenson aa811eb1e3 Prepared Seperation of Database components for future multi provider support 2025-01-26 20:45:28 +00:00
JPVenson b09a41ad1f WIP porting new Repository structure 2024-10-09 10:36:08 +00:00
Bond-009 7631956451 Backport pull request #12550 from jellyfin/release-10.9.z
Create and use FormattingStreamWriter

Original-merge: cd2f2ca178

Merged-by: Bond-009 <bond.009@outlook.com>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
2024-09-07 18:09:52 -04:00
Bond_009 a90316b4d9 Replace UserId with User in NextUpQuery 2024-08-05 17:17:57 +02:00
ItsAllAboutTheCode 24f355a779 Changed GetThemeMedia to support SortBy/Order options (#12167)
* Changed `GetThemeMedia` to support SortBy/Order options

The `GetThemeMedia, `GetThemeVideos` and `GetThemeSongs` functions can optionally sort the results based based on passing an ItemSortBy type and a SortOrder.

This is intended to be used by jellyfin-web in order to allow users to control the order of theme playback.
See PR: https://github.com/jellyfin/jellyfin-web/pull/5714

* Update MediaBrowser.Controller/Entities/BaseItem.cs

Fix the `GetThemeVideos` two argument overload having both parameters defaulted.
For the two argument overload, both parameters are required.
2024-07-21 16:16:31 +02:00
Cody Robibero e7b8d45bbb Use helper function to compare guid (#10825) 2024-01-17 08:51:39 -07:00
Cody Robibero 033cfa59c4 Convert CollectionType to use lowercase enum names 2023-12-08 15:45:36 -07:00
Cody Robibero 892973a9e3 Merge branch 'master' into media-type 2023-11-09 22:03:55 -07:00
Cody Robibero 906f701fa8 Convert CollectionType, SpecialFolderType to enum (#9764)
* Convert CollectionType, SpecialFolderType to enum

* Hide internal enum CollectionType values

* Apply suggestions from code review

Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>

* Fix recent change

* Update Jellyfin.Data/Attributes/OpenApiIgnoreEnumAttribute.cs

Co-authored-by: Patrick Barron <barronpm@gmail.com>

---------

Co-authored-by: Shadowghost <Shadowghost@users.noreply.github.com>
Co-authored-by: Patrick Barron <barronpm@gmail.com>
2023-11-09 14:00:29 -07:00
Cody Robibero 2920611ffc Convert string MediaType to enum MediaType 2023-10-10 15:57:15 -06:00
Bond_009 52194f56b5 Replace != null with is not null 2022-12-05 15:01:13 +01:00
Bond_009 c7d50d640e Replace == null with is null 2022-12-05 15:00:20 +01:00
Niels van Velzen 61afd029df Check for empty guid 2022-08-14 12:58:38 +02:00
Niels van Velzen 0f91244239 Use Guid for adjacentTo API parameter 2022-08-14 12:47:25 +02:00
Bond_009 f50a250cd9 Optimize Guid comparisons
* Use Guid.Equals(Guid) instead of the == override
* Ban the usage of Guid.Equals(Object) to prevent accidental boxing
* Compare to default(Guid) instead of Guid.Empty
2022-02-21 14:15:09 +01:00
Cody Robibero a60cb280a3 Properly populate QueryResult 2022-01-20 08:53:06 -07:00
cvium b880dc8a4a Use our own Contains extension 2021-12-20 13:31:07 +01:00
Claus Vium 9a0618552b Merge branch 'master' into what_could_go_wrong 2021-12-15 08:38:39 +01:00
Cody Robibero 32629cd7da Use BaseItemKind where possible 2021-12-12 06:11:27 -07:00
cvium fde84a1e00 Refactor extras parsing 2021-12-07 15:24:57 +01:00
cvium b50c3852ef Remove unused dependencies 2021-11-16 12:24:17 +01:00
Cody Robibero 65f8d8c0cd [CA1801] Parameter is never used. Remove the parameter or use it in the method body. 2021-07-10 10:09:02 -06:00
Cody Robibero d461e3912a Remove warninigs from MediaBrowser.Controller (Part 3) (#6078)
Co-authored-by: Bond-009 <bond.009@outlook.com>
2021-06-06 17:16:41 +02:00
Bond_009 fb090df0b5 Enable nullable reference types for MediaBrowser.Controller 2021-05-07 00:39:20 +02:00
Bond_009 f46195899e Improve perf of db save and query 2021-04-21 22:25:08 +02:00
crobibero 3cc0dd7e12 Reduce RequestHelpers.Split usage and remove RequestHelpers.GetGuids usage. 2020-11-16 20:29:46 -07:00
Anthony Lavado 6205fb4b6a Merge pull request #4341 from Bond-009/minor6
Minor improvements
2020-11-02 11:10:39 -05:00
Bond_009 49569ca0a0 Use nameof where possible 2020-10-17 16:19:57 +02:00
Jan-Pieter Baert ec91d3893d Fix SA 1116 warnings 2020-10-12 20:05:11 +02:00
Matt Montgomery 53d5f64e03 Fix SA1513, SA1514, SA1507, and SA1508 2020-09-28 15:04:31 -05:00
Bond_009 ab2147751f Make MediaBrowser.MediaEncoding warnings free 2020-08-20 12:16:24 +02:00
Bond_009 68edccd9f4 More warn 2020-08-19 18:02:34 +02:00
Patrick Barron ab396225ea Migrate Display Preferences to EF Core 2020-07-17 16:11:53 -04:00
crobibero 1398c2117c Revert ILoggerFactory usage in BaseItem.cs 2020-06-23 07:31:59 -06:00
telans 247f9c61e6 fix SA1513/SA1516 2020-06-16 16:11:30 +12:00
telans 3d9049ef08 fix SA1508 2020-06-15 10:45:55 +12:00
telans acd4389653 fix SA1005 2020-06-15 10:41:00 +12:00