42e7aabe5f
Implements ability to keep original book formats after conversion to target format. Users can now select which formats to retain via CWA settings UI. Features: - New auto_convert_retained_formats setting with checkbox grid UI - Automatic conflict prevention (target format always retained) - Database migration support for backward compatibility - Enhanced ingest processor with robust format addition logic Credit to @angelicadvocate for original implementation concept in PR #284. Fixes edge cases including race conditions, UI state handling, and iteration safety.
72 lines
3.2 KiB
SQL
72 lines
3.2 KiB
SQL
CREATE TABLE IF NOT EXISTS cwa_enforcement(
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
timestamp TEXT NOT NULL,
|
|
book_id INTEGER NOT NULL,
|
|
book_title TEXT NOT NULL,
|
|
author TEXT NOT NULL,
|
|
file_path TEXT NOT NULL,
|
|
trigger_type TEXT NOT NULL
|
|
);
|
|
CREATE TABLE IF NOT EXISTS cwa_import(
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
timestamp TEXT NOT NULL,
|
|
filename TEXT NOT NULL,
|
|
original_backed_up TEXT NOT NULL
|
|
);
|
|
CREATE TABLE IF NOT EXISTS cwa_conversions(
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
timestamp TEXT NOT NULL,
|
|
filename TEXT NOT NULL,
|
|
original_format TEXT NOT NULL,
|
|
original_backed_up TEXT NOT NULL,
|
|
end_format TEXT DEFAULT "" NOT NULL
|
|
);
|
|
CREATE TABLE IF NOT EXISTS epub_fixes(
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
timestamp TEXT NOT NULL,
|
|
filename TEXT NOT NULL,
|
|
manually_triggered TEXT NOT NULL,
|
|
num_of_fixes_applied TEXT NOT NULL,
|
|
original_backed_up TEXT NOT NULL,
|
|
file_path TEXT NOT NULL,
|
|
fixes_applied TEXT DEFAULT ""
|
|
);
|
|
CREATE TABLE IF NOT EXISTS cwa_settings(
|
|
default_settings SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_backup_imports SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_backup_conversions SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_zip_backups SMALLINT DEFAULT 1 NOT NULL,
|
|
cwa_update_notifications SMALLINT DEFAULT 1 NOT NULL,
|
|
contribute_translations_notifications SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_convert SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_convert_target_format TEXT DEFAULT "epub" NOT NULL,
|
|
auto_convert_ignored_formats TEXT DEFAULT "" NOT NULL,
|
|
auto_ingest_ignored_formats TEXT DEFAULT "" NOT NULL,
|
|
auto_convert_retained_formats TEXT DEFAULT "" NOT NULL,
|
|
auto_ingest_automerge TEXT DEFAULT "new_record" NOT NULL,
|
|
ingest_timeout_minutes INTEGER DEFAULT 15 NOT NULL,
|
|
auto_metadata_enforcement SMALLINT DEFAULT 1 NOT NULL,
|
|
kindle_epub_fixer SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_backup_epub_fixes SMALLINT DEFAULT 1 NOT NULL,
|
|
enable_mobile_blur SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_fetch_enabled SMALLINT DEFAULT 0 NOT NULL,
|
|
auto_metadata_smart_application SMALLINT DEFAULT 0 NOT NULL,
|
|
auto_metadata_update_title SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_authors SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_description SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_publisher SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_tags SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_series SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_rating SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_published_date SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_identifiers SMALLINT DEFAULT 1 NOT NULL,
|
|
auto_metadata_update_cover SMALLINT DEFAULT 1 NOT NULL,
|
|
metadata_provider_hierarchy TEXT DEFAULT '["ibdb","google","dnb"]' NOT NULL,
|
|
auto_send_delay_minutes INTEGER DEFAULT 5 NOT NULL,
|
|
duplicate_detection_title SMALLINT DEFAULT 1 NOT NULL,
|
|
duplicate_detection_author SMALLINT DEFAULT 1 NOT NULL,
|
|
duplicate_detection_language SMALLINT DEFAULT 1 NOT NULL,
|
|
duplicate_detection_series SMALLINT DEFAULT 0 NOT NULL,
|
|
duplicate_detection_publisher SMALLINT DEFAULT 0 NOT NULL,
|
|
duplicate_detection_format SMALLINT DEFAULT 0 NOT NULL
|
|
); |