@@ -1239,11 +1301,57 @@ function Database:saveBookCache(file_path, file_hash, book_id, title, author, is
end
end
ifserver_pagecount~=nilthen
localoriginal_server_pagecount=server_pagecount
server_pagecount=tonumber(server_pagecount)
ifnotserver_pagecountorserver_pagecount<=0then
self.plugin:logWarn("BookloreSync Database: Invalid server_pagecount, setting to NULL. Original value:",original_server_pagecount,"type:",type(original_server_pagecount))
server_pagecount=nil
else
server_pagecount=math.floor(server_pagecount+0.5)
end
else
-- Preserve existing server_pagecount when caller does not provide one.
localexisting_stmt
iffile_path~=""then
existing_stmt=self.conn:prepare("SELECT server_pagecount FROM book_cache WHERE file_path = ? LIMIT 1")
ifexisting_stmtthen
existing_stmt:bind(file_path)
forrowinexisting_stmt:rows()do
server_pagecount=row[1]andtonumber(row[1])ornil
break
end
existing_stmt:close()
end
end
ifserver_pagecount==nilandfile_hash~=""then
existing_stmt=self.conn:prepare("SELECT server_pagecount FROM book_cache WHERE file_hash = ? LIMIT 1")
ifexisting_stmtthen
existing_stmt:bind(file_hash)
forrowinexisting_stmt:rows()do
server_pagecount=row[1]andtonumber(row[1])ornil
break
end
existing_stmt:close()
end
end
end
self.plugin:logDbg("BookloreSync Database: After conversion, book_id:",book_id,"type:",type(book_id))
localstmt=self.conn:prepare([[
INSERT OR REPLACE INTO book_cache (file_path, file_hash, book_id, title, author, isbn10, isbn13, last_accessed)
msgid "When enabled, start/end session locations are scaled to server pagecount metadata before upload. Progress percentages are unchanged."
msgstr "Wenn aktiviert, werden Start-/Endpositionen von Sitzungen vor dem Hochladen auf die Server-Seitenzahl skaliert. Fortschrittsprozente bleiben unverändert."
#: bookloresync.koplugin/main.lua:3445
msgid "Session location normalization enabled"
msgstr "Normalisierung von Sitzungspositionen aktiviert"
#: bookloresync.koplugin/main.lua:3446
msgid "Session location normalization disabled"
msgstr "Normalisierung von Sitzungspositionen deaktiviert"
#: bookloresync.koplugin/main.lua:3160
msgid "Pull progress on book open"
@@ -1992,6 +2008,44 @@ msgstr ""
"geandert haben. Setzt alle gespeicherten Buch-IDs zuruck und lost sie erneut "
"vom Server auf."
#: bookloresync.koplugin/main.lua:3933
msgid "Re-sync Stored Metadata"
msgstr "Gespeicherte Metadaten neu synchronisieren"
#: bookloresync.koplugin/main.lua:3934
msgid "Re-fetch metadata for all cached books that already have a Booklore ID. Updates fields like server pagecount for existing cache entries."
msgstr "Metadaten fur alle gecachten Bucher mit bestehender Booklore-ID erneut abrufen. Aktualisiert Felder wie die Server-Seitenzahl fur vorhandene Cache-Eintrage."
#: bookloresync.koplugin/main.lua:8078
msgid ""
"This will re-fetch metadata for all matched cached books from the server.\n"
"\n"
"Use this to refresh stored metadata such as server pagecount.\n"
"\n"
"Continue?"
msgstr ""
"Dies ruft Metadaten fur alle zugeordneten gecachten Bucher erneut vom Server ab.\n"
"\n"
"Verwenden Sie dies, um gespeicherte Metadaten wie die Server-Seitenzahl zu aktualisieren.\n"
"\n"
"Fortfahren?"
#: bookloresync.koplugin/main.lua:8079
msgid "Re-sync Metadata"
msgstr "Metadaten neu synchronisieren"
#: bookloresync.koplugin/main.lua:8090
msgid "No network connection. Metadata refresh skipped."