Commit Graph

2210 Commits

Author SHA1 Message Date
advplyr
4c68ad46f4 Refactor RssFeedManager to use new model when closing feeds, fix close series feed when series is removed, update RssFeedManager to singleton 2024-12-15 12:37:01 -06:00
advplyr
e50bd93958 Refactor Feed model to create new feed for series 2024-12-15 11:44:07 -06:00
advplyr
d576625cb7 Refactor Feed model to create new feed for collection 2024-12-15 10:53:31 -06:00
advplyr
9bd1f9e3d5 Refactor Feed model to create new feed for library item 2024-12-14 16:55:56 -06:00
advplyr
329bbea043 Fix:Downloading podcast episode when file extension is mp3 but enclosure type is not mp3 #3711 2024-12-13 16:06:00 -06:00
advplyr
57906540fe Add:Server setting to allow iframe & update UI to differentiate web client settings #3684 2024-12-08 08:57:45 -06:00
advplyr
726adbb3bf
Merge pull request #3692 from mikiher/rss-remove-server-address
Remove serverAddress from Feeds and FeedEpisodes URLs
2024-12-08 08:24:41 -06:00
advplyr
f7b7b85673 Add v2.17.5 migration to changelog 2024-12-08 08:19:23 -06:00
advplyr
5646466aa3 Update JSDocs for feeds endpoints 2024-12-08 08:05:33 -06:00
mikiher
b38ce41731 Remove xml cache from Feed object 2024-12-08 09:48:58 +02:00
mikiher
a8ab8badd5 always set req.originalHostPrefix 2024-12-08 09:23:39 +02:00
Nicholas Wallace
61729881cb Change: no compression when downloading library item as zip file 2024-12-07 16:52:31 -07:00
mikiher
9b8e059efe Remove serverAddress from Feeds and FeedEpisodes URLs 2024-12-07 19:27:37 +02:00
Vito0912
2fbb31e0ea
added null saftey and added displayTitle and displayAuthor 2024-12-07 10:37:00 +01:00
Vito0912
89167543fa
added author for podcasts 2024-12-07 10:25:52 +01:00
Vito0912
33e0987d73
Added mediaMetadata to playbackSessions 2024-12-07 10:09:14 +01:00
Vito0912
7486d6345d
Resolved a server crash when a playback session lacked associated media metadata. 2024-12-07 09:34:06 +01:00
advplyr
3b4a5b8785 Support ALLOW_IFRAME env variable to not include frame-ancestors header #3684 2024-12-06 17:17:32 -06:00
advplyr
9a1c773b7a Fix:Server crash on uploadCover temp file mv failed #3685 2024-12-06 16:59:34 -06:00
advplyr
c35185fff7 Update prober to accept grp1 as an alternative tag to grouping #3681 2024-12-05 16:15:23 -06:00
advplyr
9774b2cfa5 Update JSDocs for groupFileItemsIntoLibraryItemDirs 2024-12-04 16:30:35 -06:00
advplyr
344890fb45 Update watcher files changed function to use the same grouping function as other scans 2024-12-04 16:25:17 -06:00
advplyr
5fa0897ad7
Merge pull request #3665 from mikiher/subdirectory-fixes-3
Subdirectory support for OIDC and SocketIO
2024-12-03 17:29:57 -06:00
advplyr
95c80a5b18
Merge pull request #3672 from Techwolfy/disc-folder-support
Support additional disc folder names
2024-12-03 17:28:32 -06:00
advplyr
84803cef82 Fix:Load year in review stats for playback sessions with null mediaMetadata 2024-12-02 17:23:25 -06:00
Techwolf
605bd73c11 Fix third instance of regex 2024-12-01 23:57:47 -08:00
Techwolf
cc89db059b Fix second instance of regex 2024-12-01 18:41:38 -08:00
Techwolf
a03146e09c Support additional disc folder names 2024-12-01 18:10:44 -08:00
advplyr
33aa4f1952 Merge master 2024-12-01 13:27:20 -06:00
advplyr
0dedb09a07 Update:batchUpdate endpoint validate req.body is an array of objects 2024-12-01 12:49:39 -06:00
advplyr
2b5484243b Add LibraryItemController test for delete/batchDelete/updateMedia endpoint functions to correctly remove authors & series with no books 2024-12-01 12:44:21 -06:00
advplyr
c496db7c95 Fix:Remove authors with no books when a books is removed #3668
- Handles bulk delete, single delete, deleting library folder, and removing items with issues
- Also handles bulk editing and removing authors
2024-12-01 09:51:26 -06:00
advplyr
4b52f31d58 Update v2.17.3 migration file to first check if constraints need to be updated, add unit test 2024-11-30 15:48:20 -06:00
mikiher
9917f2d358 Change migration to v2.17.4 2024-11-29 09:01:03 +02:00
mikiher
6d8720b404 Subfolder support for OIDC auth 2024-11-29 04:28:50 +02:00
mikiher
843dd0b1b2 Keep original socket.io server for non-subdir clients 2024-11-29 04:13:00 +02:00
advplyr
70f466d03c Add migration for v2.17.3 to fix dropped fk constraints 2024-11-28 17:18:34 -06:00
advplyr
ef82e8b0d0 Fix:Server crash deleting user with sessions 2024-11-27 16:48:07 -06:00
advplyr
315b21db00 Fix:API get media progress for episode 2024-11-24 15:05:19 -06:00
advplyr
f9aaeb3a34 Update:Set Content-Security-Policy header to disallow iframes 2024-11-23 11:17:13 -06:00
advplyr
d19bb909b3 Fix:Server crash deleting library that has playback sessions #3634 2024-11-22 17:20:31 -06:00
advplyr
784b761629 Fix:Unable to edit series sequence #3636 2024-11-21 14:19:40 -06:00
advplyr
ff026a06bb Fix v2.17.0 migration to ensure mediaItemShares table exists 2024-11-20 16:48:09 -06:00
advplyr
a5e38d1473 Fix:Error adding new series if a series has a null title #3622 2024-11-18 07:59:02 -06:00
advplyr
778256ca16 Fix:Server crash on new libraries when getting filter data #3623 2024-11-18 07:42:24 -06:00
advplyr
75eef8d722 Fix:Book library sort by publishedYear #3620
- Updated sort to cast publishedYear to INTEGER
2024-11-17 16:00:44 -06:00
advplyr
46a3c3de33
Merge pull request #3597 from nichwall/mediatype_uuid_migration
`MediaId` UUID migration
2024-11-17 15:50:10 -06:00
advplyr
2b7e3f0efe Update uuid migration to v2.17.0 and for all tables still using UUIDv4 2024-11-17 15:45:21 -06:00
advplyr
bbe59499ad
Merge pull request #3615 from mikiher/fullupdatefromold-fix
Use a simpler database fetch in fullUpdateFromOld
2024-11-16 16:26:13 -06:00
advplyr
4c88e9c8d2
Merge pull request #3594 from nichwall/filter_data_longer_cache
Increase cache time for `filterdata` in library
2024-11-16 16:18:54 -06:00
mikiher
5ccf5d7150 Use a simpler database fetch in fullUpdateFromOld 2024-11-16 06:26:32 +02:00
advplyr
45f8b06d56 Fix:CBC Radio podcast RSS feeds not accepting our user-agent string #3322 2024-11-15 08:30:54 -06:00
mikiher
8626fa3e00 Add episode_download_queue_cleared socket event 2024-11-12 07:37:38 +02:00
mikiher
b50d7f0927 Remove unnecessary socket event causing OOM 2024-11-12 07:25:10 +02:00
mikiher
a382482173 Add in-memory user cache 2024-11-10 08:34:47 +02:00
advplyr
2e970cbb39 Fix:Series Progress filters incorrect - showing for any users progress #2923 2024-11-09 18:03:50 -06:00
Nicholas Wallace
161a3f4da9 Update migrations changelog for 2.16.3 2024-11-09 13:20:59 -07:00
Nicholas Wallace
713bdcbc41 Add: migration for mediaId to use UUID instead of UUIDV4 2024-11-09 13:10:46 -07:00
Nicholas Wallace
e8d8b67c0a Add: check for deleted items 2024-11-08 10:49:12 -07:00
Nicholas Wallace
e57d4cc544 Add: filter update check to podcast libraries 2024-11-08 09:33:34 -07:00
Nicholas Wallace
435b7fda7e Add: check for changes to library items 2024-11-08 09:09:18 -07:00
advplyr
850ed48955 Fix:Podcast episodes duplicated when a scan runs while the episode is downloading #2785 2024-11-07 17:26:51 -06:00
advplyr
a5ebd89817 Update FolderWatcher to singleton 2024-11-07 16:32:05 -06:00
Nicholas Wallace
41fe5373a7 Add: check that migrationsMeta table is well formed 2024-11-06 22:06:58 -07:00
snakehnb
7ef14aabed Avoid parsing first and last names in Chinese, Japanese and Korean languages 2024-11-04 16:13:14 +08:00
mikiher
bf8407274e No auth for author images 2024-11-03 08:45:43 +02:00
mikiher
3bc2941445 No db access for author image if in disk cache 2024-11-03 08:44:57 +02:00
advplyr
654b1d6b34
Merge pull request #3580 from mikiher/cover-image-performance
Improve cover image performance
2024-11-02 13:10:00 -05:00
advplyr
7a49681dd2 Fix includes 2024-11-02 13:02:40 -05:00
advplyr
7a1623e6a1 Move cover path func to LibraryItem model 2024-11-02 12:56:40 -05:00
mikiher
4224b8a486 No auth and req.user for cover images 2024-11-02 15:17:11 +02:00
mikiher
9e990d7927 Optimize LibraryItemController.getCover 2024-11-02 09:05:30 +02:00
mikiher
431ae97593 add Database.getLibraryItemCoverPath 2024-11-02 09:02:23 +02:00
advplyr
f3d2b781ab Add mime types for MPEG/MPG 2024-11-01 09:12:40 -05:00
Achim
32105665c1
'mpg' and 'mpeg' added as supported audio-type/file-extension 2024-10-31 15:29:40 +01:00
Lauri Vuorela
2fdab39e27
Merge branch 'advplyr:master' into master 2024-10-29 22:08:01 +01:00
advplyr
5e2aebc724
Merge pull request #3565 from mikiher/handle-download-errors-2
Fix incorrect call to handleDownloadError
2024-10-29 15:55:37 -05:00
advplyr
6eba467b91 Fix:Session sync for streaming podcast episodes using incorrect duration #3560 2024-10-29 15:41:31 -05:00
mikiher
524cf5ec5b Fix incorrect call to handleDownloadError 2024-10-29 21:42:44 +02:00
advplyr
2a9159f106
Merge pull request #3553 from mikiher/handle-download-errors
Add proper error handing for file downloads
2024-10-28 17:00:40 -05:00
advplyr
8f113d17c2 Fix:Ensure library has all settings defined when validating settings for update #3559 2024-10-28 16:57:37 -05:00
mikiher
9084055b95 Add proper error handing for file downloads 2024-10-28 08:03:31 +02:00
Austin Spencer
ecc30b85bc
Allow users to create ereaders (#3531)
* add create eReader permission toggle

* add english label for create EReader permission

* add ereader table to account with user specific modal

* add createEreader permission

* create api endpoint and logic for updating user eReader devices

* add translated label for createEreader permission

* handle name duplicates and remove helper func

* toast for duplicate name error caught on server

* restrict user ereader updates to devices with sole ownership

* remove label

* fix other devices logic and client socket emitter

* fix for deleting ereaders

* User create ereader endpoint validate accessibility

---------

Co-authored-by: advplyr <advplyr@protonmail.com>
2024-10-26 15:34:34 -05:00
advplyr
0782146682 Update:Pass mark as finished library settings to media progress update #837 2024-10-25 17:27:50 -05:00
advplyr
91aea4f754 Add:Library settings for mark as finished when time remaining or percent complete #837 2024-10-24 17:19:51 -05:00
Lauri Vuorela
9b01d11b27 allow setting createdAt and respect set finishedAt when syncing progress 2024-10-22 23:58:09 +02:00
advplyr
9896e4381b Update:Setup variables to control when a media item is marked as finished. By time remaining or progress percentage #837 2024-10-21 17:48:02 -05:00
advplyr
953ffe889e Update:Book series embeds in grouping meta tag as semicolon deliminated, book meta tag parser falls back to using grouping tag for series if set #3473 2024-10-20 16:58:13 -05:00
advplyr
35e2681ea9 Update index creation migration to be idempotent 2024-10-19 15:45:14 -05:00
Nicholas Wallace
84012d9090 Fix: podcast episode index name 2024-10-19 11:38:34 -07:00
Nicholas Wallace
e8a1ea3b54 Fix: table naming 2024-10-19 11:20:29 -07:00
Nicholas Wallace
ea6882d9ab Update changelog 2024-10-19 11:20:22 -07:00
Nicholas Wallace
1fa80e31d1 Add: migrations for authors, series, and podcast episodes 2024-10-19 10:40:17 -07:00
mikiher
50797879d5
Add a REINDEX NOCASE v2.15.1 migration and update v2.15.0 migration (#3533)
* Add REINDEX NOCASE migration and update v2.15.0 migration

* Update v2.15.0 migration test

* Fix typo
2024-10-18 16:10:29 -05:00
Ihor Sofiichenko
d668462529
Fix Extract Cover Error for files with multiple embedded covers 2024-10-17 00:27:21 -07:00
advplyr
cb234fe1fc
Merge pull request #3521 from mikiher/subdirectory-fixes
Fixes and cleanup for subdirectory serving support
2024-10-15 16:55:54 -05:00
advplyr
d2c405c126 Fix decade filter and query by casting publishedYear to Int 2024-10-15 16:12:56 -05:00
mikiher
cbca560f92 server.js: add base path to all non-base-path requests 2024-10-15 06:40:14 +03:00
mikiher
2d7b63b4cf Add base path to socket.io connections on client and server 2024-10-15 05:50:23 +03:00
Greg Lorenzen
217038b085 Fix and simplify filter logic for publishedDecades 2024-10-14 20:58:09 +00:00
advplyr
13dd4edd6a Fix:Ignore dot files in migrations folder #3510 2024-10-14 14:46:55 -05:00
advplyr
ddd2c0ae4e Add:Filter for missing chapters & alphabetize missing subitems #3497 2024-10-12 15:56:49 -05:00
advplyr
e58d7db03b
Merge pull request #3417 from nichwall/series_cleanup_2
Add: series migration to be unique
2024-10-12 15:48:04 -05:00
advplyr
f94449a659
Merge pull request #3500 from nichwall/2_14_0_strings
2.14.0 string localization
2024-10-12 15:25:41 -05:00
advplyr
df6afc957f Add localization for notification descriptions 2024-10-12 15:22:21 -05:00
advplyr
076f71d490 Fix:Handle undefined page/limit in paginated library queries #3499 2024-10-11 17:15:16 -05:00
advplyr
33eae1e03a Fix:Server crash on podcast add page, adds API endpoint to get podcast titles #3499
- Instead of loading all podcast library items this page now loads only the needed data
2024-10-11 16:55:09 -05:00
Greg Lorenzen
f38b6636e3
Add published decade filter option (#3489)
* Add strings for PublishedDecade and PublishedDecades

* Add publishedDecades filter options to LibraryFilterSelect

* Add publishedDecades to libraries store

* Add publishedDecades to getFilterData

* Add database method to add published decades to filter data

* Add published decade in BookScanner

* Add 'publishedDecades' to invalidFilters in user.js

* Add publishedDecades filter group to MediaGroupQuery

* Update client/strings/en-us.json

* Auto formatting

---------

Co-authored-by: advplyr <dev@advplyr.com>
Co-authored-by: advplyr <advplyr@protonmail.com>
2024-10-08 17:20:42 -05:00
advplyr
0adceaa3f0 Remove asciiOnlyToLowerCase 2024-10-08 16:59:45 -05:00
Oleg Ivasenko
e6db1495ab retire unicode handling workaround for Author and Series title 2024-10-08 19:52:26 +00:00
Nicholas Wallace
e6e494a92c Rename for next minor release 2024-10-07 18:52:14 -07:00
mikiher
d92626071e Use musl-based libnusqlite3 in Docker 2024-10-07 20:48:52 +03:00
advplyr
64b78b5822 Move pagination limit/page query param validation to middleware & check for positive integer 2024-10-06 16:29:30 -05:00
mikiher
0bdc2fb05e Move authors to lazyBookshelf 2024-10-06 18:25:08 +03:00
advplyr
fefc16bd13 Fix:Use region for author search by name #3470 2024-10-01 16:14:51 -05:00
advplyr
1b1b71a9b6
Merge pull request #3468 from mikiher/nunicode-intergration
Nunicode integration
2024-10-01 15:17:54 -05:00
mikiher
4a7ada28fb Switch to nunicode-binaries v1.1 2024-10-01 16:47:40 +03:00
mikiher
37eae3406c Remove debug messages 2024-09-29 12:27:30 +03:00
mikiher
501dc938e6 Add Nunicode sqlite extension integration 2024-09-29 09:22:39 +03:00
advplyr
7cd8d7f44d Update NotificationManager to singleton 2024-09-27 17:33:23 -05:00
advplyr
567a9a4e58 Fix:API /libraries/:library/items validate limit and page are positive integers #3459 2024-09-26 16:48:38 -05:00
advplyr
5154e31c1c Update migration to v2.14.0 2024-09-24 17:06:00 -05:00
advplyr
8a7b5cc87d Ensure series-column-unique migration is idempotent 2024-09-24 16:47:09 -05:00
advplyr
bb7938f66d Update:When merging embedded chapters from multiple files filter out ~0 duration chapters #3361 2024-09-24 10:54:25 -05:00
advplyr
5b22e945da Update:Format numbers on user listening stats chart #3441 2024-09-23 16:36:56 -05:00
advplyr
decde230aa Update:Some logs to include library item id #3440 2024-09-22 14:15:17 -05:00
advplyr
1dec8ae122 Update:Added string localization for tasks #3303 #3352 2024-09-21 14:02:57 -05:00
advplyr
8512d5e693 Update Task object to handle translation keys with subs 2024-09-20 17:18:29 -05:00
advplyr
013c7c776e
Merge pull request #3436 from mikiher/create-playback-session-race-condition
Change PlaybackSession createFromOld to use upsert instead of create
2024-09-18 15:14:03 -05:00
advplyr
1a8811b69a Remove unused requires 2024-09-18 14:26:10 -05:00
mikiher
d796849d74 Small change to logging of unhandled rejections 2024-09-18 18:44:16 +03:00
mikiher
942bd0859f Change PlaybackSession createFromOld to use upsert instead of create 2024-09-18 18:01:36 +03:00
mikiher
072028c740 Cleanup empty directiories inside the temp extraction dir 2024-09-18 10:16:46 +03:00
mikiher
0d08aecd56 Move from libarchive to node-unrar-js for cbr and node-stream-zip for cbz 2024-09-18 08:28:15 +03:00
Nicholas Wallace
66b290577c Clean up unused parts of statement 2024-09-17 20:00:06 -07:00
advplyr
22ad16e11b Fix:Server crash on scan for library with no metadataPrecedence set #3434 2024-09-17 16:10:32 -05:00
mikiher
0b31792660 catch file extraction errors in parseComicMetadata 2024-09-15 11:48:33 +03:00
Nicholas Wallace
691ed88096 Add more logging, clean up typo 2024-09-14 15:34:38 -07:00
Nicholas Wallace
836d772cd4 Update: remove the same book if occurs multiple times in duplicate series 2024-09-14 15:23:29 -07:00
advplyr
bedba39af9 Merge branch 'master' into series_cleanup_2 2024-09-14 10:11:16 -05:00
advplyr
8493e56b11
Merge pull request #3418 from mikiher/fix-database-version-init
Fix MigrationManager initial run behavior
2024-09-14 10:09:46 -05:00
mikiher
55164803b0 Fix migrationMeta database version initial value, and move isDatabaseNew logic inside MigrationManager 2024-09-14 08:01:32 +03:00
Nicholas Wallace
c163f84aec Update migration changelog for series name unique 2024-09-13 17:01:48 -07:00
Nicholas Wallace
2711b989e1 Add: series migration to be unique 2024-09-13 16:55:48 -07:00
advplyr
5c49a8ce6a
Merge pull request #3407 from agraubert/patch-1
Default deny explicit content to users
2024-09-13 13:24:12 -05:00
advplyr
854f308eae
Merge pull request #3410 from mikiher/library-scan-try-catch
Handle library scan failure gracefully
2024-09-13 13:10:46 -05:00
Oleg Ivasenko
0af29a378a use asciiOnlyToLowerCase to match lower function behaviour of SQLite 2024-09-13 17:09:32 +00:00
Oleg Ivasenko
def34a860b when checking if series/author is alread in DB, use case insensitive match only for ASCII names 2024-09-13 16:23:25 +00:00
mikiher
f8034e1b78 scanLibrary fail and cancel handling round 2 2024-09-13 09:23:48 +03:00
advplyr
01fbea02f1 Clean out old unused functions, Device updates for replacing DeviceInfo 2024-09-12 16:36:39 -05:00
Lauri Vuorela
d430d9f3ed add new setDuration and use that 2024-09-12 20:05:08 +02:00
Lauri Vuorela
0c24a1e626 add duration to session when creating 2024-09-12 19:46:08 +02:00
mikiher
1099dbe642 Handle library scan failure gracefully 2024-09-12 18:56:52 +03:00
Aaron Graubert
2df3277dcd
Server side change to enable default explicit acces for admins 2024-09-11 23:09:04 -06:00
Aaron Graubert
61bd029303
Default deny explicit content to users 2024-09-11 22:42:21 -06:00
advplyr
703477b157
Merge pull request #3405 from mikiher/logger-fixes
Log non-strings into log file like console.log does
2024-09-11 14:31:05 -05:00
mikiher
03ff5d8ae1 Disregard socketListener.level if level >= FATAL 2024-09-11 22:05:38 +03:00
mikiher
682a99dd43 Log non-strings into log file like console.log does 2024-09-11 19:58:30 +03:00
advplyr
fac5de582d
Merge pull request #3378 from mikiher/migration-manager
Add db migration management infratructure
2024-09-10 16:50:39 -05:00
advplyr
7cbf9de8ca Update migrations jsdocs 2024-09-10 15:57:07 -05:00
advplyr
7a0cd1eb34
Merge pull request #3396 from mikiher/custom-provider-try-catch
Add a try-catch block around custom provider search
2024-09-09 16:04:20 -05:00
advplyr
ac3277da09
Merge pull request #3395 from mikiher/quick-match-new-series
Fix crash when quick match adds new series
2024-09-09 16:03:30 -05:00
advplyr
65d1e7be56
Merge pull request #3394 from mikiher/webp-embed
Convert webp images to jpeg during metadata embed
2024-09-09 16:02:17 -05:00
mikiher
80685afa7e Add a try-catch block around custom provider search 2024-09-09 19:23:26 +03:00
mikiher
f892453892 Fix crash when quick match adds new series 2024-09-09 18:36:12 +03:00
mikiher
422bb8c31c Convert webp images to jpeg during metadata embed 2024-09-09 15:28:53 +03:00
mikiher
6fb1202c1c Put umzug in server/libs and remove unneeded dependencies from it 2024-09-08 21:33:32 +03:00
advplyr
4ddd2788f0 Fix:Byte conversion to use 1000 instead of 1024 to be accurate with abbrevs #3386 2024-09-07 16:52:42 -05:00
mikiher
8a28029809 Make migration management more robust 2024-09-07 22:24:19 +03:00
advplyr
a338097514 Update:Cleanup logging on library item update #3362 2024-09-06 16:58:40 -05:00
advplyr
84b67abb03 Fix:Get all collections API endpoint crashing server #3372 2024-09-05 17:15:38 -05:00
advplyr
5ec8406653 Cleanup Collection model to remove oldCollection references 2024-09-04 18:00:59 -05:00
mikiher
b3ce300d32 Fix some packaging and dependency issues 2024-09-04 23:55:16 +03:00
mikiher
3f93b93d9e Add db migration management infratructure 2024-09-04 12:48:10 +03:00
advplyr
0344a63b48 Clean out old unused objects 2024-09-03 17:04:58 -05:00
advplyr
60e348fcc1 Fix:Updating root user #3366 2024-09-02 16:12:57 -05:00
advplyr
47712e63f1 Update user default permissions 2024-09-02 15:55:25 -05:00
Nicholas Wallace
790c1fb34a Allow update of default permission keys missing for user 2024-09-02 10:28:03 -07:00
Nicholas Wallace
9cca731acc Add: missing default user permission property 2024-09-02 10:08:17 -07:00
advplyr
9f60017cfe Update:Remove oldSeries model 2024-09-01 15:26:43 -05:00
advplyr
db86bfd63d Fix:New authors not setting lastFirst column, updates for new Series model 2024-09-01 15:08:56 -05:00
advplyr
fc276b330a Fix:Server crash when uploading or adding new podcast #3353 2024-09-01 07:35:05 -05:00
advplyr
ba742563c2 Remove old Author object & fix issue deleting empty authors 2024-08-31 13:27:48 -05:00
advplyr
c45c82306e Remove old library, folder and librarysettings model 2024-08-28 17:26:23 -05:00
advplyr
1326d29fad
Merge pull request #3332 from itzexor/memorystore-2
memorystore: simplify, refactor, re-enable
2024-08-27 16:56:07 -05:00
advplyr
9b35530956 Fix memorystore constructor validation 2024-08-27 16:53:18 -05:00
advplyr
0ae054c5d7 Update tools endpoint status codes 2024-08-26 17:02:29 -05:00
advplyr
c72eac9987 Fix:Check if book is already being merged before allowing to start #3331 2024-08-25 17:13:09 -05:00
advplyr
159ccd807f Updates to migrate off of old library model 2024-08-24 16:09:54 -05:00
advplyr
5d13faef33 Updates to LibraryController to use new Library model
- Additional validation on API endpoints
- Removed success toast when reorder libraries
2024-08-24 15:38:15 -05:00
mikiher
4d8e1b7cef Fix embed and convert for single file library items 2024-08-24 12:01:00 +03:00
advplyr
38edcdca4b Updates to use new Library model 2024-08-23 16:59:51 -05:00
advplyr
8774e6be71 Update:Create library endpoint to create using new model, adding additional validation 2024-08-22 17:39:28 -05:00
James Ross
ec197b2e13 memorystore: simplify, refactor, re-enable
Removes a lot of unused (in ABS) functionality, refactors to ES6
style class, and re-enables this custom implementation with check
period and ttl of 1 day, and 1000 max entries.

The class now only implments the required (as per express-session docs)
methods and removes optional methods, except touch() which allows the
TTL of an entry to be refreshed without affecting its LRU recency.

There is no longer a way to stop the prune timer, but I don't belive
the function was ever being called beforehand. The session store's
lifetime is the same as the application's, and since it is unref()'d
should not cause any shutdown issues.
2024-08-22 03:55:51 +00:00
advplyr
1c0d6e9c67
Merge pull request #3313 from mikiher/author-image-path
Update AuthorController to handle invalid image paths and log a warning
2024-08-21 17:46:39 -05:00
advplyr
f66cea9829
Merge pull request #3312 from nichwall/close_comics_during_scan
Close comics during scan
2024-08-21 17:41:06 -05:00
advplyr
5f572face5
Merge pull request #3311 from nichwall/backup_restore_clear_cache
Backup restore clear cache
2024-08-21 17:38:16 -05:00
Chance Zibolski
0b860e0d40 Fix Content-Type header when browser user-agent is from an Apple mobile device
Fixes #3310

Signed-off-by: Chance Zibolski <chance.zibolski@gmail.com>
2024-08-20 19:01:14 -07:00
advplyr
149bb3e5b2 Fix:Audible book match not falling back to search after failed ASIN #3314 2024-08-20 17:04:48 -05:00
advplyr
7a7a779824 Update podcast audio file meta tag to use album-artist for author and fallback to artist tag #3315 2024-08-20 16:41:17 -05:00
mikiher
20a3657063 Update AuthorController to handle invalid image paths and log a warning 2024-08-20 10:51:24 +03:00
Nicholas Wallace
9c87c3a095 Free memory after extracting comic 2024-08-19 22:05:25 -07:00
Nicholas Wallace
4de65b4369 Autoformat parseComicMetadata 2024-08-19 21:00:16 -07:00
Nicholas Wallace
996c78d760 Add: clear metadata cache when restoring backup 2024-08-19 19:32:53 -07:00
Nicholas Wallace
ccdc3d60c4 Change: CacheManager use ensureDir 2024-08-19 19:25:01 -07:00
Nicholas Wallace
8be08882d8 Update formatting in CacheManager 2024-08-19 19:23:41 -07:00
advplyr
26d2c5a8f0 Remove oldUser object require 2024-08-19 17:35:00 -05:00
advplyr
bae39e3a2d Remove oldUser object require 2024-08-19 17:31:29 -05:00
advplyr
bb1a72269a Remove old User object with old MediaProgress & AudioBookmark 2024-08-19 17:26:17 -05:00
Nicholas W
27b3a44147
Add: Backup notification (#3225)
* Formatting updates

* Add: backup completion notification

* Fix: comment for backup

* Add: backup size units to notification

* Add: failed backup notification

* Add: calls to failed backup notification

* Update: notification OpenAPI spec

* Update notifications to first check if any are active for an event, update JS docs

---------

Co-authored-by: advplyr <advplyr@protonmail.com>
2024-08-18 14:32:05 -05:00
advplyr
5308fd8b46 Update:Create & update API endpoints to create with new data model 2024-08-17 17:18:40 -05:00
advplyr
1b914d5d4f Update:Log local auth login attempts for failed and successful #2533 #2579 2024-08-17 15:02:59 -05:00
advplyr
bbf214fa4c Update LibraryItem debug logs to show objects and display libraryFiles changes differently 2024-08-15 17:05:18 -05:00
advplyr
663c9e0fa9 Fix podcast filter user permissions query 2024-08-15 15:54:03 -05:00
advplyr
603823d6ea
Merge pull request #3278 from mikiher/revert-to-ffbinaries
Go back to downloading binaries from ffbinaries.com
2024-08-14 16:43:01 -05:00
advplyr
20c04d3ed3 Simplify Logger source 2024-08-14 16:36:10 -05:00
mikiher
02e5d608d0 Go back to downloading binaries from ffbinaries.com 2024-08-13 09:25:39 +03:00
advplyr
e53ac6566b Update API JS docs 2024-08-11 17:01:25 -05:00
advplyr
2472b86284 Update:Express middleware sets req.user to new data model, openid permissions functions moved to new data model 2024-08-11 16:07:29 -05:00
advplyr
afc16358ca Update more API endpoints to use new user model 2024-08-11 15:15:34 -05:00
advplyr
9facf77ff1 Update remove old sync local sessions endpoint & update MeController routes to use new user model 2024-08-11 13:09:53 -05:00
advplyr
1923854202 Update bookmarks API endpoints to use new user model 2024-08-11 12:16:45 -05:00
advplyr
9cd92c7b7f Update API media progress endpoints to use new user model. Merge book & episode endpoints 2024-08-11 11:53:30 -05:00
advplyr
68ef3a07a7 Update controllers to use new user model 2024-08-10 17:15:21 -05:00
advplyr
202ceb02b5 Update:Auth to use new user model
- Express requests include userNew to start migrating API controllers to new user model
2024-08-10 15:46:04 -05:00
advplyr
59370cae81 Update:Docker source skip binary manager check #3266 2024-08-10 12:37:41 -05:00
advplyr
54d67e5216
Merge pull request #3245 from ic1415/LibraryItemController
Update LibraryItemController.js
2024-08-09 16:48:30 -05:00
advplyr
b55d8250cc Download log update 2024-08-09 16:48:21 -05:00
advplyr
3a1e9abd68 Revert unicode sqlite extension to fix db corruption #3241 2024-08-09 16:41:52 -05:00
advplyr
7e442ecb3d Revert MemoryStore used in expressSession 2024-08-08 16:54:48 -05:00
mikiher
d72e0a4418 Fix path normalization to support UNC paths 2024-08-07 21:18:53 +03:00
advplyr
9f561aa296 Update:Skip library api cache for random sort #3249 2024-08-06 17:20:53 -05:00
advplyr
930bacd45d Fix:Podcast episode download request failing due to user-agent string #3246 2024-08-05 16:59:37 -05:00
ic1415
ef2d736b20
Update LibraryItemController.js
standardizing log messages for all download cases
2024-08-05 16:33:56 -04:00
ic1415
f3a453be20
Update LibraryItemController.js
Additional logging for single file downloads coming from download function
2024-08-05 16:19:28 -04:00
advplyr
8ff7b6b6e6 Add server log for process.platform and process.arch #3231 2024-08-04 17:08:55 -05:00
advplyr
06eaee8909 Fix:Binary manager dylib file ext check #3231 2024-08-04 16:51:07 -05:00
advplyr
eca51457b7 Update jsdocs and auto-formatting 2024-08-04 16:13:40 -05:00
advplyr
15c6fce648 Remove duplicate dependency ms 2024-08-04 12:52:52 -05:00
advplyr
4d3b3d1740 Update:Replace default express-session MemoryStore with stable MemoryStore #2538 2024-08-04 12:00:10 -05:00
advplyr
a55c167dde Fix:Cleanup media progress when deleting podcasts, remove usage of old user model 2024-08-03 17:09:17 -05:00
advplyr
642cf232ba Merge branch 'master' of https://github.com/advplyr/audiobookshelf 2024-08-03 15:08:45 -05:00
advplyr
164b4525c4 Replace function for cleaning up user seriesHideFromContinueListening to not use old model 2024-08-03 15:08:03 -05:00
advplyr
39c26d2bee
Merge pull request #3217 from ic1415/LibraryItemController
Update LibraryItemController.js
2024-08-02 16:33:23 -05:00
advplyr
2a69955cc1
Update server/controllers/LibraryItemController.js 2024-08-02 16:30:21 -05:00
advplyr
4a5345dd5d Update:devcontainer dev.js default to not skip binaries check, fail gracefully if required binary env variables are not set when skipping 2024-08-01 14:25:57 -05:00
advplyr
1e6dd0e3e0 Add jsdocs for Ffmpeg and tools controller 2024-07-31 17:32:51 -05:00
ic1415
9eb0ec76fe
Update LibraryItemController.js
update library item controller to log downloaded ebooks to fix #3215
2024-07-31 10:48:41 -04:00
Shaun
49054d5239 persist the advanced encoding options, show the encoding options used with in progress encodes 2024-07-31 16:44:24 +10:00
mikiher
294490f814 Fix permission issues in embed/merge 2024-07-29 20:19:58 +03:00
advplyr
6183001fca
Merge pull request #3199 from mikiher/unaccent
Support accent-insensitive search using SQLean unicode sqlite3 extension
2024-07-28 17:21:32 -05:00
advplyr
3ac604c665 Remove ffmpeg binaries install step from debian preinst script 2024-07-28 16:55:45 -05:00
advplyr
e342b07cd0 Update:OPF metadata parser supports namespaces on creator and identifier tags #3201 2024-07-28 14:54:17 -05:00
advplyr
b524cbd1b3 Update:Parse epub cover image uses cover specified in opf meta #3201 2024-07-28 14:34:31 -05:00
advplyr
88693d73bd Fix:Shares not working with timeouts longer than 23 days #3164 2024-07-27 17:40:51 -05:00
mikiher
2c453a34ee Remove redundant console.log() message 2024-07-27 23:09:46 +03:00
mikiher
3d2b2e43b1 Set execution permission for downloaded binaries 2024-07-27 23:03:40 +03:00
mikiher
c3f3fca896 Remove dependency on libs/ffbinaries from BinaryManager test 2024-07-27 22:44:01 +03:00
mikiher
dedf6e5d4b Support accent-insensitive matching using the sqlean sqlite3 unicode extension 2024-07-27 21:56:07 +03:00
mikiher
329e9c9eb2 BinaryManager support for libraries and downloading from github release assets 2024-07-27 21:51:31 +03:00
advplyr
43d6c6678f Add:Random library sorting option for libraries and series #3166
- Fixed author sort and match button not showing
2024-07-25 16:10:42 -05:00
mikiher
e40d3dd64d Simplify ItemSearchCard component 2024-07-25 09:40:18 +03:00
advplyr
a5897fd64b Fix:Set series and collection RSS feed cover image using first item with cover #3193 2024-07-24 16:40:45 -05:00
Nicholas Wallace
ee271519f9 Ensure author folder is created before extracting files 2024-07-21 18:04:46 +00:00
advplyr
b350277bbc Remove unused files 2024-07-21 11:12:17 -05:00
mikiher
bff56220c2 Adds genres to gloabl search 2024-07-21 11:10:05 +03:00
mikiher
da51d38ba2 Improve documentation and arg names in TrackProgressMonitor.js 2024-07-20 21:42:58 +03:00
mikiher
7faf42d892
Merge branch 'advplyr:master' into ffmpeg-progress 2024-07-20 12:28:47 +03:00
mikiher
10f5f331d7 Fixes + add progress to m4b and embed tools 2024-07-20 12:28:06 +03:00
advplyr
8330dabc46 Merge branch 'master' of https://github.com/advplyr/audiobookshelf 2024-07-18 16:43:10 -05:00
advplyr
dbc7ad0b3b Fix:Podcast episode match not properly encoding search query #3177 2024-07-18 16:43:00 -05:00
advplyr
4289fe4990 Update Nfo scanner and auto-formatting 2024-07-18 16:09:40 -05:00
Alex
71cd86fdd5
Merge branch 'advplyr:master' into nfo-metadata-language 2024-07-18 13:26:05 -04:00
advplyr
03be947ad6
Merge pull request #3163 from ajyey/feature/disable-max-backup-size
Adds support for allowing backups of unlimited size
2024-07-17 17:09:37 -05:00
Alex
9a697f48db
feat: parse language from NFO metadata source 2024-07-17 11:50:27 -04:00
advplyr
37ad1cced2 Fix:Large OPML import timeouts #3118
- Added OPML Api endpoints for /parse and /create, removed old
- Show task for OPML import and create failed tasks for failed feeds
2024-07-16 17:05:52 -05:00
Andrew Leonard
4b482488de
feat: remember setting of 0 on server side 2024-07-16 01:30:00 -04:00
Andrew Leonard
2bc949fae3
feat: adds support for allowing backups of unlimited size 2024-07-15 23:58:05 -04:00
advplyr
eabfa90121 Update:Move library stats page to SideRail #3134 2024-07-13 15:26:07 -05:00
advplyr
b6875a44cf
Merge pull request #3152 from mikiher/fix-opf-fetch-series
Fix OPF fetchSeries so it deduplicates found series
2024-07-12 07:59:10 -05:00
mikiher
c0004dd532 Fix fetchSeries so it deduplicates returned series 2024-07-12 12:42:42 +03:00
advplyr
0ee3b89760 Fix:Series and collection RSS feeds keeping correct order #3137 2024-07-11 17:49:05 -05:00
advplyr
2f2ec2ec1f Add book item more menu item for Share, restrict share to admin or up, add admin socket events for open/close shares 2024-07-07 15:51:50 -05:00
advplyr
9a4c5a16ef
Merge pull request #3111 from mikiher/tone-replacement
Replace tone with ffmpeg for metadata and cover embedding
2024-07-06 16:03:17 -05:00
advplyr
e6b1acfb44 Remove tone scripts & references, rename tone-object endpoint, remove node-tone dependency, remove TONE_PATH env 2024-07-06 16:00:48 -05:00
mikiher
928b080677 Replace pkg with @yao-pkg/pkg and target node20 2024-07-06 19:43:55 +03:00
advplyr
7c0b4e35d7 Update backups config page to use backupPathEnvSet returned from endpoint, remove from ServerConfig 2024-07-05 16:10:07 -05:00
Nicholas Wallace
a1688488e5 Fix: name of backupPathEnvSet variable 2024-07-05 17:58:42 +00:00
Nicholas Wallace
d46de541d6 Fix: bad variable name 2024-07-05 17:41:07 +00:00
Nicholas Wallace
37f62d22b6 Add: report whether backup path environment is set 2024-07-05 17:27:49 +00:00
advplyr
277ff8a5a5 Add:Book library filter for Share Open 2024-07-04 15:45:47 -05:00
advplyr
fed5ff4863 Add:Daily cron that closes stale open playback sessions 2024-07-04 12:00:54 -05:00
advplyr
43217657d7 Update media item shares to close when changing shares on same device 2024-07-04 11:19:29 -05:00
advplyr
dd1d2b7c92 Fix media item share changing share, show error on failed to play 2024-07-03 17:08:30 -05:00
mikiher
8bdee51798 Add unit tests for new ffmpegHelpers functions 2024-07-03 23:50:42 +03:00
mikiher
ebaec23648 Replace tone with ffmpeg in AbMergeManager 2024-07-02 18:25:04 +03:00
advplyr
d5e00c8bbd Update:Get personalized home page shelves and get library items endpoint optional includes for media item shares, show public icon on shared book items 2024-07-01 17:26:13 -05:00
advplyr
4732ca8119 Embed track number 2024-07-01 16:57:14 -05:00
advplyr
8e286a6070 Open media item share sessions shown on listening sessions page, create device info for share sessions 2024-06-30 16:36:00 -05:00
advplyr
d7ace4d1dc Update:Media item share URL allows for sending starting time as query string #1768 2024-06-30 15:31:27 -05:00