* feat: updated radarr settings API to support 4k
* feat: refactored the radarr setting page to support the new model
* feat: Added 4k radarr to the settings page
* feat: Added the new Movie 4k Request
* feat: Got some of the backend rules done
* feat: Made a load of progress
* Removed the csproj ref
* feat: fixed the radarr ui
* feat: fixed up all the movie requests page
* feat: Hide the 4K buttons when the user does not have the 4k permission
* fix: fixed the templateref issue
* test: fixed up all the tests
* feat: Added migrations for media sever quality. Emby and Radarr Sync jobs now pull the quality
* feat: Done the media sync jobs
* feat: plex availability checker
* feat: Updated the jellyfin availability checker to check for 4k
* feat: updated emby availbility checker to check for 4k
* feat: almost got it all working now
* feat: Added 4k approve to the request list options
* feat: Added 4k to the requests list and bulk approve
* feat: Added the features service
* feat: added feature update to the frontend
* feat: got the features page working
* feat: Applied the feature service on the backend
* feat: added the feature flag on the UI
* feat: added 4k to the card
* Add sanity checks upon media server sync
Fixes Media content may be improperly imported into Ombi #4472
* Fix Jellyfin sync
* Refactor Emby and Jellyfin provider ids
* Use new method Any
* Fix log formatting
* Declutter newsletter info for series
- Do not list episodes if the series is complete
- Do not list all episodes of a season if the season is complete
* Use proper empty string constant
[skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* Abstract media servers content into interfaces
* Media server entities into abstract classes
* Abstract media server content repository
* First pass at newsletter refactoring
* Minor code clean up
* Attempt at abstracting repositories (WIP)
* Fixed cast issue
* Corrected the other properties
* A step towards newsletter refactoring
* Clean up leftovers
* Fix broken episodes db interaction
* Save absolute URL for Plex content
Let's be consistent with Emby and Jellyfin
* Fix broken integration with Plex libraries
* Fix error when multiple media servers configured
* Fix newsletter being sent if no movies or episodes
* Fix broken tests
* Remove unneccesary logs
* Allow for newsletter localization
* Generate file in English
* Fix unsubscribe text unlocalized by messy merge
* Fix indentation
Co-authored-by: tidusjar <tidusjar@gmail.com>
* Abstract media servers content into interfaces
* Media server entities into abstract classes
* Abstract media server content repository
* First pass at newsletter refactoring
* Minor code clean up
* Attempt at abstracting repositories (WIP)
* Fixed cast issue
* Corrected the other properties
* A step towards newsletter refactoring
* Clean up leftovers
* Fix broken episodes db interaction
* Save absolute URL for Plex content
Let's be consistent with Emby and Jellyfin
* Fix broken integration with Plex libraries
* Fix error when multiple media servers configured
* Fix newsletter being sent if no movies or episodes
* Fix broken tests
* Remove unneccesary logs
* Expose stored media server URL
No need to recalculate it
+ Plex URL was broken due to an earlier change
* Remove unused variable
* Remove obsolete tests
URLs are now fetched from database directly
* Retro-compatibility for Plex content URL
Solves URL for media synced before absolute URL was saved in PlexServerContent
* chore: added some obsoletes
* fix: removed the unsub link when not present
Co-authored-by: tidusjar <tidusjar@gmail.com>
* Send new request email notifications to power users
* Send new request to power users as convention
Remove option to toggle it off
* Send New Request notification to power users in app
* Better wording + fix mobile notifications
* Fix 100th Emby episode not being synced
Emby API is zero-based offset
* Fix 100th Emby TV show and movie not being synced
* Fix Jellyfin API offset error
* Localize a few isolated strings
* Localize paginator
* Localize a few isolated strings
* Make button width dynamic for better i18n
* Localize a few isolated strings
* Fix technical typo
* Secure ManageOwnRequests API paths
Fixes#4391
* Hide delete request option if user is not allowed
* Refactor CheckOwnRequests
* Fix deleteRequest test
* Improve performance and clean up code
* Fix manageOwnRequests check
* Refactor CheckCanManageRequest
* Update pomelo framework for net 6 support
* Aspnetcore v6
* Revert spaservices
* Update all references to old pomelo
* Note problem line
* Disable charsetoption in databaseextensions, version left
* fix: fixed the compiler error
Co-authored-by: Dyson Parkes <dyson@berserkir.net>
* chore: updated tfm to net6
* chore: updated main packages
* chore: fixed some warnings
* core: Added workflow_dispatch to some of the CI pipelines [skip ci] (#4392)
* chore: bump the net version
* ci: use the dotnet ver task everywhere
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* fix(translations): 🌐 New translations from Crowdin [skip ci]
* Localize TV and movies titles in requests
* Add missing release statuses
* Localize collection request
* Localize TV shows in newsletter
Uses TMDB instead of TVMaze for title, genres and synopsis
* Localize error messages
* Localize albums requests
* Use current language for TV and movies requests
* Remove unecessary console log
Fixed an issue where if you only had external users, it wouldn't send. Fixed another issue where it didn't cater for potential duplicate email addresses