From cea5c191a6b3d7a0d45d8ea9f89fea7f838bce59 Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Tue, 12 Dec 2017 13:54:48 +0100 Subject: [PATCH] user.html: Display abuse properties and add ability to change it Every user having abuse enabled will receive e-mails if routers are reported. Signed-off-by: Adrian Schmutzler --- ffmap/usertools.py | 9 +++++++++ ffmap/web/application.py | 6 ++++++ ffmap/web/templates/user.html | 8 ++++++++ 3 files changed, 23 insertions(+) diff --git a/ffmap/usertools.py b/ffmap/usertools.py index 4b0f0ff..16275f7 100644 --- a/ffmap/usertools.py +++ b/ffmap/usertools.py @@ -133,3 +133,12 @@ def set_user_admin(mysql, nickname, admin): LIMIT 1 """,(admin,nickname,)) mysql.commit() + +def set_user_abuse(mysql, nickname, abuse): + mysql.execute(""" + UPDATE users + SET abuse = %s + WHERE nickname = %s + LIMIT 1 + """,(abuse,nickname,)) + mysql.commit() diff --git a/ffmap/web/application.py b/ffmap/web/application.py index 4c3099f..d7c71c0 100755 --- a/ffmap/web/application.py +++ b/ffmap/web/application.py @@ -263,6 +263,12 @@ def user_info(nickname): set_user_admin(mysql, nickname, request.form.get("admin") == "true") # force db data reload mysql.findone("SELECT * FROM users WHERE nickname = %s LIMIT 1",(nickname,)) + elif request.form.get("action") == "changeabuse": + if session.get('admin'): + set_user_abuse(mysql, nickname, request.form.get("abuse") == "true") + # force db data reload + user = mysql.findone("SELECT * FROM users WHERE nickname = %s LIMIT 1",(nickname,)) + user["created"] = mysql.utcaware(user["created"]) elif request.form.get("action") == "deleteaccount": if session.get('admin'): mysql.execute("DELETE FROM users WHERE nickname = %s LIMIT 1",(nickname,)) diff --git a/ffmap/web/templates/user.html b/ffmap/web/templates/user.html index 83c37a3..8d170a4 100644 --- a/ffmap/web/templates/user.html +++ b/ffmap/web/templates/user.html @@ -36,6 +36,7 @@ {%- if session.admin %}
  • Delete Account
  • Toggle admin
  • +
  • Toggle abuse
  • {%- endif %} @@ -75,6 +76,9 @@ Admin + Receive abuse reports + + @@ -206,6 +210,10 @@ +
    + + +