parent
f760af8e31
commit
a639f1b237
1 changed files with 11 additions and 35 deletions
46
app/app.py
46
app/app.py
|
|
@ -126,48 +126,24 @@ def render_page(title, body_html):
|
||||||
</html>"""
|
</html>"""
|
||||||
|
|
||||||
|
|
||||||
@app.route("/", methods=["GET", "POST"])
|
@app.route("/")
|
||||||
@app.route("/app", methods=["GET", "POST"])
|
@app.route("/app")
|
||||||
@app.route("/app/", methods=["GET", "POST"])
|
@app.route("/app/")
|
||||||
def start():
|
def start():
|
||||||
if request.method == "POST": # Formular abgeschickt?
|
body = """
|
||||||
name = request.form["name"].strip()
|
<h1>Verlassenes Raumschiff</h1>
|
||||||
if name != "":
|
<p>Du bist der einzige Überlebende an Bord. Erkunde das Schiff und aktiviere das Notsignal.</p>
|
||||||
session["spieler"] = name # App merkt sich: das bist du
|
<div class="actions">
|
||||||
db = get_db()
|
<a class="btn" href="/app/raum/1">Mission starten</a>
|
||||||
db.execute(
|
</div>
|
||||||
"INSERT OR IGNORE INTO spielstand (spieler, raum_id) VALUES (?, 1)",
|
"""
|
||||||
(name,)
|
return render_page("Verlassenes Raumschiff", body)
|
||||||
)
|
|
||||||
db.commit()
|
|
||||||
db.close()
|
|
||||||
return redirect("/app/raum/1")
|
|
||||||
|
|
||||||
html = '<h1>Verlies</h1>'
|
|
||||||
if "spieler" in session:
|
|
||||||
db = get_db()
|
|
||||||
s = db.execute(
|
|
||||||
"SELECT raum_id FROM spielstand WHERE spieler=?",
|
|
||||||
(session["spieler"],)
|
|
||||||
).fetchone()
|
|
||||||
db.close()
|
|
||||||
if s:
|
|
||||||
html = html + '<p>Willkommen zurück, ' + html.escape(session["spieler"]) + '!</p>' \
|
|
||||||
+ '<a href="/app/raum/' + str(s["raum_id"]) + '" class="btn">Weiterspielen</a><hr>'
|
|
||||||
return html + '<form method="post">Dein Name: ' \
|
|
||||||
+ '<input name="name"> <button>Abenteuer starten</button></form>'
|
|
||||||
|
|
||||||
|
|
||||||
@app.route("/raum/<int:id>", methods=["GET", "POST"])
|
@app.route("/raum/<int:id>", methods=["GET", "POST"])
|
||||||
@app.route("/app/raum/<int:id>", methods=["GET", "POST"])
|
@app.route("/app/raum/<int:id>", methods=["GET", "POST"])
|
||||||
def raum(id):
|
def raum(id):
|
||||||
db = get_db()
|
db = get_db()
|
||||||
if "spieler" in session: # angemeldet?
|
|
||||||
db.execute(
|
|
||||||
"UPDATE spielstand SET raum_id=? WHERE spieler=?",
|
|
||||||
(id, session["spieler"])
|
|
||||||
)
|
|
||||||
db.commit()
|
|
||||||
r = db.execute("SELECT * FROM raeume WHERE id=?", (id,)).fetchone()
|
r = db.execute("SELECT * FROM raeume WHERE id=?", (id,)).fetchone()
|
||||||
if not r:
|
if not r:
|
||||||
db.close()
|
db.close()
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue