diff --git a/myriad/manage.py b/myriad/manage.py index 3124ea7..43f542a 100644 --- a/myriad/manage.py +++ b/myriad/manage.py @@ -867,7 +867,6 @@ def export_system_full(): icons = db.execute("SELECT icon_location FROM icons").fetchall() blinkies = db.execute("SELECT blinkie_location FROM blinkies").fetchall() stamps = db.execute("SELECT stamp_location FROM stamps").fetchall() - misc = os.listdir(current_app.config["MISC_UPLOAD_FOLDER"]) data = {} data["members"] = [] @@ -905,8 +904,6 @@ def export_system_full(): for stamp in stamps: sname = stamp[0] zipf.write(current_app.config["STAMPS_UPLOAD_FOLDER"] + "/" + sname) - #for misc_file in misc: - #zipf.write(current_app.config["MISC_UPLOAD_FOLDER"] + "/" + misc_file) return send_file("static/tmp/"+zip_name, as_attachment=True) @@ -947,6 +944,12 @@ def assets(): else: file.save(os.path.join(current_app.config["MISC_UPLOAD_FOLDER"], fname+str(i)+"."+ftype)) + if "images_zip" in request.files: + file = request.files["images_zip"] + with zipfile.ZipFile(file, "r") as zipf: + for f in zipf.namelist(): + zipf.extract(f) + icons = db.execute("SELECT * FROM icons").fetchall() icon_storage = os.listdir(current_app.config["ICON_UPLOAD_FOLDER"]) @@ -1015,6 +1018,16 @@ def delete_misc(filename): os.remove(os.path.join(current_app.config["MISC_UPLOAD_FOLDER"], filename)) return redirect(url_for("manage.assets")) +@bp.route("/export/misc") +@login_required +def export_misc(): + misc = os.listdir(current_app.config["MISC_UPLOAD_FOLDER"]) + zip_name = "myriad_assets.zip" + zip_path = current_app.config["TMP_FOLDER"] + "/" + zip_name + with zipfile.ZipFile(zip_path, "w") as zipf: + for misc_file in misc: + zipf.write(current_app.config["MISC_UPLOAD_FOLDER"] + "/" + misc_file) + return send_file("static/tmp/"+zip_name, as_attachment=True) # GROUPS diff --git a/myriad/templates/manage/assets.html b/myriad/templates/manage/assets.html index 11e0b4a..ad16150 100644 --- a/myriad/templates/manage/assets.html +++ b/myriad/templates/manage/assets.html @@ -71,6 +71,16 @@ +
+ +Import assets from a zip folder
+ +