From fefb44e612e5b58a19fcddbddf8586793ea056dd Mon Sep 17 00:00:00 2001 From: Ozzieisaacs Date: Sat, 9 May 2020 19:54:28 +0200 Subject: [PATCH] #1356 (fixes for readonly metadata.db) Fix remove trailing metadata.db at entering calibre_db_path --- cps/admin.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cps/admin.py b/cps/admin.py index fa530544..aeeb2f59 100644 --- a/cps/admin.py +++ b/cps/admin.py @@ -22,6 +22,7 @@ from __future__ import division, print_function, unicode_literals import os +import re import base64 import json import time @@ -615,6 +616,7 @@ def _configuration_update_helper(): db_change = False to_save = request.form.to_dict() + to_save['config_calibre_dir'] = re.sub('[[\\/]metadata\.db$', '', to_save['config_calibre_dir'], flags=re.IGNORECASE) db_change |= _config_string(to_save, "config_calibre_dir") # Google drive setup @@ -691,6 +693,8 @@ def _configuration_update_helper(): if db_change: if not db.setup_db(config): return _configuration_result(_('DB Location is not Valid, Please Enter Correct Path'), gdriveError) + if not os.access(os.path.join(config.config_calibre_dir, "metadata.db"), os.W_OK): + flash(_(u"DB is not writeable"), category="warning") config.save() flash(_(u"Calibre-Web configuration updated"), category="success")