From 12541d5f1c46e7e074b51d19b2b8fd90b9f3e7f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Jaenisch?= Date: Mon, 23 May 2022 20:52:26 +0200 Subject: [PATCH] Map timestamp to date_added to avoid integrity error. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: André Jaenisch --- bookwyrm/importers/calibre_import.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/bookwyrm/importers/calibre_import.py b/bookwyrm/importers/calibre_import.py index ce20fbfa..b9eb3da7 100644 --- a/bookwyrm/importers/calibre_import.py +++ b/bookwyrm/importers/calibre_import.py @@ -9,6 +9,20 @@ class CalibreImporter(Importer): service = "Calibre" + def __init__(self, *args, **kwargs): + # Add timestamp to row_mappings_guesses for date_added to avoid + # integrity error + row_mappings_guesses = [] + + for field, mapping in self.row_mappings_guesses: + if field in ('date_added',): + row_mappings_guesses.append((field, mapping + ['timestamp'])) + else: + row_mappings_guesses.append((field, mapping)) + + self.row_mappings_guesses = row_mappings_guesses + super().__init__(*args, **kwargs) + def get_shelf(self, normalized_row): # Calibre export does not indicate which shelf to use. Go with a default one for now return Shelf.TO_READ