Spaces:
Running
Running
File size: 1,351 Bytes
f5136c1 225a962 f5136c1 615c069 9d246a0 f5136c1 615c069 5f4045e f5136c1 615c069 f5136c1 615c069 f5136c1 9d246a0 9788dc4 9d246a0 129e8fb 9d246a0 e93e5d2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
from flask import Flask, request, send_file
import os, json, random
app = Flask(__name__)
users = []
data = {}
os.mkdir("./states")
@app.route("/")
def home():
return '''true'''
@app.route("/<userid>/get_states")
def get(userid):
global users
global data
if not userid in users:
users.append(userid)
data[userid] = {}
data[userid]["views"] = []
states = os.listdir("./states")[-50:]
states = sorted(states, key=lambda x: os.path.getmtime(os.path.join("./states", x)), reverse=True)
states_parse = []
views = data[userid]["views"]
for s in states:
if s in views:
pass
else:
states_parse.append({"id":s, "text":open(f"./states/{s}/text", "r").read()})
return json.dumps(states_parse)
@app.route("/states/<ide>/image.png")
def get_image(ide):
return send_file(f"./states/{ide}/image.png")
@app.route("/<userid>/view/<ide>")
def view(userid, ide):
global users
global data
data[userid]["views"].append(ide)
return "true"
@app.route("/add_state", methods=["POST"])
def add_state():
text = request.form["text"]
file = request.files["file"]
ide = random.randint(100000,999999)
os.mkdir(f"./states/{ide}")
open(f"./states/{ide}/text", "w").write(text)
file.save(f"./states/{ide}/image.png")
return "true" |