diff options
| author | rubenwardy <rw@rubenwardy.com> | 2018-12-25 15:13:30 +0000 |
|---|---|---|
| committer | rubenwardy <rw@rubenwardy.com> | 2018-12-25 15:13:30 +0000 |
| commit | 1eaed55bc6d0942f8428a9c015b00503e33aa0cd (patch) | |
| tree | 97478d8e5e619697c2bea7776dad52e635621233 /app/views | |
| parent | c2265313d8a80beed9b2edb75095e1e6d7277e1d (diff) | |
| download | cheatdb-1eaed55bc6d0942f8428a9c015b00503e33aa0cd.tar.xz | |
Add ability to unapprove package from GUI
Diffstat (limited to 'app/views')
| -rw-r--r-- | app/views/packages/__init__.py | 43 |
1 files changed, 31 insertions, 12 deletions
diff --git a/app/views/packages/__init__.py b/app/views/packages/__init__.py index db6753b..0d96830 100644 --- a/app/views/packages/__init__.py +++ b/app/views/packages/__init__.py @@ -402,25 +402,44 @@ def approve_package_page(package): return redirect(package.getDetailsURL()) -@app.route("/packages/<author>/<name>/delete/", methods=["GET", "POST"]) +@app.route("/packages/<author>/<name>/remove/", methods=["GET", "POST"]) @login_required @is_package_page -def delete_package_page(package): +def remove_package_page(package): if request.method == "GET": - return render_template("packages/delete.html", package=package) + return render_template("packages/remove.html", package=package) - if not package.checkPerm(current_user, Permission.DELETE_PACKAGE): - flash("You don't have permission to do that.", "error") + if "delete" in request.form: + if not package.checkPerm(current_user, Permission.DELETE_PACKAGE): + flash("You don't have permission to do that.", "error") + return redirect(package.getDetailsURL()) - package.soft_deleted = True + package.soft_deleted = True - url = url_for("user_profile_page", username=package.author.username) - triggerNotif(package.author, current_user, - "{} deleted".format(package.title), url) - db.session.commit() + url = url_for("user_profile_page", username=package.author.username) + triggerNotif(package.author, current_user, + "{} deleted".format(package.title), url) + db.session.commit() + + flash("Deleted package", "success") + + return redirect(url) + elif "unapprove" in request.form: + if not package.checkPerm(current_user, Permission.UNAPPROVE_PACKAGE): + flash("You don't have permission to do that.", "error") + return redirect(package.getDetailsURL()) - flash("Deleted package", "success") + package.approved = False + + triggerNotif(package.author, current_user, + "{} deleted".format(package.title), package.getDetailsURL()) + db.session.commit() + + flash("Unapproved package", "success") + + return redirect(package.getDetailsURL()) + else: + abort(400) - return redirect(url) from . import todo, screenshots, releases |
