gcsi-tamayo / main.py
TechDev's picture
Upload main.py
9788dc4 verified
raw
history blame
1.35 kB
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"