From 847dbfc0218d19f71a64b33b9c2ce20ed754979f Mon Sep 17 00:00:00 2001 From: Daniel Pavel Date: Wed, 17 Jul 2019 11:42:19 +0300 Subject: [PATCH] fixed custom columns handling on dispose --- cps/__init__.py | 4 +--- cps/constants.py | 1 - cps/db.py | 3 +-- cps/editbooks.py | 3 +-- cps/helper.py | 1 - cps/worker.py | 1 - 6 files changed, 3 insertions(+), 10 deletions(-) diff --git a/cps/__init__.py b/cps/__init__.py index 26750d1a..d26c3cdc 100755 --- a/cps/__init__.py +++ b/cps/__init__.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- # This file is part of the Calibre-Web (https://github.com/janeczku/calibre-web) @@ -134,8 +133,7 @@ def get_locale(): @babel.timezoneselector def get_timezone(): user = getattr(g, 'user', None) - if user is not None: - return user.timezone + return user.timezone if user else None from .updater import Updater updater_thread = Updater() diff --git a/cps/constants.py b/cps/constants.py index 2bedb282..9d4938b2 100644 --- a/cps/constants.py +++ b/cps/constants.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- # This file is part of the Calibre-Web (https://github.com/janeczku/calibre-web) diff --git a/cps/db.py b/cps/db.py index 1ed56234..b9853896 100755 --- a/cps/db.py +++ b/cps/db.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- # This file is part of the Calibre-Web (https://github.com/janeczku/calibre-web) @@ -418,7 +417,7 @@ def dispose(): for attr in list(Books.__dict__.keys()): if attr.startswith("custom_column_"): - delattr(Books, attr) + setattr(Books, attr, None) for db_class in cc_classes.values(): Base.metadata.remove(db_class.__table__) diff --git a/cps/editbooks.py b/cps/editbooks.py index 8851a0d8..2da9991f 100644 --- a/cps/editbooks.py +++ b/cps/editbooks.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- # This file is part of the Calibre-Web (https://github.com/janeczku/calibre-web) @@ -301,7 +300,7 @@ def edit_cc_data(book_id, book, to_save): # remove old cc_val del_cc = getattr(book, cc_string)[0] getattr(book, cc_string).remove(del_cc) - if len(del_cc.books) == 0: + if not del_cc.books or len(del_cc.books) == 0: db.session.delete(del_cc) else: input_tags = to_save[cc_string].split(',') diff --git a/cps/helper.py b/cps/helper.py index d7308d04..c94093db 100644 --- a/cps/helper.py +++ b/cps/helper.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- # This file is part of the Calibre-Web (https://github.com/janeczku/calibre-web) diff --git a/cps/worker.py b/cps/worker.py index 37212873..9744b91f 100644 --- a/cps/worker.py +++ b/cps/worker.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python # -*- coding: utf-8 -*- # This file is part of the Calibre-Web (https://github.com/janeczku/calibre-web)