Add option to delete a user account

This commit is contained in:
Dominik Heidler 2016-04-10 14:48:43 +02:00
parent 1c1dea66ff
commit c894f91abb
2 changed files with 9 additions and 0 deletions

View File

@ -130,6 +130,11 @@ def user_info(nickname):
set_user_admin(nickname, request.form.get("admin") == "true")
# force db data reload
user = db.users.find_one({"nickname": nickname})
elif request.form.get("action") == "deleteaccount":
if session.get('admin'):
db.users.delete_one({"nickname": nickname})
flash("<b>User <i>%s</i> deleted!</b>" % nickname, "success")
return redirect(url_for("user_list"))
else:
flash("<b>You are not authorized to perform this action!</b>", "danger")
routers=db.routers.find({"user._id": user["_id"]}, {

View File

@ -34,6 +34,7 @@
<li><a href="#" data-toggle="modal" data-target="#changepw">Change Password</a></li>
<li><a href="#" data-toggle="modal" data-target="#changemail">Change E-Mail Address</a></li>
{%- if session.admin %}
<li><a href="#" onclick="$('#delaccform').submit()">Delete Account</a></li>
<li><a href="#" onclick="$('#adminform').submit()">Toggle admin</a></li>
{%- endif %}
</ul>
@ -206,5 +207,8 @@
<input type="hidden" name="action" value="changeadmin" />
<input type="hidden" name="admin" value="{{ "false" if user.admin else "true" }}" />
</form>
<form method="post" id="delaccform">
<input type="hidden" name="action" value="deleteaccount" />
</form>
{%- endif %}
{% endblock %}