From 22de5e7e4e6ce50170a9ac27aea6d257bdbe211a Mon Sep 17 00:00:00 2001 From: Thomas L Date: Sat, 14 Apr 2018 17:31:53 +0200 Subject: [PATCH 1/3] add default triggerpattern --- db.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/db.py b/db.py index d6c52bc..9067d0c 100644 --- a/db.py +++ b/db.py @@ -126,6 +126,10 @@ class DB(object): self.execute("INSERT INTO user (passhash) VALUES(?);", (json['passhash'], )) uid = self.cur.lastrowid + self.execute(""" + INSERT INTO triggerpatterns (user_id, pattern) + VALUES(?, ?); + """, (uid, '.*')) else: uid = json['uid'] self.execute("INSERT INTO email (user_id, email) VALUES(?, ?);", From 57cf3bd7d68a760916142ea4ad14c025767a9515 Mon Sep 17 00:00:00 2001 From: Thomas L Date: Sat, 14 Apr 2018 17:34:43 +0200 Subject: [PATCH 2/3] no return needed, redirect throws --- frontend.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/frontend.py b/frontend.py index 585af01..0c0c0eb 100755 --- a/frontend.py +++ b/frontend.py @@ -54,7 +54,7 @@ def confirm(token): # create db-entry if db.confirm(token): # :todo show info "Account creation successful." - return redirect('/settings') + redirect('/settings') return dict(error='Email confirmation failed.') @@ -65,7 +65,7 @@ def login_post(): try: if db.by_email(request.forms.get('email', '')) \ .check_password(request.forms.get('pass', '')): - return redirect('/settings') + redirect('/settings') except AttributeError: pass return dict(error='Authentication failed.') @@ -92,7 +92,7 @@ def logout(): # clear auth cookie response.set_cookie('uid', '', expires=0, path="/") # :todo show info "Logout successful." - return redirect('/') + redirect('/') @get('/login/twitter') @@ -112,7 +112,7 @@ def login_twitter(user): exc_info=True) return dict(error="Failed to get request token.") user.save_request_token(auth.request_token) - return bottle.redirect(redirect_url) + redirect(redirect_url) @get('/login/twitter/callback') @@ -131,7 +131,7 @@ def twitter_callback(user): "oauth_token_secret": verifier} auth.get_access_token(verifier) user.save_twitter_token(auth.access_token, auth.access_token_secret) - return bottle.redirect("/settings") + redirect("/settings") @post('/login/mastodon') From fd2a389d12fc41b66ef65ec5859368f0f7da65bf Mon Sep 17 00:00:00 2001 From: Thomas L Date: Sat, 14 Apr 2018 17:53:08 +0200 Subject: [PATCH 3/3] add error message for empty form. --- frontend.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/frontend.py b/frontend.py index 0c0c0eb..67f95e4 100755 --- a/frontend.py +++ b/frontend.py @@ -26,9 +26,12 @@ def propaganda(): @post('/register') @view('template/register.tpl') def register_post(): - email = request.forms.get('email', '') - password = request.forms.get('pass', '') - password_repeat = request.forms.get('pass-repeat', '') + try: + email = request.forms['email'] + password = request.forms['pass'] + password_repeat = request.forms['pass-repeat'] + except KeyError: + return dict(error='Please, fill the form.') if password != password_repeat: return dict(error='Passwords do not match.') if db.by_email(email): @@ -63,9 +66,11 @@ def confirm(token): def login_post(): # check login try: - if db.by_email(request.forms.get('email', '')) \ - .check_password(request.forms.get('pass', '')): + if db.by_email(request.forms['email']) \ + .check_password(request.forms['pass']): redirect('/settings') + except KeyError: + return dict(error='Please, fill the form.') except AttributeError: pass return dict(error='Authentication failed.')