mirror of
				https://github.com/TitanEmbeds/Titan.git
				synced 2025-11-04 07:47:10 +01:00 
			
		
		
		
	Implement Cosmetics Configuration to the Administrators Panel
This commit is contained in:
		@@ -1,6 +1,6 @@
 | 
			
		||||
from flask import Blueprint, url_for, redirect, session, render_template
 | 
			
		||||
from flask import Blueprint, url_for, redirect, session, render_template, abort, request
 | 
			
		||||
from functools import wraps
 | 
			
		||||
from titanembeds.database import get_administrators_list
 | 
			
		||||
from titanembeds.database import db, get_administrators_list, Cosmetics
 | 
			
		||||
 | 
			
		||||
admin = Blueprint("admin", __name__)
 | 
			
		||||
 | 
			
		||||
@@ -20,3 +20,57 @@ def is_admin(f):
 | 
			
		||||
@is_admin
 | 
			
		||||
def index():
 | 
			
		||||
    return render_template("admin_index.html.j2")
 | 
			
		||||
 | 
			
		||||
@admin.route("/cosmetics", methods=["GET"])
 | 
			
		||||
@is_admin
 | 
			
		||||
def cosmetics():
 | 
			
		||||
    entries = db.session.query(Cosmetics).all()
 | 
			
		||||
    return render_template("admin_cosmetics.html.j2", cosmetics=entries)
 | 
			
		||||
 | 
			
		||||
@admin.route("/cosmetics", methods=["POST"])
 | 
			
		||||
@is_admin
 | 
			
		||||
def cosmetics_post():
 | 
			
		||||
    user_id = request.form.get("user_id", None)
 | 
			
		||||
    if not user_id:
 | 
			
		||||
        abort(400)
 | 
			
		||||
    css = request.form.get("css", None)
 | 
			
		||||
    entry = db.session.query(Cosmetics).filter(Cosmetics.user_id == user_id).first()
 | 
			
		||||
    if entry:
 | 
			
		||||
        abort(409)
 | 
			
		||||
    user = Cosmetics(user_id)
 | 
			
		||||
    if css:
 | 
			
		||||
        css = css.lower() == "true"
 | 
			
		||||
        user.css = css
 | 
			
		||||
    db.session.add(user)
 | 
			
		||||
    db.session.commit()
 | 
			
		||||
    return ('', 204)
 | 
			
		||||
 | 
			
		||||
@admin.route("/cosmetics", methods=["DELETE"])
 | 
			
		||||
@is_admin
 | 
			
		||||
def cosmetics_delete():
 | 
			
		||||
    user_id = request.form.get("user_id", None)
 | 
			
		||||
    if not user_id:
 | 
			
		||||
        abort(400)
 | 
			
		||||
    entry = db.session.query(Cosmetics).filter(Cosmetics.user_id == user_id).first()
 | 
			
		||||
    if not entry:
 | 
			
		||||
        abort(409)
 | 
			
		||||
    db.session.delete(entry)
 | 
			
		||||
    db.session.commit()
 | 
			
		||||
    return ('', 204)
 | 
			
		||||
 | 
			
		||||
@admin.route("/cosmetics", methods=["PATCH"])
 | 
			
		||||
@is_admin
 | 
			
		||||
def cosmetics_patch():
 | 
			
		||||
    user_id = request.form.get("user_id", None)
 | 
			
		||||
    if not user_id:
 | 
			
		||||
        abort(400)
 | 
			
		||||
    css = request.form.get("css", None)
 | 
			
		||||
    entry = db.session.query(Cosmetics).filter(Cosmetics.user_id == user_id).first()
 | 
			
		||||
    if not entry:
 | 
			
		||||
        abort(409)
 | 
			
		||||
    if css:
 | 
			
		||||
        css = css.lower() == "true"
 | 
			
		||||
        entry.css = css
 | 
			
		||||
    db.session.commit()
 | 
			
		||||
    return ('', 204)
 | 
			
		||||
    
 | 
			
		||||
		Reference in New Issue
	
	Block a user