diff --git a/cps/helper.py b/cps/helper.py index 722a6245..ae8c1534 100755 --- a/cps/helper.py +++ b/cps/helper.py @@ -236,8 +236,8 @@ def update_dir_structure_file(book_id, calibrepath): path = new_title_path localbook.path = localbook.path.split('/')[0] + '/' + new_titledir except OSError as ex: - web.app.logger.error("Rename title from: " + path + " to " + new_title_path) - web.app.logger.error(ex, exc_info=True) + web.app.logger.error("Rename title from: " + path + " to " + new_title_path + ": " + str(ex)) + web.app.logger.debug(ex, exc_info=True) return _("Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s", src=path, dest=new_title_path, error=str(ex)) if authordir != new_authordir: try: @@ -245,9 +245,9 @@ def update_dir_structure_file(book_id, calibrepath): os.renames(path, new_author_path) localbook.path = new_authordir + '/' + localbook.path.split('/')[1] except OSError as ex: - web.app.logger.error("Rename author from: " + path + " to " + new_author_path) - web.app.logger.error(ex, exc_info=True) - return _("Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s", src=path, dest=new_title_path, error=str(ex)) + web.app.logger.error("Rename author from: " + path + " to " + new_author_path + ": " + str(ex)) + web.app.logger.debug(ex, exc_info=True) + return _("Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s", src=path, dest=new_author_path, error=str(ex)) return False diff --git a/cps/templates/book_edit.html b/cps/templates/book_edit.html index e2907624..5be6ac9d 100644 --- a/cps/templates/book_edit.html +++ b/cps/templates/book_edit.html @@ -6,9 +6,9 @@
{% if book.has_cover %} - + {{ book.title }} {% else %} - + {{ book.title }} {% endif %}
{% if g.user.role_delete_books() %} @@ -174,7 +174,7 @@
{{_('Get metadata')}} - + {{_('Back')}} diff --git a/cps/templates/detail.html b/cps/templates/detail.html index 420b98a6..44c3619f 100644 --- a/cps/templates/detail.html +++ b/cps/templates/detail.html @@ -250,7 +250,7 @@ {% if g.user.role_edit() %} {% endif %} diff --git a/cps/web.py b/cps/web.py index 2d1e5f3f..18f1f9e8 100644 --- a/cps/web.py +++ b/cps/web.py @@ -172,7 +172,12 @@ cache_buster.init_cache_busting(app) formatter = logging.Formatter( "[%(asctime)s] {%(pathname)s:%(lineno)d} %(levelname)s - %(message)s") -file_handler = RotatingFileHandler(config.get_config_logfile(), maxBytes=50000, backupCount=2) +try: + file_handler = RotatingFileHandler(config.get_config_logfile(), maxBytes=50000, backupCount=2) +except IOError: + file_handler = RotatingFileHandler(os.path.join(config.get_main_dir, "calibre-web.log"), + maxBytes=50000, backupCount=2) + # ToDo: reset logfile value in config class file_handler.setFormatter(formatter) app.logger.addHandler(file_handler) app.logger.setLevel(config.config_log_level) @@ -207,7 +212,8 @@ def get_locale(): # if a user is logged in, use the locale from the user settings user = getattr(g, 'user', None) if user is not None and hasattr(user, "locale"): - return user.locale + if user.nickname != 'Guest': # if the account is the guest account bypass the config lang settings + return user.locale translations = [item.language for item in babel.list_translations()] + ['en'] preferred = [x.replace('-', '_') for x in request.accept_languages.values()] return negotiate_locale(preferred, translations) @@ -3573,10 +3579,10 @@ def edit_book(book_id): # Update book edited_books_id = None #handle book title - if book.title != to_save["book_title"]: + if book.title != to_save["book_title"].rstrip().strip(): if to_save["book_title"] == '': to_save["book_title"] = _(u'unknown') - book.title = to_save["book_title"] + book.title = to_save["book_title"].rstrip().strip() edited_books_id = book.id # handle author(s) @@ -3601,8 +3607,6 @@ def edit_book(book_id): error = False if edited_books_id: error = helper.update_dir_stucture(edited_books_id, config.config_calibre_dir) - if error: # stop on error - flash(error, category="error") if not error: if to_save["cover_url"]: