upload icons

also pick an icon to be main icon from edit page
This commit is contained in:
cube
2026-03-17 03:23:14 +00:00
parent d196089d0e
commit f7cba449ef
6 changed files with 48 additions and 16 deletions

View File

@@ -1,8 +1,8 @@
from flask import (
Blueprint, flash, g, redirect, render_template, request, session, url_for
Blueprint, flash, g, redirect, render_template, request, session, url_for, current_app
)
from werkzeug.utils import secure_filename
import os
import os, uuid
from myriad.auth import login_required
from myriad.db import get_db
@@ -50,11 +50,25 @@ def edit(mid):
subtitle = request.form['subtitle']
db.execute("UPDATE member SET member_name=(?), bio=(?), subtitle=(?) WHERE id=(?)",(name, bio, subtitle, mid))
db.commit()
elif "icon" in request.form:
file = request.form["icon"]
filename = secure_filename(file.filename)
file.save("/static/uploads/" + filename)
return redirect(url_for("home.full_list"))
if "file" in request.files:
file = request.files["file"]
filename = str(uuid.uuid4()) + "." + file.filename.split(".")[1]
file.save(os.path.join(current_app.config["UPLOAD_FOLDER"], filename))
db.execute("INSERT INTO icons (member_id, icon_location) VALUES (?, ?)", (mid, filename),)
db.commit()
return render_template("manage/edit.html", member=member, icons=icons)
member = db.execute("SELECT * FROM member WHERE id=(?)",(mid,)).fetchone()
icons = db.execute("SELECT * FROM icons WHERE member_id=(?)",(mid,)).fetchall()
return render_template("manage/edit.html", member=member, icons=icons)
return render_template("manage/edit.html", member=member, icons=icons)
@bp.route("/set_main_icon/<mid>/<icon_id>")
@login_required
def set_main_icon(mid, icon_id):
db = get_db()
db.execute("UPDATE member SET main_icon=(?) WHERE id=(?)",(icon_id, mid))
db.commit()
return redirect(url_for("manage.edit", mid=mid))