From 84eb10232c9b39409839fe9c753b322fca0386e3 Mon Sep 17 00:00:00 2001 From: doanguyen Date: Mon, 30 Dec 2019 00:33:59 +0100 Subject: [PATCH 1/6] notification setting --- app/dashboard/templates/dashboard/setting.html | 15 +++++++++++++++ app/dashboard/views/setting.py | 9 +++++++++ app/models.py | 1 + 3 files changed, 25 insertions(+) diff --git a/app/dashboard/templates/dashboard/setting.html b/app/dashboard/templates/dashboard/setting.html index ff1a7ecb..4f35427a 100644 --- a/app/dashboard/templates/dashboard/setting.html +++ b/app/dashboard/templates/dashboard/setting.html @@ -81,6 +81,21 @@ +
+ +

Notifications

+
Do you want to receive our newsletter?
+
+ +
+
+ + +
+
+ +
+

Export Data

diff --git a/app/dashboard/views/setting.py b/app/dashboard/views/setting.py index 22a1f010..c9c59e58 100644 --- a/app/dashboard/views/setting.py +++ b/app/dashboard/views/setting.py @@ -115,6 +115,15 @@ def setting(): elif request.form.get("form-name") == "change-password": send_reset_password_email(current_user) + elif request.form.get("form-name") == "notification-preference": + choose = request.form.get("notification") + if choose == "on": + current_user.notification = True + else: + current_user.notification = False + db.session.commit() + flash("Your notification preference has been updated", "success") + elif request.form.get("form-name") == "delete-account": User.delete(current_user.id) db.session.commit() diff --git a/app/models.py b/app/models.py index 3ed03e2f..1a518568 100644 --- a/app/models.py +++ b/app/models.py @@ -106,6 +106,7 @@ class User(db.Model, ModelMixin, UserMixin): default=AliasGeneratorEnum.word.value, server_default=str(AliasGeneratorEnum.word.value), ) + notification = db.Column(db.Boolean, default=True, nullable=False, server_default=str(True)) activated = db.Column(db.Boolean, default=False, nullable=False) From 9466fd556ce38f6fd1123e2dc5d163aaeeb82131 Mon Sep 17 00:00:00 2001 From: doanguyen Date: Mon, 30 Dec 2019 00:35:06 +0100 Subject: [PATCH 2/6] update migration file --- .../templates/dashboard/newsletter.html | 0 app/dashboard/views/newsletter.py | 6 ++++ .../versions/2019_123000_a8b996f0be40_.py | 29 +++++++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 app/dashboard/templates/dashboard/newsletter.html create mode 100644 app/dashboard/views/newsletter.py create mode 100644 migrations/versions/2019_123000_a8b996f0be40_.py diff --git a/app/dashboard/templates/dashboard/newsletter.html b/app/dashboard/templates/dashboard/newsletter.html new file mode 100644 index 00000000..e69de29b diff --git a/app/dashboard/views/newsletter.py b/app/dashboard/views/newsletter.py new file mode 100644 index 00000000..353d6b43 --- /dev/null +++ b/app/dashboard/views/newsletter.py @@ -0,0 +1,6 @@ +from app.dashboard.base import dashboard_bp + + +@dashboard_bp.route("/", methods=["GET", "POST"]) +def notification_setting(): + pass diff --git a/migrations/versions/2019_123000_a8b996f0be40_.py b/migrations/versions/2019_123000_a8b996f0be40_.py new file mode 100644 index 00000000..adb6f6af --- /dev/null +++ b/migrations/versions/2019_123000_a8b996f0be40_.py @@ -0,0 +1,29 @@ +"""empty message + +Revision ID: a8b996f0be40 +Revises: 696e17c13b8b +Create Date: 2019-12-30 00:22:25.114359 + +""" +import sqlalchemy_utils +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = 'a8b996f0be40' +down_revision = '696e17c13b8b' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.add_column('users', sa.Column('notification', sa.Boolean(), server_default='1', nullable=False)) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_column('users', 'notification') + # ### end Alembic commands ### From c194ee3337300e367727dd39a184cac432f2673a Mon Sep 17 00:00:00 2001 From: doanguyen Date: Mon, 30 Dec 2019 00:37:07 +0100 Subject: [PATCH 3/6] blacked --- app/models.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/models.py b/app/models.py index 1a518568..7fe1c339 100644 --- a/app/models.py +++ b/app/models.py @@ -106,7 +106,9 @@ class User(db.Model, ModelMixin, UserMixin): default=AliasGeneratorEnum.word.value, server_default=str(AliasGeneratorEnum.word.value), ) - notification = db.Column(db.Boolean, default=True, nullable=False, server_default=str(True)) + notification = db.Column( + db.Boolean, default=True, nullable=False, server_default=str(True) + ) activated = db.Column(db.Boolean, default=False, nullable=False) From 4b3453dce890de9fb047c8d5409cb58f524d3997 Mon Sep 17 00:00:00 2001 From: doanguyen Date: Mon, 30 Dec 2019 00:39:47 +0100 Subject: [PATCH 4/6] Lol, str(True) != 1 --- app/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models.py b/app/models.py index 7fe1c339..2c3691ff 100644 --- a/app/models.py +++ b/app/models.py @@ -107,7 +107,7 @@ class User(db.Model, ModelMixin, UserMixin): server_default=str(AliasGeneratorEnum.word.value), ) notification = db.Column( - db.Boolean, default=True, nullable=False, server_default=str(True) + db.Boolean, default=True, nullable=False, server_default='1' ) activated = db.Column(db.Boolean, default=False, nullable=False) From 3e766f8126f19dd3137ee7d13426125430c9a468 Mon Sep 17 00:00:00 2001 From: doanguyen Date: Mon, 30 Dec 2019 00:47:55 +0100 Subject: [PATCH 5/6] blacked-again --- app/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models.py b/app/models.py index 2c3691ff..10468f0a 100644 --- a/app/models.py +++ b/app/models.py @@ -107,7 +107,7 @@ class User(db.Model, ModelMixin, UserMixin): server_default=str(AliasGeneratorEnum.word.value), ) notification = db.Column( - db.Boolean, default=True, nullable=False, server_default='1' + db.Boolean, default=True, nullable=False, server_default="1" ) activated = db.Column(db.Boolean, default=False, nullable=False) From ccaf304448a6987e1523a893077efa47a4aacb1a Mon Sep 17 00:00:00 2001 From: doanguyen Date: Mon, 30 Dec 2019 20:24:46 +0100 Subject: [PATCH 6/6] Remove unused file --- app/dashboard/templates/dashboard/newsletter.html | 0 app/dashboard/views/newsletter.py | 6 ------ 2 files changed, 6 deletions(-) delete mode 100644 app/dashboard/templates/dashboard/newsletter.html delete mode 100644 app/dashboard/views/newsletter.py diff --git a/app/dashboard/templates/dashboard/newsletter.html b/app/dashboard/templates/dashboard/newsletter.html deleted file mode 100644 index e69de29b..00000000 diff --git a/app/dashboard/views/newsletter.py b/app/dashboard/views/newsletter.py deleted file mode 100644 index 353d6b43..00000000 --- a/app/dashboard/views/newsletter.py +++ /dev/null @@ -1,6 +0,0 @@ -from app.dashboard.base import dashboard_bp - - -@dashboard_bp.route("/", methods=["GET", "POST"]) -def notification_setting(): - pass