diasporadiaries

a platform for writing stories with personal accounts and messages
git clone git://parazyd.org/diasporadiaries.git
Log | Files | Refs | Submodules | README | LICENSE

commit f99908fcdb0a00ef7f9a70d11d773edfb9405e2c
parent 61f21d7c8a8a9b9440f7807caed5298cd57ef81d
Author: parazyd <parazyd@dyne.org>
Date:   Mon, 21 Jan 2019 15:39:38 +0100

Separate user deletion in its own function.

Diffstat:
Mdiaspora.py | 4++--
Mutils.py | 9++++++++-
2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/diaspora.py b/diaspora.py @@ -33,7 +33,7 @@ from utils import (get_story, makenav, randomstring, getcountryname, get_multiple_stories, get_multiple_stories_filtered, make_profile, find_user_by_id, find_user_by_email, validate_user, get_multiple_users, get_messages, - get_latest_messages, send_message) + get_latest_messages, send_message, delete_user) app = Flask(__name__) @@ -372,7 +372,7 @@ def users(): print(vals) if request.args.get('delid'): - sql_delete_row_where('id', request.args.get('delid'), table='users') + delete_user(request.args.get('delid')) userlist = get_multiple_users('is_active', 1) return render_template('users.html', users=userlist) diff --git a/utils.py b/utils.py @@ -21,13 +21,14 @@ import json from os import makedirs, listdir from os.path import join from random import SystemRandom, shuffle +from shutil import rmtree from string import ascii_lowercase, digits from time import gmtime, strftime, time from bcrypt import gensalt, hashpw from flask import Markup -from db import sql_select_col_where, sql_insert +from db import sql_select_col_where, sql_insert, sql_delete_row_where COUNTRYMAP = {} @@ -325,3 +326,9 @@ def send_message(id_to, msg, id_us): with open(their_msgpath, 'w') as theirmsgs: json.dump(theirdata, theirmsgs) + + +def delete_user(user_id): + user = find_user_by_id(user_id) + rmtree(join('messages', user['email']), ignore_errors=True) + sql_delete_row_where('id', user_id, table='users')