1
0
mirror of https://github.com/janeczku/calibre-web synced 2026-05-08 14:32:13 +00:00

3964 Commits

Author SHA1 Message Date
Ozzie Isaacs 7c715f34dc Clean strings in comments before displaying 2026-04-03 09:01:01 +02:00
Ozzie Isaacs 00686ec1f2 Merge remote-tracking branch 'page_count/fix-series-list-view-sorts-by-name-instead-of-sort-field' 2026-03-07 10:24:58 +01:00
Ozzie Isaacs 83d331c89b Merge remote-tracking branch 'page_count/fix-kobo-prioritytimestamp-put-response' 2026-03-07 09:55:45 +01:00
Ozzie Isaacs f6338a9fda Merge remote-tracking branch 'filename/master' 2026-03-07 09:46:16 +01:00
Ozzie Isaacs 74725b68b0 Merge remote-tracking branch 'it/patch-1' 2026-03-07 09:28:14 +01:00
mapi68 efbdd0b6e3 Update italian messages.po 2026-03-05 06:44:48 +01:00
jarynclouatre 1134f54be4 fix: series list view sorts by name instead of sort field
In series_list(), the SQLite query correctly orders results by
Series.sort, but a subsequent Python sorted() call (needed to
re-order after appending the "None" category entry) was using
Series.name as the sort key instead of Series.sort.

This caused series titles with leading articles (A, An, The) to
sort strictly alphabetically by the article rather than by the
meaningful word, e.g. "A Collins-Burke Mystery" appeared under
"A" instead of "C".

Fix by using Series.sort (with a fallback to Series.name if sort
is NULL) as the key in the Python re-sort, consistent with the
intent of the existing DB query.

Fixes #3583
2026-03-01 20:44:05 -06:00
jarynclouatre 2d4ca23d0c Kobo: include PriorityTimestamp in PUT /state response
Kobo: include PriorityTimestamp in PUT /state response
2026-03-01 18:19:40 -06:00
jarynclouatre 6157f5027c Update search_metadata.py
Fix TypeError when metadata provider returns None
2026-03-01 15:44:29 +01:00
Ozzie Isaacs 5e48a64b15 Merge remote-tracking branch 'opds-500-unauthenticated-request/fix/opds-500-unauthenticated-request' 2026-02-22 10:43:11 +01:00
Rafik Farhad 36a7ff19bc Fix AttributeError on unauthenticated OPDS requests
request_username() is used as flask-limiter's key_func for the OPDS
blueprint. The limiter evaluates key_func in a before_request handler,
before the route's auth decorator runs. When no Authorization header is
present, request.authorization is None, causing an AttributeError and
a 500 response instead of the expected 401.

Guard against None so unauthenticated requests fall back to an empty
string key, allowing the auth decorator to handle the 401 correctly.

Fixes #3592

Disclaimer: AI assisted—humans supervised.
2026-02-21 16:54:14 -06:00
Ozzie Isaacs 1b4f0d0967 Merge remote-tracking branch 'add-to-shelves-dropdown-menu/add-to-shelves-dropdown-menu' 2026-02-21 09:43:50 +01:00
Ozzie Isaacs 181117f916 Merge remote-tracking branch 'Kobo_sync/fix/kobo-library-sync-url-rewrite' 2026-02-21 09:42:09 +01:00
Ozzie Isaacs 32741be6c8 Merge remote-tracking branch 'kobo_sync/pr/fix-kobo-progress' 2026-02-21 09:31:56 +01:00
Ozzie Isaacs f64fe5d835 Merge remote-tracking branch 'Exclamationmark/chore_fix_error_messages' 2026-02-21 09:29:02 +01:00
Ozzie Isaacs 0db93a6036 Merge remote-tracking branch 'sort/master' 2026-02-21 09:27:04 +01:00
leahjessie a4bf028537 Fix Kobo popup when ProgressPercent is 0 by using is-not-None check instead of truthiness 2026-02-20 15:34:25 -08:00
AsukaVuuyn 47625a616d fix: support native UTF-8 downloaded filenames for browsers 2026-02-20 23:07:06 +08:00
Noé Sierra-Velasquez a9713bd497 Fix Kobo sync failure behind reverse proxy: rewrite library_sync URL in init response
The HandleInitRequest() function rewrites image URLs to point to the local
Calibre-Web instance, but library_sync was left pointing to storeapi.kobo.com.
This caused Kobo e-readers to call Kobo's servers for sync instead of the local
server, resulting in no books being synced when running behind a reverse proxy.
2026-02-19 20:34:50 +01:00
Ozzie Isaacs fbed304df8 Better Fix for flask limiter 4.0 2026-02-18 19:11:38 +01:00
Ozzie Isaacs e3bf369ad6 Fix for flask limiter 4.0
Fix reseting flask_limiter keys
2026-02-18 18:59:29 +01:00
leahjessie d229f71151 Fix Kobo "Return to last page read" popup caused by float/int mismatch 2026-02-17 16:34:46 -08:00
Courville Software 3aef161cb8 fix title sort with "l'" in french
regex should not impose a space after "l'" otherwise detection for "L'arbre" fails.
2026-02-14 17:06:44 +01:00
Ozzie Isaacs cabcace3f0 Update translation
Fixes for flask_limiter version >4
2026-02-14 11:30:50 +01:00
Ozzie Isaacs 848302f69e Merge branch 'master' into Develop 2026-02-14 10:21:05 +01:00
Ozzie Isaacs 8bdd95fc45 Fixes for flask_limiter > 4 2026-02-14 10:08:32 +01:00
Ozzie Isaacs 9c7a834cec Fix italian translation error 2026-02-13 19:18:00 +01:00
Ozzie Isaacs b64645e5f5 Cover path is now selected based on correct setting and not if split_path is present or not (fix for #3527)
Version bump
Updated requirements
2026-02-08 12:12:34 +01:00
Ozzie Isaacs 5a1f3d8eec Version bump 2026-02-06 20:40:07 +01:00
lb803 315584690d remove exclamation marks 2026-02-05 21:40:45 +00:00
Ozzie Isaacs f14faff308 Merge remote-tracking branch 'cn/patch_cn' 2026-01-31 12:43:58 +01:00
Ozzie Isaacs 6f782c5687 Merge remote-tracking branch 'pt-br/translate-ptbr' 2026-01-31 12:40:01 +01:00
Ozzie Isaacs 7f7fc884c2 Fix for calibre 9.0 2026-01-31 12:31:44 +01:00
Webysther Sperandio 92084bab71 🌐 i18n(translations): typo 2026-01-31 05:51:04 +01:00
Webysther Sperandio f00471baf5 🌐 i18n(translations): add missing pt_BR translations in messages.po 2026-01-31 05:44:18 +01:00
Webysther Sperandio 9ed0774d19 doc: pt-br translation 2026-01-31 05:19:48 +01:00
Kamille eb20db55a4 Update Simplified Chinese 2026-01-31 11:25:50 +08:00
Webysther Sperandio a91724edb0 💄 style(css): include remove menu in dropdown scroll styling 2026-01-28 21:09:47 +01:00
Webysther Sperandio 5ad6b7fa64 💄 style(ui): limit add-to-shelves dropdown height
- 【style】 constrain add-to-shelves dropdown height and enable scroll
  - 【style】 prevent overly tall menus from overflowing the page
2026-01-26 19:39:36 +01:00
Webysther Sperandio c1be944a48 💄 style(ui): limit add-to-shelves dropdown height
- 【style】 constrain add-to-shelves dropdown height and enable scroll
  - 【style】 prevent overly tall menus from overflowing the page
2026-01-26 19:36:47 +01:00
Ozzie Isaacs 4fece545e4 Merge remote-tracking branch 'de/master' 2026-01-25 10:42:15 +01:00
Ozzie Isaacs 876a11dc58 Merge branch 'Develop'
Remove Get Parameter sort_param, where it is not valid (#3447)
Generate valid session-cookie-path(s) (fix for #3459)
Mass remove books from shelf (Fix for #3520)
2026-01-25 10:35:59 +01:00
Ozzie Isaacs d47af66499 Bugfix after testrun 2026-01-24 13:01:12 +01:00
Kugeleis 85d1aab6a8 Add German translations for several UI strings 2026-01-18 18:07:51 +01:00
Ozzie Isaacs 8db0d004b6 Remove Get Parameter sort_param, where it is not valid (#3447) 2026-01-18 16:07:04 +01:00
Ozzie Isaacs c13eac91c8 Generate valid session-cookie-path(s) (fix for #3459) 2026-01-18 15:38:44 +01:00
Ozzie Isaacs cf3b619c73 Fix for #3520 (Mass remove books from shelf) 2026-01-18 12:59:40 +01:00
Ozzie Isaacs 269ab0e04e Fix for #3522 (Public registration does not apply default Allowed/Denied tags to new users ) 2026-01-17 12:27:16 +01:00
Ozzie Isaacs 47168f5ce9 Merge remote-tracking branch 'typo-epub-reader/webysther-deprecated-apple-meta' 2026-01-17 12:18:17 +01:00
Ozzie Isaacs 73d7306627 Merge remote-tracking branch 'typo-epub-reader/webysther-typo-epub-reader' 2026-01-17 12:16:45 +01:00