Add user self delete function

This commit is contained in:
Stephan Porada 2019-09-10 14:18:20 +02:00
parent 2f6dd37abb
commit d537096f74
3 changed files with 38 additions and 1 deletions

View File

@ -160,3 +160,13 @@ def edit_profile():
change_profile_form=change_profile_form, change_profile_form=change_profile_form,
title='Edit Profile' title='Edit Profile'
) )
@auth.route('/edit_profile/delete_self/<int:user_id>', methods=['GET', 'POST'])
@login_required
def delete_self(user_id):
selected_user = User.query.filter_by(id=user_id).first()
db.session.delete(selected_user)
db.session.commit()
flash('Your account has been deleted!')
return redirect(url_for('main.index'))

View File

@ -70,7 +70,7 @@
<div class="card-content"> <div class="card-content">
<span class="card-title">Administration actions</span> <span class="card-title">Administration actions</span>
<!-- Confirm deletion of selected user with modal dialogue <!-- Confirm deletion of selected user with modal dialogue
Modal Trigger--> Modal Trigger-->
<a href="#modal-confirm-delete" class="waves-effect waves-light btn red modal-trigger"><i class="material-icons left">delete</i>Delete User</a> <a href="#modal-confirm-delete" class="waves-effect waves-light btn red modal-trigger"><i class="material-icons left">delete</i>Delete User</a>
<!-- Modal Strucutre --> <!-- Modal Strucutre -->
<div id="modal-confirm-delete" class="modal"> <div id="modal-confirm-delete" class="modal">

View File

@ -66,4 +66,31 @@
</form> </form>
</div> </div>
</div> </div>
<div class="col s12 m4">
<h3>Delete Account</h3>
<p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren,</p>
</div>
<div class="col s12 m8">
<div class="card">
<div class="card-content">
<!-- Confirm deletion of selected user with modal dialogue
Modal Trigger-->
</div>
<div class="card-action right-align">
<a href="#modal-confirm-delete" class="waves-effect waves-light btn red modal-trigger"><i class="material-icons left">delete</i>Delete User</a>
</div>
<!-- Modal Strucutre -->
<div id="modal-confirm-delete" class="modal">
<div class="modal-content">
<h4>Confirm deletion</h4>
<p>
Do you really want to delete your account and all associated data?
</p>
</div>
<div class="modal-footer">
<a href="{{url_for('auth.delete_self', user_id=current_user.id)}}" class="modal-close waves-effect waves-green btn red"><i class="material-icons left">delete</i>Delete User</a></a>
</div>
</div>
</div>
</div>
{% endblock %} {% endblock %}