aboutsummaryrefslogtreecommitdiff
path: root/app/views
diff options
context:
space:
mode:
authorrubenwardy <rw@rubenwardy.com>2018-12-25 15:13:30 +0000
committerrubenwardy <rw@rubenwardy.com>2018-12-25 15:13:30 +0000
commit1eaed55bc6d0942f8428a9c015b00503e33aa0cd (patch)
tree97478d8e5e619697c2bea7776dad52e635621233 /app/views
parentc2265313d8a80beed9b2edb75095e1e6d7277e1d (diff)
downloadcheatdb-1eaed55bc6d0942f8428a9c015b00503e33aa0cd.tar.xz
Add ability to unapprove package from GUI
Diffstat (limited to 'app/views')
-rw-r--r--app/views/packages/__init__.py43
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