Epub Weblinks + Localization Changes (#2180)

* Fixed a bug where scan series wasn't ignoring optimizations for chapter metadata updates.

Implemented pulling weblinks from epubs.

* Fixed localization issue

* Translations update from Hosted Weblate (#2179)

* Translated using Weblate (French)

Currently translated at 8.2% (13 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/fr/

* Translated using Weblate (French)

Currently translated at 13.2% (21 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/fr/

* Added translation using Weblate (Japanese)

* Added translation using Weblate (Undetermined)

* Added translation using Weblate (Thai)

* Added translation using Weblate (Chinese (Simplified))

* Added translation using Weblate (Chinese (Simplified))

* Added translation using Weblate (Thai)

* Translated using Weblate (Spanish)

Currently translated at 1.5% (22 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/es/

* Translated using Weblate (Dutch)

Currently translated at 98.1% (155 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/nl/

* Translated using Weblate (Dutch)

Currently translated at 98.1% (155 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/nl/

* Translated using Weblate (Dutch)

Currently translated at 8.1% (115 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/nl/

* Translated using Weblate (Dutch)

Currently translated at 8.1% (115 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/nl/

* Translated using Weblate (Thai)

Currently translated at 7.5% (12 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/th/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 5.0% (72 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/zh_Hans/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 8.2% (13 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/zh_Hans/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 5.6% (80 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/zh_Hans/

* Added translation using Weblate (Portuguese)

* Translated using Weblate (Dutch)

Currently translated at 11.4% (162 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/nl/

* Translated using Weblate (Dutch)

Currently translated at 11.4% (162 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/nl/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 12.0% (19 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/zh_Hans/

* Added translation using Weblate (Italian)

* Translated using Weblate (Dutch)

Currently translated at 12.6% (179 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/nl/

* Translated using Weblate (Dutch)

Currently translated at 12.6% (179 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/nl/

* Translated using Weblate (Thai)

Currently translated at 2.3% (33 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/th/

* Translated using Weblate (Thai)

Currently translated at 2.3% (33 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/th/

* Translated using Weblate (Portuguese)

Currently translated at 0.6% (1 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/pt/

* Translated using Weblate (Italian)

Currently translated at 40.5% (64 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/it/

* Translated using Weblate (French)

Currently translated at 15.8% (25 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/fr/

* Translated using Weblate (Thai)

Currently translated at 4.8% (69 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/th/

* Translated using Weblate (Portuguese)

Currently translated at 89.8% (142 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/pt/

* Translated using Weblate (Italian)

Currently translated at 67.7% (107 of 158 strings)

Translation: Kavita/backend
Translate-URL: https://hosted.weblate.org/projects/kavita/backend/it/

* Translated using Weblate (Spanish)

Currently translated at 5.1% (73 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/es/

* Translated using Weblate (Dutch)

Currently translated at 12.8% (182 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/nl/

* Translated using Weblate (Spanish)

Currently translated at 12.8% (182 of 1416 strings)

Translation: Kavita/ui
Translate-URL: https://hosted.weblate.org/projects/kavita/ui/es/

---------

Co-authored-by: Francois Wilhelmy <ice_mouton@hotmail.com>
Co-authored-by: 周書丞 <tmrsm_chan@hotmail.com>
Co-authored-by: 书签 <shuqian.emu@gmail.com>
Co-authored-by: AlienHack <the4got10@windowslive.com>
Co-authored-by: NeneNeko <lennon.rin@gmail.com>
Co-authored-by: Toto Saurio <totosaurio3279@gmail.com>
Co-authored-by: Stijn <stijn.biemans@gmail.com>
Co-authored-by: Hans Kalisvaart <hans.kalisvaart@gmail.com>
Co-authored-by: Duarte Silva <smallflake@protonmail.com>
Co-authored-by: stan xu <fatexsd@gmail.com>
Co-authored-by: Tomas Battistini <tomas.battistini@gmail.com>
Co-authored-by: majora2007 <kavitareader@gmail.com>
Co-authored-by: zeedif <carlos_antonio-rl@hotmail.com>

* Removed a blank API localization file

---------

Co-authored-by: Weblate (bot) <hosted@weblate.org>
Co-authored-by: Francois Wilhelmy <ice_mouton@hotmail.com>
Co-authored-by: 周書丞 <tmrsm_chan@hotmail.com>
Co-authored-by: 书签 <shuqian.emu@gmail.com>
Co-authored-by: AlienHack <the4got10@windowslive.com>
Co-authored-by: NeneNeko <lennon.rin@gmail.com>
Co-authored-by: Toto Saurio <totosaurio3279@gmail.com>
Co-authored-by: Stijn <stijn.biemans@gmail.com>
Co-authored-by: Hans Kalisvaart <hans.kalisvaart@gmail.com>
Co-authored-by: Duarte Silva <smallflake@protonmail.com>
Co-authored-by: stan xu <fatexsd@gmail.com>
Co-authored-by: Tomas Battistini <tomas.battistini@gmail.com>
Co-authored-by: majora2007 <kavitareader@gmail.com>
Co-authored-by: zeedif <carlos_antonio-rl@hotmail.com>
This commit is contained in:
Joe Milazzo 2023-08-04 14:34:44 -05:00 committed by GitHub
parent 298556cc4b
commit a550312279
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 33 additions and 17 deletions

View file

@ -455,17 +455,32 @@ public class BookService : IBookService
};
ComicInfo.CleanComicInfo(info);
foreach (var identifier in epubBook.Schema.Package.Metadata.Identifiers.Where(id => !string.IsNullOrEmpty(id.Scheme) && id.Scheme.Equals("ISBN")))
var weblinks = new List<string>();
foreach (var identifier in epubBook.Schema.Package.Metadata.Identifiers)
{
if (string.IsNullOrEmpty(identifier.Identifier)) continue;
var isbn = identifier.Identifier.Replace("urn:isbn:", string.Empty).Replace("isbn:", string.Empty);
if (!ArticleNumberHelper.IsValidIsbn10(isbn) && !ArticleNumberHelper.IsValidIsbn13(isbn))
if (!string.IsNullOrEmpty(identifier.Scheme) && identifier.Scheme.Equals("ISBN", StringComparison.InvariantCultureIgnoreCase))
{
_logger.LogDebug("[BookService] {File} has invalid ISBN number", filePath);
continue;
var isbn = identifier.Identifier.Replace("urn:isbn:", string.Empty).Replace("isbn:", string.Empty);
if (!ArticleNumberHelper.IsValidIsbn10(isbn) && !ArticleNumberHelper.IsValidIsbn13(isbn))
{
_logger.LogDebug("[BookService] {File} has invalid ISBN number", filePath);
continue;
}
info.Isbn = isbn;
}
info.Isbn = isbn;
break;
if ((!string.IsNullOrEmpty(identifier.Scheme) && identifier.Scheme.Equals("URL", StringComparison.InvariantCultureIgnoreCase)) ||
identifier.Identifier.StartsWith("url:"))
{
var url = identifier.Identifier.Replace("url:", string.Empty);
weblinks.Add(url.Trim());
}
}
if (weblinks.Count > 0)
{
info.Web = string.Join(',', weblinks.Distinct());
}
// Parse tags not exposed via Library