modified: app.py
This commit is contained in:
82
app.py
82
app.py
@@ -322,6 +322,88 @@ def server_admin_dashboard(guild_id):
|
|||||||
flash("You do not have permission to access this server's admin dashboard.", "danger")
|
flash("You do not have permission to access this server's admin dashboard.", "danger")
|
||||||
return redirect(url_for("user_landing_page"))
|
return redirect(url_for("user_landing_page"))
|
||||||
|
|
||||||
|
@app.route("/ban_user/<int:guild_id>/<int:user_id>")
|
||||||
|
def ban_user(guild_id, user_id):
|
||||||
|
"""Banned einen Benutzer auf einem spezifischen Server."""
|
||||||
|
if is_server_admin(guild_id):
|
||||||
|
connection = get_db_connection()
|
||||||
|
cursor = connection.cursor()
|
||||||
|
|
||||||
|
try:
|
||||||
|
cursor.execute("UPDATE user_data SET ban = 1 WHERE user_id = %s AND guild_id = %s", (user_id, guild_id))
|
||||||
|
connection.commit()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error banning user: {e}")
|
||||||
|
connection.rollback()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
finally:
|
||||||
|
cursor.close()
|
||||||
|
connection.close()
|
||||||
|
return redirect(url_for("landing_page"))
|
||||||
|
|
||||||
|
@app.route("/update_points/<int:guild_id>/<int:user_id>", methods=["POST"])
|
||||||
|
def update_points(guild_id, user_id):
|
||||||
|
"""Aktualisiert die Punkte eines Benutzers auf einem spezifischen Server."""
|
||||||
|
if is_server_admin(guild_id):
|
||||||
|
points_change = int(request.form["points_change"])
|
||||||
|
connection = get_db_connection()
|
||||||
|
cursor = connection.cursor()
|
||||||
|
|
||||||
|
try:
|
||||||
|
cursor.execute("UPDATE user_data SET points = points + %s WHERE user_id = %s AND guild_id = %s", (points_change, user_id, guild_id))
|
||||||
|
connection.commit()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error updating points: {e}")
|
||||||
|
connection.rollback()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
finally:
|
||||||
|
cursor.close()
|
||||||
|
connection.close()
|
||||||
|
return redirect(url_for("landing_page"))
|
||||||
|
|
||||||
|
@app.route("/unban_user/<int:guild_id>/<int:user_id>")
|
||||||
|
def unban_user(guild_id, user_id):
|
||||||
|
"""Entbannt einen Benutzer auf einem spezifischen Server."""
|
||||||
|
if is_server_admin(guild_id):
|
||||||
|
connection = get_db_connection()
|
||||||
|
cursor = connection.cursor()
|
||||||
|
|
||||||
|
try:
|
||||||
|
cursor.execute("UPDATE user_data SET ban = 0 WHERE user_id = %s AND guild_id = %s", (user_id, guild_id))
|
||||||
|
connection.commit()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error unbanning user: {e}")
|
||||||
|
connection.rollback()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
finally:
|
||||||
|
cursor.close()
|
||||||
|
connection.close()
|
||||||
|
return redirect(url_for("landing_page"))
|
||||||
|
|
||||||
|
@app.route("/update_role/<int:guild_id>/<int:user_id>", methods=["POST"])
|
||||||
|
def update_role(guild_id, user_id):
|
||||||
|
"""Aktualisiert die Rolle (Berechtigung) eines Benutzers auf einem spezifischen Server."""
|
||||||
|
if is_server_admin(guild_id):
|
||||||
|
new_permission = request.form["permission"]
|
||||||
|
connection = get_db_connection()
|
||||||
|
cursor = connection.cursor()
|
||||||
|
|
||||||
|
try:
|
||||||
|
cursor.execute("UPDATE user_data SET permission = %s WHERE user_id = %s AND guild_id = %s", (new_permission, user_id, guild_id))
|
||||||
|
connection.commit()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error updating role: {e}")
|
||||||
|
connection.rollback()
|
||||||
|
return redirect(url_for("server_admin_dashboard", guild_id=guild_id))
|
||||||
|
finally:
|
||||||
|
cursor.close()
|
||||||
|
connection.close()
|
||||||
|
return redirect(url_for("landing_page"))
|
||||||
|
|
||||||
@app.route("/user_dashboard/<int:guild_id>")
|
@app.route("/user_dashboard/<int:guild_id>")
|
||||||
def user_dashboard(guild_id):
|
def user_dashboard(guild_id):
|
||||||
"""Serverbasiertes User-Dashboard"""
|
"""Serverbasiertes User-Dashboard"""
|
||||||
|
|||||||
Reference in New Issue
Block a user