diff --git a/cps/schedule.py b/cps/schedule.py
index 707e9bb3..60fd39fe 100644
--- a/cps/schedule.py
+++ b/cps/schedule.py
@@ -27,14 +27,12 @@ from .tasks.metadata_backup import TaskBackupMetadata
def get_scheduled_tasks(reconnect=True):
tasks = list()
- # config.schedule_reconnect or
- # Reconnect Calibre database (metadata.db)
+ # Reconnect Calibre database (metadata.db) based on config.schedule_reconnect
if reconnect:
tasks.append([lambda: TaskReconnectDatabase(), 'reconnect', False])
# ToDo make configurable. Generate metadata.opf file for each changed book
- if False:
- tasks.append([lambda: TaskBackupMetadata("en"), 'backup metadata', False])
+ tasks.append([lambda: TaskBackupMetadata("en"), 'backup metadata', False])
# Generate all missing book cover thumbnails
if config.schedule_generate_book_covers:
diff --git a/cps/static/js/table.js b/cps/static/js/table.js
index 33c22a88..833f1a13 100644
--- a/cps/static/js/table.js
+++ b/cps/static/js/table.js
@@ -634,7 +634,7 @@ function UserActions (value, row) {
/* Function for cancelling tasks */
function TaskActions (value, row) {
- var cancellableStats = [0, 1, 2];
+ var cancellableStats = [0, 2];
if (row.task_id && row.is_cancellable && cancellableStats.includes(row.stat)) {
return [
"
",
diff --git a/cps/tasks/metadata_backup.py b/cps/tasks/metadata_backup.py
index 717e7202..b700b22a 100644
--- a/cps/tasks/metadata_backup.py
+++ b/cps/tasks/metadata_backup.py
@@ -22,8 +22,8 @@ from urllib.request import urlopen
from lxml import etree
from html import escape
-from cps import config, db, fs, gdriveutils, logger, ub
-from cps.services.worker import CalibreTask, STAT_CANCELLED, STAT_ENDED
+from cps import config, db, gdriveutils, logger
+from cps.services.worker import CalibreTask
from flask_babel import lazy_gettext as N_
OPF_NAMESPACE = "http://www.idpf.org/2007/opf"
@@ -74,7 +74,10 @@ class TaskBackupMetadata(CalibreTask):
def backup_metadata(self):
try:
metadata_backup = self.calibre_db.session.query(db.Metadata_Dirtied).all()
- custom_columns = self.calibre_db.session.query(db.CustomColumns).order_by(db.CustomColumns.label).all()
+ custom_columns = (self.calibre_db.session.query(db.CustomColumns)
+ .filter(db.CustomColumns.mark_for_delete == 0)
+ .filter(db.CustomColumns.datatype.notin_(db.cc_exceptions))
+ .order_by(db.CustomColumns.label).all())
count = len(metadata_backup)
i = 0
for backup in metadata_backup:
@@ -226,11 +229,11 @@ class TaskBackupMetadata(CalibreTask):
# doc = etree.tostring(package, xml_declaration=True, encoding='utf-8', pretty_print=True) # .replace(b""", b""")
try:
with open(book_metadata_filepath, 'wb') as f:
- # f.write(doc)
doc.write(f, xml_declaration=True, encoding='utf-8', pretty_print=True)
except Exception:
# ToDo: Folder not writeable error
pass
+
@property
def name(self):
return "Metadata backup"
diff --git a/requirements.txt b/requirements.txt
index d84daf1b..1eaffa38 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -18,4 +18,4 @@ lxml>=3.8.0,<5.0.0
flask-wtf>=0.14.2,<1.2.0
chardet>=3.0.0,<4.1.0
advocate>=1.0.0,<1.1.0
-Flask-Limiter>=2.3.0,<3.2.0
+Flask-Limiter>=2.3.0,<3.3.0