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>"""
|
||||
|
||||
|
||||
@app.route("/", methods=["GET", "POST"])
|
||||
@app.route("/app", methods=["GET", "POST"])
|
||||
@app.route("/app/", methods=["GET", "POST"])
|
||||
@app.route("/")
|
||||
@app.route("/app")
|
||||
@app.route("/app/")
|
||||
def start():
|
||||
if request.method == "POST": # Formular abgeschickt?
|
||||
name = request.form["name"].strip()
|
||||
if name != "":
|
||||
session["spieler"] = name # App merkt sich: das bist du
|
||||
db = get_db()
|
||||
db.execute(
|
||||
"INSERT OR IGNORE INTO spielstand (spieler, raum_id) VALUES (?, 1)",
|
||||
(name,)
|
||||
)
|
||||
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>'
|
||||
body = """
|
||||
<h1>Verlassenes Raumschiff</h1>
|
||||
<p>Du bist der einzige Überlebende an Bord. Erkunde das Schiff und aktiviere das Notsignal.</p>
|
||||
<div class="actions">
|
||||
<a class="btn" href="/app/raum/1">Mission starten</a>
|
||||
</div>
|
||||
"""
|
||||
return render_page("Verlassenes Raumschiff", body)
|
||||
|
||||
|
||||
@app.route("/raum/<int:id>", methods=["GET", "POST"])
|
||||
@app.route("/app/raum/<int:id>", methods=["GET", "POST"])
|
||||
def raum(id):
|
||||
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()
|
||||
if not r:
|
||||
db.close()
|
||||
|
|
|
|||
Loading…
Reference in a new issue