def deletesession(name, slug): space = ProposalSpace.query.filter_by(name=name).first() if not space: abort(404) proposal_id = int(slug.split('-')[0]) proposal = Proposal.query.get(proposal_id) if not proposal: abort(404) if not lastuser.has_permission('siteadmin') and proposal.user != g.user: abort(403) form = ConfirmDeleteForm() if form.validate_on_submit(): if 'delete' in request.form: comments = Comment.query.filter_by(commentspace=proposal.comments).order_by('created_at').all() for comment in comments: db.session.delete(comment) db.session.delete(proposal.comments) votes = Vote.query.filter_by(votespace=proposal.votes).all() for vote in votes: db.session.delete(vote) db.session.delete(proposal.votes) db.session.delete(proposal) db.session.commit() flash("Your proposal has been deleted", "info") return redirect(url_for('viewspace', name=name)) else: return redirect(url_for('viewsession', name=name, slug=slug)) return render_template('delete.html', form=form, title=u"Confirm delete", message=u"Do you really wish to delete your proposal '%s'? " u"This will remove all votes and comments as well. This operation " u"is permanent and cannot be undone." % proposal.title)
def section_delete(space, section): space = ProposalSpace.query.filter_by(name=section).first() section = ProposalSpaceSection.query.filter_by(name=section).first() form = ConfirmDeleteForm() if form.validate_on_submit(): if 'delete' in request.form: db.session.delete(section) db.session.commit() flash("Your section has been deleted", 'info') return redirect(space.url_for('viewspace', name=space.name), code=303) return render_template('delete.html', form=form, title="Confirm delete", message="Do you really wish to delete section '{title}' ?".format(title=section.title))
def usergroup_delete(name, group): space = ProposalSpace.query.filter_by(name=name).first_or_404() usergroup = UserGroup.query.filter_by(name=group, proposal_space=space).first_or_404() form = ConfirmDeleteForm() if form.validate_on_submit(): if 'delete' in request.form: db.session.delete(usergroup) db.session.commit() flash("Your user group has been deleted", "info") return redirect(url_for('usergroup_list', name=name)) else: return redirect(url_for('usergroup_view', name=name, group=group)) return render_template('delete.html', form=form, title=u"Confirm delete", message=u"Do you really wish to delete user group '%s'?" % usergroup.title)
def usergroup_delete(name, group): space = ProposalSpace.query.filter_by(name=name).first_or_404() usergroup = UserGroup.query.filter_by(name=group, proposal_space=space).first_or_404() form = ConfirmDeleteForm() if form.validate_on_submit(): if 'delete' in request.form: db.session.delete(usergroup) db.session.commit() flash("Your user group has been deleted", "info") return redirect(url_for('usergroup_list', name=name)) else: return redirect(url_for('usergroup_view', name=name, group=group)) return render_template( 'delete.html', form=form, title=u"Confirm delete", message=u"Do you really wish to delete user group '%s'?" % usergroup.title)
def delete_event(id): if users.is_admin(): form = ConfirmDeleteForm(request.form) if request.method == "GET": print(users.get_csrf_token()) event = events.get_event_info(id) return render_template("delete_event.html", event=event, form=form) if request.method == "POST": if form.cancel.data: return redirect("/events") if form.confirm.data: if events.delete_event(id): return redirect("/events") else: return render_template("error.html", message="Tapahtuman poisto ei onnistunut") else: return redirect("/events")
def delete_user(id): if users.is_admin() or users.user_id() == id: form = ConfirmDeleteForm(request.form) if request.method == "GET": del_user = users.get_user(id) return render_template("delete_user.html", del_user=del_user, form=form) if request.method == "POST": if users.get_csrf_token() != form.csrf_token.data: abort(403) if form.confirm.data: if users.delete_user(id): return redirect("/users") else: return render_template("error.html", message="Pelaajan poisto ei onnistunut") else: return redirect("/users") else: return render_template("error.html", message="Pelaajan poisto ei onnistunut") else: return render_template("error.html", message="Ei oikeutta")