Compare commits
11 commits
8bb37bbc21
...
main
Author | SHA1 | Date | |
---|---|---|---|
3b83ebf3fb | |||
a626e32cbe | |||
4c01e68264 | |||
7026909c61 | |||
d01a70f925 | |||
41143c361b | |||
3f6b622088 | |||
d5c6aad834 | |||
fe5b563139 | |||
ae82024e94 | |||
c5b595ad40 |
10 changed files with 63 additions and 5 deletions
|
@ -4,6 +4,9 @@ WORKDIR /app
|
|||
|
||||
COPY requirements.txt .
|
||||
|
||||
RUN apt-get -y update
|
||||
RUN apt-get -y install sqlite3
|
||||
|
||||
RUN pip install -r requirements.txt
|
||||
|
||||
COPY /src .
|
||||
|
|
|
@ -6,6 +6,8 @@ RUN apt-get -y update && apt-get -y upgrade
|
|||
|
||||
COPY requirements.txt .
|
||||
|
||||
RUN apt-get -y install sqlite3
|
||||
|
||||
RUN pip install -r requirements.txt
|
||||
|
||||
COPY /src .
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
autopep8==1.5.7
|
||||
blinker==1.4
|
||||
click==7.1.2
|
||||
Deprecated==1.2.12
|
||||
|
@ -16,11 +17,13 @@ MarkupSafe==1.1.1
|
|||
passlib==1.7.4
|
||||
pendulum==2.1.2
|
||||
py-buzz==1.0.3
|
||||
pycodestyle==2.7.0
|
||||
PyJWT==2.1.0
|
||||
python-dateutil==2.8.1
|
||||
python-dotenv==0.17.1
|
||||
pytzdata==2020.1
|
||||
six==1.16.0
|
||||
SQLAlchemy==1.4.15
|
||||
toml==0.10.2
|
||||
Werkzeug==1.0.1
|
||||
wrapt==1.12.1
|
||||
|
|
|
@ -97,3 +97,13 @@ h1 {
|
|||
font-weight: bold;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.study-finished {
|
||||
background-color: var(--primary);
|
||||
padding: 0.5em;
|
||||
}
|
||||
|
||||
.study-finished > p {
|
||||
color: var(--error);
|
||||
font-size: 2em;
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@ import "../App.css";
|
|||
import { Button } from "./Button";
|
||||
import "./HeroSection.css";
|
||||
import { useAuth } from "../auth/AuthProvider";
|
||||
import StudyFinished from "./StudyFinished";
|
||||
|
||||
export default function HeroSection() {
|
||||
const [isLoggedIn] = useAuth();
|
||||
|
@ -10,6 +11,7 @@ export default function HeroSection() {
|
|||
return (
|
||||
<div className="hero-container">
|
||||
<h1>Herzlich Willkommen</h1>
|
||||
<StudyFinished />
|
||||
<div className="hero-btns">
|
||||
{isLoggedIn ? (
|
||||
<Button
|
||||
|
|
11
frontend/src/components/StudyFinished.jsx
Normal file
11
frontend/src/components/StudyFinished.jsx
Normal file
|
@ -0,0 +1,11 @@
|
|||
import React from "react";
|
||||
import "../App.css"
|
||||
|
||||
export default function StudyFinished() {
|
||||
return (
|
||||
<div className="study-finished">
|
||||
<p>Die Studie wurde beendet.</p>
|
||||
<p>Vielen Dank für die Teilnahme an der Studie</p>
|
||||
</div>
|
||||
);
|
||||
}
|
|
@ -73,7 +73,7 @@ export default function Lizenzen() {
|
|||
</a>
|
||||
</li>
|
||||
<li>
|
||||
Behametrics Serverimplementierung (MIT-Lizenz)
|
||||
Behametrics Serverimplementierung (MIT-Lizenz):{" "}
|
||||
<a href="https://gitlab.com/behametrics/server">
|
||||
https://gitlab.com/behametrics/server
|
||||
</a>
|
||||
|
|
|
@ -71,6 +71,25 @@ export default function Privacy() {
|
|||
Allerdings kann der Benutzername, welchen Sie bei der Anmeldung
|
||||
angegeben haben, verwendet werden.
|
||||
</p>
|
||||
<h2>Weitergabe der Daten</h2>
|
||||
<p>
|
||||
Grundsätzlich werden die Daten nicht an Dritte weitergegeben. Folgende
|
||||
Ausnahmen gibt es:
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
Der Fernfachhochschule Schweiz werden die Daten falls notwendig
|
||||
weitergegeben.
|
||||
</li>
|
||||
<li>
|
||||
Sofern es eine gesetzliche Grundlage gibt, werden die Daten auch
|
||||
weitergegeben.
|
||||
</li>
|
||||
<li>
|
||||
Wie bereits oben erwähnt, läuft die Webanwendung auf einem
|
||||
virtuellen Server bei <a href="https://netcup.de">netcup</a>. Hierbei gelten die Datenschutzbestimmungen von netcup, welche <a href="https://www.netcup.de/kontakt/datenschutzerklaerung.php">hier</a> eingesehen werden können.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<Footer />
|
||||
</>
|
||||
|
|
|
@ -12,6 +12,7 @@ import BehaviorPhone from "../BehaviorPhone";
|
|||
import BehaviorStanding from "../BehaviorStanding";
|
||||
import BehaviorStudyEnd from "../BehaviorStudyEnd";
|
||||
import { authFetch } from "../../auth/AuthProvider";
|
||||
import StudyFinished from "../StudyFinished";
|
||||
|
||||
export default function Study() {
|
||||
const _logger = useRef(0);
|
||||
|
@ -33,7 +34,6 @@ export default function Study() {
|
|||
useEffect(() => {
|
||||
_logger.current = new Logger({
|
||||
inputs: ["keyboard", "wheel", "cursor", "custom"],
|
||||
apiUrl: "https://behavior.marcocamenzind.ch",
|
||||
});
|
||||
_logger.current.init();
|
||||
authFetch("/api/username", {
|
||||
|
@ -91,7 +91,6 @@ export default function Study() {
|
|||
method: "get",
|
||||
}).then((response) => {
|
||||
response.json().then((resp) => {
|
||||
console.log(resp.random_password);
|
||||
setGenPassword(resp.random_password);
|
||||
});
|
||||
});
|
||||
|
@ -271,6 +270,7 @@ export default function Study() {
|
|||
<>
|
||||
<div className="sitePage">
|
||||
<h1>Studie</h1>
|
||||
<StudyFinished />
|
||||
{state === STATES.START ? study_start : null}
|
||||
{state === STATES.NORMAL ? study_normal : null}
|
||||
{state === STATES.PHONE ? study_phone : null}
|
||||
|
|
12
requests.sh
12
requests.sh
|
@ -2,7 +2,7 @@
|
|||
|
||||
ACTION=$1
|
||||
VALUE=$2
|
||||
ACTIONS=(login register rcvpw username data csv)
|
||||
ACTIONS=(login register rcvpw username data csv prod_data prod_csv)
|
||||
|
||||
print_help(){
|
||||
echo "Usage: $0 ACTION [TOKEN|INPUT_TYPE]"
|
||||
|
@ -41,9 +41,17 @@ case $ACTION in
|
|||
curl localhost:5000/data
|
||||
;;
|
||||
"${ACTIONS[5]}") # get all data from behametricsserver
|
||||
echo "get data action"
|
||||
echo "get csv from input action"
|
||||
curl localhost:5000/data/csv/"${VALUE}"
|
||||
;;
|
||||
"${ACTIONS[6]}") # get all data from behametricsserver
|
||||
echo "get prod data action"
|
||||
curl behavior.marcocamenzind.ch:5000/data
|
||||
;;
|
||||
"${ACTIONS[7]}") # get all data from behametricsserver
|
||||
echo "get prod csv from input action"
|
||||
curl behavior.marcocamenzind.ch:5000/data/csv/"${VALUE}"
|
||||
;;
|
||||
*)
|
||||
echo "Error: Action not available"
|
||||
echo
|
||||
|
|
Loading…
Reference in a new issue