diff --git a/backend/src/app.py b/backend/src/app.py index 6d9b201..7f66284 100644 --- a/backend/src/app.py +++ b/backend/src/app.py @@ -119,6 +119,14 @@ def refresh(): return ret, 200 +@app.route('/api/username', methods=['GET']) +@flask_praetorian.auth_required +def get_username(): + username = flask_praetorian.current_user().username + ret = {'username': username} + return ret, 200 + + @app.route('/api/protected') @flask_praetorian.auth_required def protected(): @@ -133,11 +141,10 @@ def protected(): return {'message': f'protected endpoint (allowed user {flask_praetorian.current_user().username})'} -@app.route('/api/protected/rcv_pw', methods=['GET']) -# @flask_praetorian.auth_required +@app.route('/api/rcv_pw', methods=['GET']) def get_password(): pw = get_random_password() - ret = {'password': pw} + ret = {'random_password': pw} return ret, 200 diff --git a/frontend/src/components/BehaviorNormal.js b/frontend/src/components/BehaviorNormal.js index 9f64ef9..c427a02 100644 --- a/frontend/src/components/BehaviorNormal.js +++ b/frontend/src/components/BehaviorNormal.js @@ -1,8 +1,8 @@ import React from "react"; import "../App.css"; -import GeneratedPassword from "./GeneratedPassword" +import GeneratedPassword from "./GeneratedPassword"; -export default function BehaviorNormal() { +export default function BehaviorNormal(props) { return ( <>

@@ -10,7 +10,8 @@ export default function BehaviorNormal() { Passwort eingeben. Verhalten Sie sich einfach so, als ob Sie sich normalerweise anmelden.

- + {console.log("props", props)} + ); } diff --git a/frontend/src/components/BehaviorPhone.js b/frontend/src/components/BehaviorPhone.js index 9a6787e..92cc8f0 100644 --- a/frontend/src/components/BehaviorPhone.js +++ b/frontend/src/components/BehaviorPhone.js @@ -2,7 +2,7 @@ import React from "react"; import "../App.css"; import GeneratedPassword from "./GeneratedPassword"; -export default function BehaviorPhone() { +export default function BehaviorPhone(props) { return ( <>

@@ -11,7 +11,7 @@ export default function BehaviorPhone() { Sie sich vor, dass Sie gerade am Telefonieren sind. Verwenden Sie bitte kein Headset oder Ähnliches.

- + ); } diff --git a/frontend/src/components/BehaviorStanding.js b/frontend/src/components/BehaviorStanding.js index 479b59b..e3c1486 100644 --- a/frontend/src/components/BehaviorStanding.js +++ b/frontend/src/components/BehaviorStanding.js @@ -2,13 +2,13 @@ import React from "react"; import "../App.css"; import GeneratedPassword from "./GeneratedPassword" -export default function BehaviorStanding() { +export default function BehaviorStanding(props) { return ( <>

In dieser Situation geht es darum, dass Sie das Passwort im Stehen eingeben. Stehen Sie also vor den Computer und geben Sie den Benutzernamen und das Passwort wie gewohnt ein.

- + ); } diff --git a/frontend/src/components/BehaviorStudyEnd.js b/frontend/src/components/BehaviorStudyEnd.js new file mode 100644 index 0000000..432d206 --- /dev/null +++ b/frontend/src/components/BehaviorStudyEnd.js @@ -0,0 +1,15 @@ +import React from "react"; +import "../App.css"; + +export default function BehaviorStudyEnd() { + return ( + <> +

+ Vielen Dank, dass Sie an der Studie teilgenommen haben. Sie helfen mir mit Ihrer Teilnahme enorm für die Bachelorthesis weiter. +

+

+ Damit ich möglichst aussagekräftige Ergebnisse erhalte, ist es für mich wichtig, dass Sie mehrmals an der Studie teilnehmen. Daher bitte ich Sie, dass Sie zu einem anderen Zeitpunkt die Studie wiederholen. +

+ + ); +} diff --git a/frontend/src/components/GeneratedPassword.js b/frontend/src/components/GeneratedPassword.js index c963b5c..722fc2a 100644 --- a/frontend/src/components/GeneratedPassword.js +++ b/frontend/src/components/GeneratedPassword.js @@ -1,28 +1,20 @@ -import React, { useEffect, useState } from "react"; +import React from "react"; import "../App.css"; -export default function GeneratedPassword() { - const [genPassword, setGenPassword] = useState(""); +export default function GeneratedPassword(props) { + const genPassword = "PASSWORT_MANUELL" const handleOnCopyEvent = (e) => { e.preventDefault(); return false; }; - useEffect(() => { - fetch("/api/protected/rcv_pw", { - method: "get", - }).then((response) => { - response.json().then((resp) => { - setGenPassword(resp.password); - }); - }); - }, []); return ( <>

Das Passwort für diese Situation lautet:{" "} - {genPassword} + {console.log("component genpw, genpassword", props.genPassword)} + {props.genPassword}

); diff --git a/frontend/src/components/pages/Manual.js b/frontend/src/components/pages/Manual.js index 3cb29b0..fb9557e 100644 --- a/frontend/src/components/pages/Manual.js +++ b/frontend/src/components/pages/Manual.js @@ -28,21 +28,30 @@ export default function Manual() { zurückzusetzen. Nach der Registrierung landen Sie auf einer Umfrageseite. Füllen Sie die Fragen wahrheitsgemäss aus und klicken Sie danach auf "Umfrage abschicken". Nachdem die Umfrage durchgeführt - wurde, können Sie an der Studie teilnehmen, indem Sie auf den Button "Studie starten" klicken. Folgen Sie danach den Anweisungen gemäss der Studie. + wurde, können Sie an der Studie teilnehmen, indem Sie auf den Button + "Studie starten" klicken. Folgen Sie danach den Anweisungen gemäss der + Studie.

War schon einmal hier

- Wenn Sie schon einmal hier waren, gibt es zwei mögliche Zustände: -

    -
  • Sie sind noch eingeloggt
  • -
  • Sie sind nicht mehr eingeloggt
  • -
+ Wenn Sie schon einmal hier waren, gibt es zwei mögliche Zustände: +
    +
  • Sie sind noch eingeloggt
  • +
  • Sie sind nicht mehr eingeloggt
  • +

- Sofern Sie noch nicht eingeloggt sind, können Sie sich anmelden mit ihrem gewählten Benutzernamen und dem Passwort. Sie landen dann direkt auf der Seite, welche ich für meine Studie benötige. Führen Sie dort die Studie die Studie wie gewohnt durch und beenden Sie diese am Schluss der Studie mit dem Button "Studie beenden". + Sofern Sie noch nicht eingeloggt sind, können Sie sich anmelden mit + ihrem gewählten Benutzernamen und dem Passwort. Sie landen dann direkt + auf der Seite, welche ich für meine Studie benötige. Führen Sie dort + die Studie die Studie wie gewohnt durch und beenden Sie diese am + Schluss der Studie mit dem Button "Studie beenden".

- Wenn Sie bereits eingeloggt sind, dann landen Sie auf der Startseite. Sie finden in der Mitte einen Button mit der Überschrift "Zur Studie". Klicken Sie bitte auf diesen Button und führen Sie dann die Studie durch. + Wenn Sie bereits eingeloggt sind, dann landen Sie auf der Startseite. + Sie finden in der Mitte einen Button mit der Überschrift "Zur Studie". + Klicken Sie bitte auf diesen Button und führen Sie dann die Studie + durch.