diff options
-rw-r--r-- | routes/base.py | 12 | ||||
-rw-r--r-- | static/nick-lift.js | 7 | ||||
-rw-r--r-- | static/pages.json | 5 | ||||
-rw-r--r-- | templates/base.html | 1 | ||||
-rw-r--r-- | templates/info.html | 7 | ||||
-rw-r--r-- | templates/nick_reset.html | 14 |
6 files changed, 44 insertions, 2 deletions
diff --git a/routes/base.py b/routes/base.py index 52db258..1af8cf7 100644 --- a/routes/base.py +++ b/routes/base.py @@ -23,12 +23,22 @@ def info(): alert=get_alert() ) +@app.route("/pages/nick_reset.html") +def nick_reset(): + if "id" in session: + return render_template( + "nick_reset.html", + caller="info", + nick=get_nick() + ) + return redirect("/") + @app.route("/set/nick",methods=["POST"]) def new_nick(): next = "/#"+request.form["caller"] if "caller" in request.form else "/" if csrf_check(): return redirect(next) - if "id" in session.keys(): + if "id" in session.keys() and "reset" not in request.form: session["alert"]="Sinulla on jo nimimerkki. Käytä sitä." return redirect(next) if "nick" not in request.form or request.form["nick"]=="": diff --git a/static/nick-lift.js b/static/nick-lift.js new file mode 100644 index 0000000..343608a --- /dev/null +++ b/static/nick-lift.js @@ -0,0 +1,7 @@ +var nickTimeout +Array.from(document.getElementsByClassName('kysNick')).forEach( (a) => { + a.addEventListener('mousedown', (event) => { nickTimeout = setTimeout( + () => { document.location = '/#nick_reset'}, 5000) }) + a.addEventListener('mouseup', (event) => { clearTimeout (nickTimeout) }) + a.addEventListener('mouseout', (event) => { clearTimeout (nickTimeout) }) +})
\ No newline at end of file diff --git a/static/pages.json b/static/pages.json index 8d0d376..d9374c3 100644 --- a/static/pages.json +++ b/static/pages.json @@ -45,6 +45,11 @@ "pageTitle": "Luodaanko uusi kyselmä?", "URL": "pages/quiz.html", "hidden": "yes" + }, + "nick_reset": { + "pageTitle": "Resetoidaanko nimimerkki?", + "URL": "pages/nick_reset.html", + "hidden": "yes" } } } diff --git a/templates/base.html b/templates/base.html index e47e643..5609fe1 100644 --- a/templates/base.html +++ b/templates/base.html @@ -1,5 +1,6 @@ {% if nick %} <div class="kysNick">{{ nick }}</div> + <script src="nick-lift.js"></script> {% else %} <form action="/set/nick" method="POST"> Anna itsellesi nimimerkki ensin: diff --git a/templates/info.html b/templates/info.html index 30e84e2..2a8323a 100644 --- a/templates/info.html +++ b/templates/info.html @@ -8,4 +8,9 @@ ja tekemällä uuden kyselmän. Tämän jälkeen vain lisäät niin monta kysymy vastausvaihtoehtoineen kuin haluat ja lopuksi painat valmis, jonka jälkeen muutkin pääsee vastaamaan kyselmään koodilla. Tarkastelussa voit valita mitkä tahansa kaksi vastaaja ja tutkia vastausten samankaltaisuutta ja -kaiken huipuksi vastauksista lasketaan yhtäläisyys prosentti. +kaiken huipuksi vastauksista lasketaan yhtäläisyys prosentti. Parhaat ja +huonoimmat yhtäläisyydet löytyvät nappeina kysymysten alta. Voit myös +halutessasi vaihtaa nimimerkkiä painamalla nykyistä nimimerkkiä 5 sekunnin +ajan. Tämän jälkeen sinut ohjataan nimemerkinvaihtosivulle. +<br><br> +Viihtyisiä hetkiä kyselmien parissa. diff --git a/templates/nick_reset.html b/templates/nick_reset.html new file mode 100644 index 0000000..f247ae7 --- /dev/null +++ b/templates/nick_reset.html @@ -0,0 +1,14 @@ +{% if nick %} +<div class="kysNick">{{ nick }}</div> +{% endif %} +<form action="/set/nick" method="POST"> +Korvaa nykyinen nimimerkki: +<input type="text" name="nick"> +<input type="text" name="caller" value="{{ caller }}" hidden="true"> +<input type="text" name="csrf" value="{{ session.csrf }}" hidden="true"> +<input type="text" name="reset" value="1" hidden="true"> +<input type="submit" value="Lähetä"> +</form> +<hr> +Huomaa, että tämä on peruuttamatonta.<br> +Et voi saada vanhaa nimimerkkiäsi takaisin.
\ No newline at end of file |