Commit Graph

1960 Commits

Author SHA1 Message Date
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