- Implement event handlers for 'playback_started', 'playback_ended' and 'media_recently_added'
- Add API routes to manage event webhook status
- Create user interface components for easy webhook configuration
- Update webhook manager to properly trigger events
- Add translations for new UI elements
Added Genres to items table
enhanced db-helper to add group by
fixed bug in fb-helper where null rows triggered a not count prop error
fixed issue where no plays on user screen attempted to open the item page
updated translations for genres
task manager implementation to start/stop tasks WIP
implemented socket client for internal communication between threads - needs more testing as connection string is hardcoded
added loopback in ws server to pass through toast ws messages from threads - needs more testing
fixed potential bug during config fetch function when syncing
added latest activity view to assist in grouping
added triggers as the view is a material view and will need to be updated when changes are made to activity table
created new view to include episode and library metadata to reduce join operations needed in query
changed frontend activity elements to use server-side paging
Bug in MaterialReactTable causing page index to reset was found aswell as a bug that prevents expanding subrows when using manual pagination. Solution is WIP
Added a busy loader to activity tables
Changes made to the api classes to allow for individual calls as they previously looped to fetch each chunck before returning the final large data set.
Also added a fix to prevent a full sync or partial sync from triggering when the other one is already running
Added Dynamic API loader framework for Emby/Jellyfin switching, Emby API is still WIP, DO NOT USE as per #133
Reworked ome pages for correct url mapping of emby external links
Added IS_JELLYFIN flag to config endpoint to indicate if server is displaying Emby or Jellyfin Data
Fix for #218 Require Login set to false still displays Login Page until reload
New feat: Grouped Recently added Episodes under Seasons and Episode count on Home page. Toggle to revert back to ugrouped display will be added later
Added middleware to infer param types in API to simplify value checks, eg bool or numeric parameters
it seems jellyfin keeps a count of items that are missing for certain media types. IE you have 5/10 episodes for a season, itl keep the remaining 5 as virtual objects and are marked as missing. These have been filtered out.
Once a resync is completed. they will be marked as archived. A purge of cached items in the library wil delete all archived items