From 70b247c640b506e407bc7f3daa48a6662a893cad Mon Sep 17 00:00:00 2001 From: Tiia Soikkeli Date: Tue, 12 Dec 2023 02:51:56 +0200 Subject: Adding nick resetting functionality. --- routes/base.py | 12 +++++++++++- static/nick-lift.js | 7 +++++++ static/pages.json | 5 +++++ templates/base.html | 1 + templates/info.html | 7 ++++++- templates/nick_reset.html | 14 ++++++++++++++ 6 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 static/nick-lift.js create mode 100644 templates/nick_reset.html 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 %}
{{ nick }}
+ {% else %}
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. +

+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 %} +
{{ nick }}
+{% endif %} + +Korvaa nykyinen nimimerkki: + + + + + +
+
+Huomaa, että tämä on peruuttamatonta.
+Et voi saada vanhaa nimimerkkiäsi takaisin. \ No newline at end of file -- cgit v1.2.3