Compare commits

..

22 Commits

Author SHA1 Message Date
Jan
807d104d06 Adding disclaimer as seperate site 2024-11-19 15:58:23 +01:00
Jan
053aa4bd5a Added new disclaimer Video 2024-11-19 14:22:55 +01:00
Jan
40e24501f6 Removed the hopefuly last placeholdervideo 2024-11-13 11:16:41 +01:00
Jan
522d10f422 Small file naming typo fixed 2024-11-13 11:05:52 +01:00
Jan
789d49a2c9 Fixed error in p3info text 2024-11-13 11:02:41 +01:00
Jan
86c5f3fdea Final changes (deploy without exp videos) 2024-11-12 16:17:07 +01:00
Jan
26c28cd0da 0044 as learning phase video now 2024-10-23 15:51:42 +02:00
Jan
e1b814da4f new Videos and task 3 Text corrected 2024-10-23 14:20:07 +02:00
Jan
edcd32db47 small improvement to video management page 2024-10-13 16:13:03 +02:00
Jan
e253586467 video management page now exists 2024-10-13 16:09:42 +02:00
Jan
728c282a3d try to remove database via git 2024-10-13 15:42:25 +02:00
Jan
23e6ee55c6 multiple choice bug fixed 2024-10-13 15:29:30 +02:00
Jan
52db4cc0fb fixed small bug 2024-10-13 15:22:18 +02:00
Jan
2702ce3c3c password is checked via hash now 2024-10-13 15:18:14 +02:00
Jan
ab27d70946 More fixes, those are the final texts !!! 2024-10-07 14:05:43 +02:00
Jan
73fc70917c Small fixes 2024-10-07 12:16:42 +02:00
Jan
8898f7dfb8 root page now redirects to start, /all_links exists 2024-10-07 10:29:54 +02:00
Jan
aa2fa44207 added impressum page 2024-10-07 10:17:53 +02:00
Jan
15ae63d48b Feedback von Ella 2024-10-02 15:54:24 +02:00
Jan
0d92d281e1 New Email: avatarstudy@proton.me as contact 2024-10-02 13:19:12 +02:00
Jan
38e9c9f7ed Can now export the db 2024-10-02 13:03:32 +02:00
Jan
3ca3307528 gitignore the exports 2024-10-02 12:54:15 +02:00
48 changed files with 1619 additions and 194 deletions

1
.gitignore vendored
View File

@@ -7,6 +7,7 @@ instance/
uploads/
zip_exports/
exports/
.pytest_cache/
.coverage

View File

@@ -15,9 +15,9 @@ from sqlalchemy.orm import DeclarativeBase
import os
import csv
from zipfile import ZipFile
import hashlib
random_order = True
# activate environment: cd C:\Users\Jan\Google Drive\Master Stuff\Code\SLAEForms Testing\.venv\Scripts\
# activate environment: cd C:\...\...\....\...\Code\SLAEForms Testing\.venv\Scripts\
# then this: activate
#SETUP--------------------------------------------------
@@ -41,7 +41,7 @@ app.secret_key = b"29fe9e8edd407c5491d4f1c05632d9fa33e26ed8734a3f5e080ebac3772a5
UPLOAD_FOLDER = 'uploads'
EXPORT_FOLDER = 'exports'
PASSWORD = '#1ACGmsjd'
PASSWORD = 'd5aff9fc14d1f20f4ccddaa8b4f2c1765228b74ed0b1dfb868bf1064e0d655e2'
CONFIGFILE = 'userstudy1.json'
# CONFIGFILE = 'test.json'
# CONFIGFILE = 'default.json'
@@ -191,9 +191,10 @@ def startpage():
case "single_video":
order = list(config[name]["stimuli"]["list"]) # order = list of simuli keys
print("order: ",order)
if config[name]["stimuli"]["order"] == "random":
random.shuffle(order) #in random order
session["block_order"][name] = order
if "order" in config[name]["stimuli"]:
if config[name]["stimuli"]["order"] == "random":
random.shuffle(order) #in random order
session["block_order"][name] = order
case "double_video":
order = [] # order = list of stimuli keys
list_1 = list(config[name]["stimuli"]["list_1"])
@@ -203,7 +204,7 @@ def startpage():
print("order: ",order)
#TODO random is not implemented here
session["block_order"][name] = order
case "empty":
case "empty":
order = list(config[name]["stimuli"]["list"]) # order = list of simuli keys
print("order: ",order)
session["block_order"][name] = order
@@ -249,6 +250,10 @@ def endpage():
def datenschutz():
return render_template("datenschutz.html")
@app.route("/impressum")
def impressum():
return render_template("impressum.html")
@app.route("/studytest")
def studytest():
return render_template("studytest.html")
@@ -515,6 +520,17 @@ def export_all_tables():
zipdir('exports/', zipf)
return send_file("zip_exports/all_tables.zip", as_attachment=False, download_name="all_tables.zip")
# export Database
@app.route("/export_db")
def export_db():
if not session.get("logged_in"):
return redirect("/login")
with ZipFile('zip_exports/db.zip', 'w') as zipf: #no compression, need to add zipfile.ZIP_DEFLATED for compression
zipdir('instance/', zipf)
return send_file("zip_exports/db.zip", as_attachment=False, download_name="db.zip")
# export CSV
@app.route("/export_all_videos")
@@ -525,7 +541,7 @@ def export_all_videos():
with ZipFile('zip_exports/all_videos.zip', 'w') as zipf: #no compression, need to add zipfile.ZIP_DEFLATED for compression
zipdir('uploads/', zipf)
return send_file("zip_exports/all_videos.zip", as_attachment=False, download_name="all_tables.zip")
return send_file("zip_exports/all_videos.zip", as_attachment=False, download_name="all_videos.zip")
def create_csv(table, filename):
@@ -600,6 +616,39 @@ def show_tables():
tables = meta.tables
return render_template('show_tables.html', tables=tables)
@app.route("/manage_uploads")
def manage_uploads():
if not session.get("logged_in"):
return redirect("/login")
videodir = "uploads/"
videolist = os.listdir(videodir)
num_videos = len(videolist)
return render_template("manage_uploads.html", videolist=videolist, num_videos=num_videos)
@app.route("/deleteuploads", methods=["POST"])
def deleteuploads():
if not session.get("logged_in"):
return redirect("/login")
print("deleting all videos")
videodir = "uploads/"
for video in os.listdir(videodir):
os.remove(os.path.join(videodir, video))
print("videos deleted")
return redirect("/all_links")
@app.route("/task3")
def task3():
return render_template("task3.html")
# Root page -----------------------------
@@ -607,9 +656,10 @@ def show_tables():
def login():
if request.method == "POST":
if request.form["password"] == PASSWORD:
pwhash = hashlib.sha256(request.form["password"].encode('utf-8')).hexdigest()
if pwhash == PASSWORD:
session["logged_in"] = True
return redirect("/")
return redirect(url_for("all_links"))
return render_template("login.html")
@@ -625,6 +675,10 @@ def has_no_empty_params(rule):
return len(defaults) >= len(arguments)
@app.route("/")
def root():
return redirect("/start")
@app.route("/all_links")
def all_links():
links = []
for rule in app.url_map.iter_rules():

View File

@@ -295,7 +295,7 @@
"question1": {
"type": "textinput",
"name": "formfeedback",
"text": "Das war der Prototyp für dieses Studientool. Über Feedback würde ich mich freuen. Entweder hier oder per Email unter: jan.dickmann@web.de",
"text": "Das war der Prototyp für dieses Studientool. Über Feedback würde ich mich freuen. Entweder hier oder per Email unter: avatarstudy@proton.me",
"required": "false",
"size": "1000"
}

View File

@@ -1,3 +1,7 @@
id,user_id,date_created,stimulus_name,alter,geschlecht,hoerstatus,bevorzugte_kommunikation,gebärdenzeitraum,gebärdensprachkompetenz
33b2f49f-ccc8-48c5-b7f6-fa4bb9aa1bf3,60c9c65b-b6b7-4510-8fb1-e9f220a7c46e,2024-06-27 17:43:45.381824,empty_stimulus,1,Männlich,Hörend,Gesprochene Sprache,1.0,1
70afa75b-d522-4f26-b8f5-1a22ef425ad5,253b881d-cc08-4835-bf03-4d0ffdd8eddd,2024-06-27 17:44:43.877367,empty_stimulus,1,Weiblich,Schwerhörig,Text,1.0,1
id,user_id,date_created,stimulus_name,alter,geschlecht,bildung,hoerstatus,wann_gehörlos,wann_gebärdensprache,eltern_gehörlos,zuhause_sl,arbeit_sl,avatar_erfahrung
e0b08915-2975-42ad-8a7c-6c057d914120,1cbab591-9fe8-4e2b-adce-e40ef14ed49d,2024-09-19 15:16:25.413235,empty_stimulus,23,Männlich,Bachelor,Hörend,-1,23,keiner,zuhause-Deutsch,"arbeit-Deutsch,arbeit-Sonstige",Ja
6b1d95ed-646d-42dc-b386-d3aacc41d6ed,e8797746-73a1-4b0a-b644-c084d155b3d6,2024-09-19 16:21:20.372629,empty_stimulus,2,Männlich,Hauptschule,GehörlosCI,2,3,beide,"zuhause-Deutsch,zuhause-Gebärdensprache","arbeit-Deutsch,arbeit-Gebärdensprache,arbeit-Sonstige",Ja
0103472b-943b-4728-9b50-dc43a886facf,9eb6c08d-1eab-44c3-87a6-8a0a6848adc6,2024-09-21 11:40:35.811739,empty_stimulus,2,Männlich,Abitur,Schwerhörig,2,2,einer,zuhause-Deutsch,arbeit-Sonstige,Nein
88e4cb27-0d97-466d-a164-55b657d648ef,dd296f2b-a497-4957-899a-9393b25ab86f,2024-09-23 14:52:29.344441,empty_stimulus,2,Divers,Realschule,GehörlosCI,2,2,einer,"zuhause-Deutsch,zuhause-Gebärdensprache",arbeit-Deutsch,Ja
85e2cc7c-25ba-473b-a3d1-26fac4ca9629,6ece9745-96d7-40e1-a8b1-598608723f3a,2024-10-02 11:51:05.384542,empty_stimulus,67,Männlich,Master,Schwerhörig,66,66,keiner,"zuhause-Deutsch,zuhause-Gebärdensprache",arbeit-Deutsch,Nein
54f00de7-4351-47f1-a798-1c5326b3d8da,1e63ca71-bb2e-4d19-a69e-b7e8dccaba35,2024-10-02 11:56:41.492195,empty_stimulus,27,Männlich,Bachelor,Hörend,-1,23,keiner,zuhause-Deutsch,"arbeit-Deutsch,arbeit-Sonstige",Ja
1 id user_id date_created stimulus_name alter geschlecht bildung bevorzugte_kommunikation hoerstatus gebärdenzeitraum wann_gehörlos gebärdensprachkompetenz wann_gebärdensprache eltern_gehörlos zuhause_sl arbeit_sl avatar_erfahrung
2 33b2f49f-ccc8-48c5-b7f6-fa4bb9aa1bf3 e0b08915-2975-42ad-8a7c-6c057d914120 60c9c65b-b6b7-4510-8fb1-e9f220a7c46e 1cbab591-9fe8-4e2b-adce-e40ef14ed49d 2024-06-27 17:43:45.381824 2024-09-19 15:16:25.413235 empty_stimulus 1 23 Männlich Bachelor Gesprochene Sprache Hörend 1.0 -1 1 23 keiner zuhause-Deutsch arbeit-Deutsch,arbeit-Sonstige Ja
3 70afa75b-d522-4f26-b8f5-1a22ef425ad5 6b1d95ed-646d-42dc-b386-d3aacc41d6ed 253b881d-cc08-4835-bf03-4d0ffdd8eddd e8797746-73a1-4b0a-b644-c084d155b3d6 2024-06-27 17:44:43.877367 2024-09-19 16:21:20.372629 empty_stimulus 1 2 Weiblich Männlich Hauptschule Text Schwerhörig GehörlosCI 1.0 2 1 3 beide zuhause-Deutsch,zuhause-Gebärdensprache arbeit-Deutsch,arbeit-Gebärdensprache,arbeit-Sonstige Ja
4 0103472b-943b-4728-9b50-dc43a886facf 9eb6c08d-1eab-44c3-87a6-8a0a6848adc6 2024-09-21 11:40:35.811739 empty_stimulus 2 Männlich Abitur Schwerhörig 2 2 einer zuhause-Deutsch arbeit-Sonstige Nein
5 88e4cb27-0d97-466d-a164-55b657d648ef dd296f2b-a497-4957-899a-9393b25ab86f 2024-09-23 14:52:29.344441 empty_stimulus 2 Divers Realschule GehörlosCI 2 2 einer zuhause-Deutsch,zuhause-Gebärdensprache arbeit-Deutsch Ja
6 85e2cc7c-25ba-473b-a3d1-26fac4ca9629 6ece9745-96d7-40e1-a8b1-598608723f3a 2024-10-02 11:51:05.384542 empty_stimulus 67 Männlich Master Schwerhörig 66 66 keiner zuhause-Deutsch,zuhause-Gebärdensprache arbeit-Deutsch Nein
7 54f00de7-4351-47f1-a798-1c5326b3d8da 1e63ca71-bb2e-4d19-a69e-b7e8dccaba35 2024-10-02 11:56:41.492195 empty_stimulus 27 Männlich Bachelor Hörend -1 23 keiner zuhause-Deutsch arbeit-Deutsch,arbeit-Sonstige Ja

View File

@@ -1,4 +1,7 @@
user_id,device_id,question_order,date_created,form_completed
60c9c65b-b6b7-4510-8fb1-e9f220a7c46e,f9a2bd4b-e1ef-43a2-a358-a74feea0076d,"{'Block 0': [('video_1', 'video_2'), ('video_2', 'video_1')], 'Block 1': ['empty_stimulus'], 'Block 2': ['video_2', 'video_1']}",2024-06-27 17:43:23.511495,False
253b881d-cc08-4835-bf03-4d0ffdd8eddd,f9a2bd4b-e1ef-43a2-a358-a74feea0076d,"{'Block 0': [('video_1', 'video_2'), ('video_2', 'video_1')], 'Block 1': ['empty_stimulus'], 'Block 2': ['video_1', 'video_2']}",2024-06-27 17:44:22.713605,True
89ad42ff-3310-4548-b179-7df9c138e794,f9a2bd4b-e1ef-43a2-a358-a74feea0076d,"{'Block 0': [('video_1', 'video_2'), ('video_2', 'video_1')], 'Block 1': ['empty_stimulus'], 'Block 2': ['video_2', 'video_1']}",2024-06-27 17:56:57.288776,False
user_id,device_id,question_order,date_created,form_completed
1cbab591-9fe8-4e2b-adce-e40ef14ed49d,71f05b18-36d1-45bc-8b7a-418d05a78c3b,"{'Block 1': ['empty_stimulus'], 'Block 2': ['video_7', 'video_15', 'video_5', 'video_9', 'video_3', 'video_8', 'video_11', 'video_6', 'video_4', 'video_12', 'video_1', 'video_14', 'video_10', 'video_13', 'video_2'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']}",2024-09-19 15:15:17.910737,True
e8797746-73a1-4b0a-b644-c084d155b3d6,71f05b18-36d1-45bc-8b7a-418d05a78c3b,"{'Block 1': ['empty_stimulus'], 'Block 2': ['video_10', 'video_11', 'video_14', 'video_5', 'video_1', 'video_2', 'video_12', 'video_7', 'video_3', 'video_13', 'video_8', 'video_6', 'video_4', 'video_15', 'video_9'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']}",2024-09-19 16:21:05.738180,False
9eb6c08d-1eab-44c3-87a6-8a0a6848adc6,ccc2054d-295e-47f5-b277-2282109c4ed1,"{'Block 1': ['empty_stimulus'], 'Block 2': ['video_9', 'video_2', 'video_4', 'video_6', 'video_13', 'video_14', 'video_15', 'video_11', 'video_10', 'video_7', 'video_5', 'video_8', 'video_12', 'video_1', 'video_3'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']}",2024-09-21 11:40:21.272823,False
dd296f2b-a497-4957-899a-9393b25ab86f,d94cc6b1-958c-43e4-9789-9e0c369ba29a,"{'Block 1': ['empty_stimulus'], 'Block 2': ['video_2', 'video_11', 'video_9', 'video_6', 'video_4', 'video_5', 'video_3', 'video_8', 'video_10', 'video_7', 'video_15', 'video_14', 'video_1', 'video_13', 'video_12'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']}",2024-09-23 14:52:02.034386,False
6ece9745-96d7-40e1-a8b1-598608723f3a,588e94df-870d-4c61-b3c8-098edf01e988,"{'Block 1': ['empty_stimulus'], 'Block 2': ['video_14', 'video_8', 'video_5', 'video_6', 'video_1', 'video_7', 'video_4', 'video_2', 'video_15', 'video_9', 'video_11', 'video_13', 'video_10', 'video_3', 'video_12'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1'], 'Block 5': ['video_1']}",2024-10-02 11:49:11.652504,False
1e63ca71-bb2e-4d19-a69e-b7e8dccaba35,8a1063c3-7130-4ab9-9d88-bd6bf470e685,"{'Block 1': ['empty_stimulus'], 'Block 2': ['video_13', 'video_2', 'video_12', 'video_8', 'video_3', 'video_7', 'video_14', 'video_1', 'video_11', 'video_9', 'video_15', 'video_6', 'video_4', 'video_5', 'video_10'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1'], 'Block 5': ['video_1']}",2024-10-02 11:55:43.185190,True
1 user_id device_id question_order date_created form_completed
2 60c9c65b-b6b7-4510-8fb1-e9f220a7c46e 1cbab591-9fe8-4e2b-adce-e40ef14ed49d f9a2bd4b-e1ef-43a2-a358-a74feea0076d 71f05b18-36d1-45bc-8b7a-418d05a78c3b {'Block 0': [('video_1', 'video_2'), ('video_2', 'video_1')], 'Block 1': ['empty_stimulus'], 'Block 2': ['video_2', 'video_1']} {'Block 1': ['empty_stimulus'], 'Block 2': ['video_7', 'video_15', 'video_5', 'video_9', 'video_3', 'video_8', 'video_11', 'video_6', 'video_4', 'video_12', 'video_1', 'video_14', 'video_10', 'video_13', 'video_2'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']} 2024-06-27 17:43:23.511495 2024-09-19 15:15:17.910737 False True
3 253b881d-cc08-4835-bf03-4d0ffdd8eddd e8797746-73a1-4b0a-b644-c084d155b3d6 f9a2bd4b-e1ef-43a2-a358-a74feea0076d 71f05b18-36d1-45bc-8b7a-418d05a78c3b {'Block 0': [('video_1', 'video_2'), ('video_2', 'video_1')], 'Block 1': ['empty_stimulus'], 'Block 2': ['video_1', 'video_2']} {'Block 1': ['empty_stimulus'], 'Block 2': ['video_10', 'video_11', 'video_14', 'video_5', 'video_1', 'video_2', 'video_12', 'video_7', 'video_3', 'video_13', 'video_8', 'video_6', 'video_4', 'video_15', 'video_9'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']} 2024-06-27 17:44:22.713605 2024-09-19 16:21:05.738180 True False
4 89ad42ff-3310-4548-b179-7df9c138e794 9eb6c08d-1eab-44c3-87a6-8a0a6848adc6 f9a2bd4b-e1ef-43a2-a358-a74feea0076d ccc2054d-295e-47f5-b277-2282109c4ed1 {'Block 0': [('video_1', 'video_2'), ('video_2', 'video_1')], 'Block 1': ['empty_stimulus'], 'Block 2': ['video_2', 'video_1']} {'Block 1': ['empty_stimulus'], 'Block 2': ['video_9', 'video_2', 'video_4', 'video_6', 'video_13', 'video_14', 'video_15', 'video_11', 'video_10', 'video_7', 'video_5', 'video_8', 'video_12', 'video_1', 'video_3'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']} 2024-06-27 17:56:57.288776 2024-09-21 11:40:21.272823 False
5 dd296f2b-a497-4957-899a-9393b25ab86f d94cc6b1-958c-43e4-9789-9e0c369ba29a {'Block 1': ['empty_stimulus'], 'Block 2': ['video_2', 'video_11', 'video_9', 'video_6', 'video_4', 'video_5', 'video_3', 'video_8', 'video_10', 'video_7', 'video_15', 'video_14', 'video_1', 'video_13', 'video_12'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1']} 2024-09-23 14:52:02.034386 False
6 6ece9745-96d7-40e1-a8b1-598608723f3a 588e94df-870d-4c61-b3c8-098edf01e988 {'Block 1': ['empty_stimulus'], 'Block 2': ['video_14', 'video_8', 'video_5', 'video_6', 'video_1', 'video_7', 'video_4', 'video_2', 'video_15', 'video_9', 'video_11', 'video_13', 'video_10', 'video_3', 'video_12'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1'], 'Block 5': ['video_1']} 2024-10-02 11:49:11.652504 False
7 1e63ca71-bb2e-4d19-a69e-b7e8dccaba35 8a1063c3-7130-4ab9-9d88-bd6bf470e685 {'Block 1': ['empty_stimulus'], 'Block 2': ['video_13', 'video_2', 'video_12', 'video_8', 'video_3', 'video_7', 'video_14', 'video_1', 'video_11', 'video_9', 'video_15', 'video_6', 'video_4', 'video_5', 'video_10'], 'Block 3': [('video_1', 'video_1')], 'Block 4': ['video_1'], 'Block 5': ['video_1']} 2024-10-02 11:55:43.185190 True

View File

@@ -88,7 +88,7 @@ dialog .iframe-container {
max-width: 1690px;
/* Maximum width to keep it from getting too wide on large screens */
padding: 20px;
background-color: #7b8cdb;
background-color: #b6c3ff; /* used to be 7b8cdb */
/* Just for visual differentiation */
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
@@ -143,6 +143,10 @@ label {
width: 60%;
}
button {
border: 1px solid #000;
}
/* buttons */
.buttondisable {
filter: invert(65%);
@@ -160,6 +164,7 @@ label {
/* Optional: rounds the corners of the button */
width: auto;
float: right;
border: 1px solid #000;
}
#submitbutton:hover {
@@ -219,7 +224,7 @@ h2 {
height: 70px;
/* Set a specific height for the buttons */
background-color: #cae4ff;
border: none;
border: 1px solid #000;
color: white;
padding: 10px 20px;
margin: 0 10px;
@@ -269,6 +274,7 @@ video {
width: auto;
height: auto;
margin: auto auto;
display: block;
}
iframe {
@@ -285,12 +291,29 @@ iframe {
}
.iframe-container {
position: relative;
/*padding-bottom: 56.25%;*/
/* 16:9 */
padding-bottom: 100%;
/* 1:1 */
height: 0;
}
.iframe-container2 {
position: relative;
padding-bottom: 56.25%;
/* 16:9 */
height: 0;
}
.iframe-container2 iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.video-container {
max-width: 100%;
position: relative;

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -12,11 +12,6 @@
<div class="container">
<h2>Datenschutzerklärung</h2>
<video controls>
<source src="{{ url_for('static', filename='videos/platzhalter-video.mp4') }}" type="video/mp4">
</video>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<div class="textblock">
<h3>
Information betroffener Personen zur Verarbeitung personenbezogener Daten
@@ -132,21 +127,27 @@
Einwilligung zur Veröffentlichung und Übermittlung
</h3>
<p>
Ich, bestätige, dass ich die „Information betroffener Personen zur Verarbeitung personenbezogener Daten“
Ich bestätige, dass ich die „Information betroffener Personen zur Verarbeitung personenbezogener Daten“
erhalten habe.
</p>
<p>
Ich willige hiermit ein, dass das DFKI Daten aus wissenschaftlichen Experimenten im Zusammenhang mit
dieser Studie für die Darstellung von Forschungsergebnissen im Bereich des Affective Computing verwendet
werden.
dieser Studie für die Darstellung von Forschungsergebnissen im Bereich des Affective Computing verwendet.
</p>
<p>
Mir ist bekannt, dass ich das Recht habe, meine Einwilligung jederzeit zu widerrufen. Durch den Widerruf
der Einwilligung wird die Rechtmäßigkeit der aufgrund der Einwilligung bis zum Widerruf erfolgten
Verarbeitung nicht berührt. Ein Widerruf kann per Email an jan.dickmann@web.de geschickt werden.
Verarbeitung nicht berührt. Ein Widerruf kann per Email an avatarstudy@proton.me geschickt werden.
</p>
</div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -1,5 +1,5 @@
<div style="margin: auto; max-width: 80%;">
<p>Demographic Question Info:</p>
<p>Demografische Fragen:</p>
<ol start="1">
<li>Wie alt sind sie?</li>
<li>Wie ist ihr Geschlecht?
@@ -55,7 +55,7 @@
<li>Sonstige</li>
</ol>
</li>
<li>Haben sie schonmal Computeranimationen von Gebärdensprache gesehen? (Gebärdenavatare)
<li>Haben sie schonmal Computeranimationen von Gebärdensprache gesehen? (Gebärdensprachavatare)
<ol>
<li>Ja</li>
<li>Nein</li>

View File

@@ -14,17 +14,23 @@
<div class="textblock">
<p>
Die Studie ist nun beendet und sie können die Seite verlassen.
Die Studie ist nun beendet und Sie können die Seite verlassen.
</p>
<p>
Wir würden uns freuen, wenn Sie die Studie mit anderen Gehörlosen oder Gebärdensprache sprechenden
Personen Teilen würden: <a href="https://slaeforms.leafbla.de/start">https://slaeforms.leafbla.de/start</a>
Wir würden uns freuen, wenn Sie die Studie mit anderen Gehörlosen oder Personen, die Gebärdensprache
sprechenden, teilen würden: <a href="https://slaeforms.leafbla.de/start">https://slaeforms.leafbla.de/start</a>
</p>
<p>
Falls sie noch Fragen oder Anmerkungen haben, schreiben sie uns unter: jan.dickmann@web.de
Falls Sie noch Fragen oder Anmerkungen haben, schreiben Sie uns unter: avatarstudy@proton.me
</p>
</div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -0,0 +1,53 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles.css')}}"" /> <!-- styles.css {{ url_for('static', filename='styles.css')}}-->
<link rel=" shortcut icon" href="{{ url_for('static', filename='icons/favicon.ico') }}">
<title>DGS Avatar Study</title>
</head>
<body>
<div class="container" style="height: 100%; font-size: 22px;">
<h2>Impressum</h2>
<div class="textblock">
<p>
Datenschutzerklärung: <a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</p>
<p>
Verantwortlicher für slaeforms.leafbla.de: Jan Dickmann, zusammen mit dem DFKI Saarbrücken, Affective Computing Group
</p>
<p>
Adresse:
</p>
<p>
Deutsches Forschungszentrum für Künstliche Intelligenz GmbH (DFKI)
</p>
<p>
Stuhlsatzenhausweg 3
</p>
<p>
Saarland Informatics Campus D 3_2
</p>
<p>
66123 Saarbrücken
</p>
<p>
avatarstudy@proton.me
</p>
</div>
<div class="spacer" aria-hidden="true" style="height:50px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -11,25 +11,20 @@
<body>
<div class="container">
<h2>SLAEFORMS Gebärdensprachavatar Studie</h2>
<video controls>
<source src="{{ url_for('static', filename='videos/platzhalter-video.mp4') }}" type="video/mp4">
</video>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<div class="textblock">
<p style="font-size: 22px;">
Bei allen Aufgaben in dieser Studie gibt es ein Erklärungsvideo, in dem die Aufgabe und die Antwortmöglichkeiten in Gebärdensprache erklärt werden.
Falls sie Fragen haben oder eine Aufgabe nicht verstehen, können sie den "Gebärdensprache" Button auf der rechten Seite des Bildschirms klicken, um das Video und den Erklärungstext zu sehen.
Sie können den Button nochmal anklicken um wieder zur Aufgabe zurückzukommen.
Bei allen Aufgaben in dieser Studie gibt es Texte, in denen die Aufgaben und die Antwortmöglichkeiten erklärt werden.
Falls Sie Fragen haben oder eine Aufgabe nicht verstehen, können Sie den "Info"-Button auf der rechten Seite des Bildschirms klicken, um den Erklärtext zu sehen.
Sie können den Button nochmal anklicken, um wieder zur Aufgabe zurückzukommen.
</p>
<div style="margin: auto; display: block; max-width: 90px;">
<button style="margin: auto; max-width: 90px;"><img class="infoButtonIcon" id="buttonInfoIcon"
src="{{ url_for('static', filename='icons/sl-icon.png')}}" alt="sign-language-icon"></button>
src="{{ url_for('static', filename='icons/info-icon.png')}}" alt="info-icon"></button>
</div>
<p style="font-size: 22px; text-align: center;">
Der Gebärdensprache Button.
Das ist der Info-Button.
</p>
</div>
@@ -41,5 +36,12 @@
<div class="spacer" aria-hidden="true" style="height:80px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -0,0 +1,52 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles.css')}}"" /> <!-- styles.css {{ url_for('static', filename='styles.css')}}-->
<link rel=" shortcut icon" href="{{ url_for('static', filename='icons/favicon.ico') }}">
<title>DGS Avatar Study</title>
</head>
<body>
<div class="container" style="height: 100%; font-size: 22px;">
<h2>Upload management</h2>
<div class="textblock">
<p>
Anzahl Videos: {{ num_videos }}
</p>
<p>
Die aktuellen Videos:
</p>
</div>
{% for video in videolist %}
<p>{{video}}</p>
{% endfor %}
<div class="textblock">
<p>
Download <a href="{{ url_for('export_all_videos') }}" target="_blank">hier</a>.
</p>
</div>
<form class="dsgvoform" action="{{ url_for('deleteuploads') }}" method="post">
<label for="terms-and-conditions">
<input class="inline" id="terms-and-conditions" type="checkbox" required name="terms-and-conditions" />
Alle Videos löschen.
</label>
<div class="button-container">
<button id="submitbutton" type="submit">Löschen</button>
</div>
</form>
<div class="spacer" aria-hidden="true" style="height:50px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -0,0 +1,77 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles.css')}}"" /> <!-- styles.css {{ url_for('static', filename='styles.css')}}-->
<link rel=" shortcut icon" href="{{ url_for('static', filename='icons/favicon.ico') }}">
<title>DGS Avatar Study</title>
</head>
<body>
<div class="container">
<h2>SLAEFORMS Gebärdensprachavatar Studie</h2>
<div class="textblock">
<div style="margin: auto; font-size: 20px;">
<p>
Hallo und willkommen zu dieser Studie, danke für Ihre Teilnahme.
</p>
<p>
In dieser Studie geht es um die Entwicklung von Gebärdensprachavataren.
</p>
<p>
Bitte beachten Sie, dass diese Avatare noch in einer frühen Entwicklungsphase und noch nicht für den
Gebrauch in einer App/einem Computerprogramm oder auf einer Webseite geeignet sind. In dieser Studie
geht es darum, einzelne Aspekte der Avatare und neue technologische Ansätze zu testen. Dementsprechend
haben die Avatare noch viele offensichtliche Schwächen, wie zum Beispiel, dass bisher nur die Arme und
der Oberkörper, aber nicht das Gesicht animiert ist. Bitte bewerten Sie nur die Qualität der Hände und
Arme.
</p>
<p>
Diese Studie richtet sich an Menschen, die Gebärdensprache beherrschen, insbesondere gehörlose Menschen.
Nehmen Sie bitte nur Teil, wenn Sie (Deutsche) Gebärdensprache beherrschen.
Die Studie dauert ca. 20 Minuten.
</p>
<p>
Während der Studie werden sie sich Videos anschauen, diese bewerten und Feedback dazu geben können.
Verwenden Sie deshalb bitte, wenn möglich ein Gerät mit einem großen Bildschirm (Laptop, PC, Tablet) für
Ihre Teilnahme, damit Sie die Videos in ausreichender Größe sehen können.
</p>
<p>
Sie haben während der Studie die Möglichkeit (optional) Videofeedback zu geben, dazu brauchen sie eine
Webcam. Die Videos werden nicht veröffentlicht und nur Übersetzern zur Auswertung der Studienergebnisse
gezeigt.
</p>
<p>
Das Laden der Seiten kann manchmal einige Sekunden dauern. Falls es zu einem Fehler kommen sollte und ein Video nicht geladen wird, versuchen Sie bitte die Seite neu zu laden.
</p>
<p>
Für jeden Teil der Studie gibt es einen Text, der die Fragestellung und die Antwortmöglichkeiten erklärt. Falls Sie den Text während der Studie nochmal sehen möchten, können Sie es
über den „Info“-Knopf auf der rechten Seite aufrufen.
</p>
<p>
Bitte versuchen sie während der Studie nicht auf die vorherige Seite "zurück" zu gehen, da sie nicht zu vorherigen Fragen zurück können.
</p>
</div>
</div>
<form class="dsgvoform" action="{{ url_for('sendpage') }}" method="post">
<div class="button-container">
<button id="submitbutton" type="submit">Weiter</button>
</div>
</form>
<div class="spacer" aria-hidden="true" style="height:80px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -1,8 +1,9 @@
<div style="margin: auto; max-width: 80%; font-size: 20px;">
<p>Studie Teil 1:</p>
<p>Im Folgenden werden ihnen Videos gezeigt, die sie in den Kategorien „Natürlichkeit“, „Verständlichkeit“ und „grammatikalischer Korrektheit“ bewerten sollen.</p>
<p>Dafür können sie auf einer Skala mit 7 Punkten bewerten, wobei der Punkt ganz links für „sehr schlecht“, der Punkt in der Mitte für „neutral“, und der Punkt ganz rechts für „sehr schlecht“ steht.</p>
<p>Dann können sie weiteres Feedback als Text oder als Video geben. Das Video können sie direkt im Browser aufnehmen. Beachten sie, dass sie dazu eine Webcam benötigen und der Webseite erlauben müssen diese zu benutzen. Wenn sie auf den Kamera Knopf drücken, wird ihr Browser sie nach der Berechtigung fragen.</p>
<p>Wenn sie Feedback per Video geben, kann einige Sekunden dauern die nächste Seite aufzurufen, weil das Video erst hochgeladen werden muss.</p>
<p>Genaue Informationen darüber wie wir die Videos verarbeiten finden sie in unserer <a target="_blank" href="{{ url_for('datenschutz') }}">Datenschutzerklärung</a>.</p>
<p>Im Folgenden werden Ihnen Videos gezeigt, die Sie in den Kategorien „Natürlichkeit“, „Verständlichkeit“ und „grammatikalischer Korrektheit“ bewerten sollen.</p>
<p>Dafür können Sie auf einer Skala mit 7 Punkten bewerten, wobei der Punkt ganz links für „Sehr schlecht“, der Punkt in der Mitte für "Weder gut noch schlecht", und der Punkt ganz rechts für „Sehr gut“ steht.</p>
<p>Dann können Sie weiteres Feedback als Text oder als Video geben. Das Video können Sie direkt im Browser aufnehmen. Beachten Sie, dass sie dazu eine Webcam benötigen und der Webseite erlauben müssen diese zu benutzen. Wenn Sie auf den Kamera-Knopf drücken, wird ihr Browser Sie nach der Berechtigung fragen.</p>
<p>Videoaufnahmen können maximal 70 Sekunden lang sein, dann wird die Aufnahme automatisch beendet.</p>
<p>Wenn Sie Feedback als Video geben, kann es einige Sekunden dauern die nächste Seite aufzurufen, weil das Video erst hochgeladen werden muss.</p>
<p>Genaue Informationen darüber, wie wir die Videos verarbeiten, finden Sie in unserer <a target="_blank" href="{{ url_for('datenschutz') }}">Datenschutzerklärung</a>.</p>
</div>

View File

@@ -12,10 +12,6 @@
<div class="container">
<h2>SLAEFORMS Gebärdensprachavatar Studie</h2>
<video controls>
<source src="{{ url_for('static', filename='videos/platzhalter-video.mp4') }}" type="video/mp4">
</video>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<div class="textblock">
{% include "p1infos.html" %}
@@ -29,5 +25,11 @@
<div class="spacer" aria-hidden="true" style="height:80px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -1,19 +1,20 @@
<div style="margin: auto; max-width: 80%; font-size: 20px;">
<p>Studie Teil 2:</p>
<p>Im Folgenden sehen Sie zwei Videos, in denen der gleiche Satz mit unterschiedlichen Formulierungen gebärdet wird.</p>
<p>Bitte verwenden Sie wieder die Punkteskala, um zu bewerten, welches der beiden Videos Sie besser finden.</p>
<p>Der folgende Satz wird gebärdet: Einfahrt RE 77 Richtung Köln Hauptbahnhof über Hannover, Abfahrt 3:44 Uhr.</p>
<p>Bitte verwenden Sie die Punkteskala, um zu bewerten, welches der beiden Videos Sie besser finden.</p>
<ol start="1">
<li>Welche Formulierung war natürlicher?</li>
<li>Welche Formulierung haben Sie besser verstanden?</li>
<li>Welche Formulierung war korrekter?</li>
<li>Welche Formulierung hat Ihnen besser gefallen?</li>
</ol>
<p>Die Antwortmöglichkeiten sind jedesmal:</p>
<p>Die Antwortmöglichkeiten sind jedes Mal:</p>
<ol start="1">
<li>Links</li>
<li>eher Links</li>
<li>Eher links</li>
<li>Beide gleich</li>
<li>eher Rechts</li>
<li>Eher rechts</li>
<li>Rechts</li>
</ol>
</div>

View File

@@ -12,10 +12,6 @@
<div class="container">
<h2>SLAEFORMS Gebärdensprachavatar Studie</h2>
<video controls>
<source src="{{ url_for('static', filename='videos/platzhalter-video.mp4') }}" type="video/mp4">
</video>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<div class="textblock">
{% include "p2infos.html" %}
@@ -29,5 +25,11 @@
<div class="spacer" aria-hidden="true" style="height:80px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -1,19 +1,20 @@
<div style="margin: auto; max-width: 80%; font-size: 20px;">
<p>Studie Teil 3:</p>
<p>Im Folgenden sehen Sie ein Video, in dem der Avatar drei Mal „Gleis“ gebärdet, jedes Mal in eine etwas andere Richtung. So soll der Avatar in Zukunft die Position und Richtung des Gleises relativ zum Avatar und Zuschauer zum Ausdruck bringen.</p>
<p>Beantworten Sie dazu bitte die folgenden Fragen, indem Sie die Aussage auf einer Skala mit fünf Punkten, von „Trifft überhaupt nicht zu“, zu „Trifft vollkommen zu“ bewerten.</p>
<p>
Bewerten Sie bitte die folgenden Aussagen auf einer Skala mit fünf Punkten, von „Trifft überhaupt nicht zu“, bis „Trifft vollkommen zu“.</p>
<ol start="1">
<li>Man kann gut erkennen, in welche Richtung das Gleis zeigt.</li>
<li>Die Gebärde ist schwer zu erkennen</li>
<li>Die Gebärde ist schwer zu erkennen.</li>
<li>Das Anpassen der Richtung und der Position der Gebärde kann dabei helfen, besser zu verstehen, wo das Gleis liegt.</li>
<li>Ich finde diesen Ansatz nicht gut.</li>
</ol>
<p>Die Antwortmöglichkeiten sind jedesmal:</p>
<p>Die Antwortmöglichkeiten sind jedes Mal:</p>
<ol start="1">
<li>Links</li>
<li>eher Links</li>
<li>Beide gleich</li>
<li>eher Rechts</li>
<li>Rechts</li>
<li>Trifft überhaupt nicht zu</li>
<li>Trifft eher nicht zu</li>
<li>Ich weiß nicht</li>
<li>Trifft eher zu</li>
<li>Trifft vollkommen zu</li>
</ol>
</div>

View File

@@ -12,10 +12,6 @@
<div class="container">
<h2>SLAEFORMS Gebärdensprachavatar Studie</h2>
<video controls>
<source src="{{ url_for('static', filename='videos/platzhalter-video.mp4') }}" type="video/mp4">
</video>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<div class="textblock">
{% include "p3infos.html" %}
@@ -29,5 +25,11 @@
<div class="spacer" aria-hidden="true" style="height:80px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -13,6 +13,13 @@
allowfullscreen></iframe>
</div>
{% elif (embed == "vimeo") %}
<div class="iframe-container">
<iframe title="vimeo-player" class="center" src="{{ video_url }}" frameborder="0" allowfullscreen></iframe>
</div>
{% elif (embed == "no") %}
<video controls>
@@ -42,8 +49,6 @@
</div>
</div>
<div class="dv_half">
<div class="iframe-container">
<iframe class="center" src="{{ video_url2 }}" title="YouTube video player" frameborder="0"
@@ -53,6 +58,25 @@
</div>
</div>
{% elif (embed == "vimeo") %}
<div class="double_video_container">
<div class="dv_half">
<div class="iframe-container">
<iframe title="vimeo-player" class="center" src="{{ video_url1 }}" frameborder="0" allowfullscreen></iframe>
</div>
</div>
<div class="dv_half">
<div class="iframe-container">
<iframe title="vimeo-player" class="center" src="{{ video_url2 }}" frameborder="0" allowfullscreen></iframe>
</div>
</div>
</div>
{% elif (embed == "no") %}
<div class="double_video_container">
<div class="dv_half">
@@ -118,12 +142,14 @@ step={{question["step"]}}
{% if (infovideo) %}
<dialog>
<button class="dialogBtn" autofocus><img class="infoButtonIcon" id="buttonClose"
src="{{ url_for('static', filename='icons/x-icon.png')}}" alt="Delete Icon"></button>
{% if ("videourl" in infovideo) %}
<video controls>
<source src="{{ url_for('static', filename=infovideo['videourl']) }}" type="video/mp4">
</video>
{% endif %}
<div class="dialogTextContainer">
{% if ("infotext" in infovideo) %}
<p>{{ infovideo["infotext"] }}</p>
@@ -134,7 +160,7 @@ step={{question["step"]}}
</div>
</dialog>
<button class="dialogBtn"><img class="infoButtonIcon" id="buttonInfoIcon"
src="{{ url_for('static', filename='icons/sl-icon.png')}}" alt="Info Icon"></button>
src="{{ url_for('static', filename='icons/info-icon.png')}}" alt="Info Icon"></button>
<script src="{{ url_for('static', filename='infoDialogScript.js')}}"></script>
{% endif %}
@@ -157,7 +183,7 @@ step={{question["step"]}}
<div class="spacer" aria-hidden="true" style="height:30px"></div>
<div class="questioncontainer">
<h3 style="margin: auto;">{{ questions[question]['text']}}</h3>
<h3 style="margin: auto;">{{ questions[question]['text']}}</h3>
</div>
<div class="spacer" aria-hidden="true" style="height:60px"></div>
@@ -165,7 +191,7 @@ step={{question["step"]}}
{% elif (questions[question]["type"] == "likert") %}
<div class="likertcontainer">
<div class="questioncontainer">
<h3>{{ questions[question]['text']}}</h3>
<h3>{{ questions[question]['text']}}</h3>
</div>
<div class="likert" style="--likert-rows: {{ questions[question]['points']|length() }}">
{% for point in questions[question]["points"] %}
@@ -184,7 +210,7 @@ step={{question["step"]}}
{% elif (questions[question]["type"] == "likert-basic") %}
<div class="questioncontainer">
<h3>{{ questions[question]['text']}}</h3>
<h3>{{ questions[question]['text']}}</h3>
</div>
<div class="normal-likert-container">
@@ -262,7 +288,8 @@ step={{question["step"]}}
{% elif (questions[question]["type"] == "multiplechoice") %}
<div class="compressWidth">
<label>
<p>
<div>
{{ questions[question]['text']}}
{% for point in questions[question]["points"] %}
@@ -272,7 +299,8 @@ step={{question["step"]}}
{{ questions[question]['points'][point]['text']}}</label>
{% endfor %}
</label>
</div>
</p>
</div>
<div class="spacer" aria-hidden="true" style="height:30px"></div>
@@ -319,12 +347,25 @@ step={{question["step"]}}
<div class="spacer" aria-hidden="true" style="height:30px"></div>
<div class="button-container">
{% if ("lastquestion" in stimlui) %}
<button id="submitbutton" type="submit">Studie Beenden</button>
<!-- TODO maybe I want to use this instead: <button id="submitbutton" type="submit">Submit</button> /// <input class="inputs" id="submitbutton" type="submit" value="submit" />-->
{% else %}
<button id="submitbutton" type="submit">Weiter</button>
<!-- TODO maybe I want to use this instead: <button id="submitbutton" type="submit">Submit</button> /// <input class="inputs" id="submitbutton" type="submit" value="submit" />-->
{% endif %}
</div>
</form>
<div class="spacer" aria-hidden="true" style="height:80px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -12,10 +12,13 @@
<div class="container" style="height: 100%; font-size: 22px;">
<h2>SLAEFORMS Gebärdensprachavatar Studie</h2>
<video controls>
<source src="{{ url_for('static', filename='videos/platzhalter-video.mp4') }}" type="video/mp4">
</video>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<div class="iframe-container2">
<iframe title="vimeo-player" src="https://player.vimeo.com/video/1031133490?h=bfa5b559f9" frameborder="0"
allowfullscreen></iframe>
</div>
<div class="textblock">
<p>
@@ -25,55 +28,31 @@
In dieser Studie geht es um die Entwicklung von Gebärdensprachavataren.
</p>
<p>
Bitte beachten Sie, dass diese Avatare noch in einer frühen Entwicklungsphase und noch nicht für den
Gebrauch in einer App/einem Computerprogramm oder auf einer Webseite geeignet sind. In dieser Studie
geht es darum, einzelne Aspekte der Avatare und neue technologische Ansätze zu testen. Dementsprechend
haben die Avatare noch viele offensichtliche Schwächen, wie zum Beispiel, dass bisher nur die Arme und
der Oberkörper, aber nicht das Gesicht animiert ist. Bitte bewerten Sie nur die Qualität der Hände und
Arme.
Bitte berücksichtige, dass die Avatare, die wir zeigen, in keiner Weise der Qualität entsprechen, wie
sie genutzt werden sollen. Sie sind nur Beispiele, die niemals in einer Anwendung zu sehen sein werden.
Es geht darum, dass wir die Darstellung der Hände und Arme testen wollen. Bitte bewertet deshalb nicht
Darstellungsqualität und lasst euch nicht davon beeinflussen. Außerdem möchten wir testen, wie die
Nutzung einer Feedback-Funktion per Videoaufnahme verwendet werden kann.
</p>
<p>
Diese Studie richtet sich an Menschen, die Gebärdensprache beherrschen, insbesondere gehörlose Menschen.
Nehmen Sie bitte nur Teil, wenn Sie (Deutsche) Gebärdensprache beherrschen.
Die Studie dauert ca. 20 Minuten.
Die Rückmeldung von euch ist wichtig und ihr könnt das in Gebärdensprache machen.
Die Teilnahme wird nur für die Auswertung genutzt. In keiner Weise wird etwas von euch veröffentlicht, auch nicht eure Videos.
Alle weiteren Infos findet ihr im Text.
</p>
<p>
Während der Studie werden sie sich Videos anschauen, diese bewerten und Feedback dazu geben können.
Verwenden Sie deshalb bitte, wenn möglich ein Gerät mit einem großen Bildschirm (Laptop, PC, Tablet) für
Ihre Teilnahme, damit Sie die Videos in ausreichender Größe sehen können.
</p>
<p>
Sie haben während der Studie die Möglichkeit (optional) Videofeedback zu geben, dazu brauchen sie eine
Webcam. Die Videos werden nicht veröffentlicht und nur Übersetzern zur Auswertung der Studienergebnisse
gezeigt.
</p>
<p>
Für jeden Teil der Studie gibt es ein Erklärvideo, das die Fragestellung und die Antwortmöglichkeiten in
Gebärdensprache erklärt. Falls Sie das Video während der Studie nochmal sehen möchten, können Sie es
über den „Info“-Knopf auf der rechten Seite aufrufen.
Danke für eure Teilnahme, die im Rahmen eine Abschlussarbeit erfolgt. Weitere Infos dazu findet ihr im Impressum.
</p>
<div class="spacer" aria-hidden="true" style="height:20px"></div>
<p>
Die Teilnahme an dieser Studie ist komplett freiwillig, Sie können die Studie zu jedem Zeitpunkt
abbrechen, indem Sie die Seite einfach schließen. Sie können außerdem die Löschung aller Daten bei uns
beantragen: jan.dickmann@web.de
</p>
<p>
Ich, bestätige, dass ich die „Information betroffener Personen zur Verarbeitung personenbezogener Daten“
erhalten habe.
Ich willige hiermit ein, dass das DFKI Daten aus wissenschaftlichen Experimenten im Zusammenhang mit
dieser Studie für die Darstellung von Forschungsergebnissen im Bereich des Affective Computing verwendet
werden.
</p>
<p>
Mir ist bekannt, dass ich das Recht habe, meine Einwilligung jederzeit zu widerrufen. Durch den Widerruf
der Einwilligung wird die Rechtmäßigkeit der aufgrund der Einwilligung bis zum Widerruf erfolgten
Verarbeitung nicht berührt. Ein Widerruf kann per Email an jan.dickmann@web.de geschickt werden.
beantragen: avatarstudy@proton.me
</p>
</div>
<form class="dsgvoform" action="{{ url_for('startpage') }}" method="post">
<label for="terms-and-conditions">
<input class="inline" id="terms-and-conditions" type="checkbox" required name="terms-and-conditions" />
Ich akezeptiere die <a href="{{ url_for('datenschutz') }}">Datenschutzbestimmungen</a>
Ich akzeptiere die <a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutzbestimmungen</a>
</label>
<div class="button-container">
<button id="submitbutton" type="submit">Weiter</button>
@@ -82,5 +61,12 @@
<div class="spacer" aria-hidden="true" style="height:50px"></div>
</div>
</body>
<footer>
<div class="container" style="font-size: 19px;">
<a href="{{ url_for('startpage') }}" target="_blank">Startseite</a>
<a href="{{ url_for('impressum') }}" target="_blank">Impressum</a>
<a href="{{ url_for('datenschutz') }}" target="_blank">Datenschutz</a>
</div>
</footer>
</html>

View File

@@ -21,10 +21,7 @@
<div class="container">
<video controls>
<source src="{{ url_for('static', filename='videos/GLEISvariations.mp4') }}" type="video/mp4">
</video>
<div style="padding:56.25% 0 0 0;position:relative;"><iframe src="https://player.vimeo.com/video/1017028141?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479" frameborder="0" allow="autoplay; fullscreen; picture-in-picture; clipboard-write" style="position:absolute;top:0;left:0;width:100%;height:100%;" title="0020-simple"></iframe></div><script src="https://player.vimeo.com/api/player.js"></script>
<form class="formlayout" id="question_form" action="{{ url_for('sendpage') }}" method="post">

View File

@@ -0,0 +1,34 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='styles.css')}}" />
<!-- styles.css {{ url_for('static', filename='styles.css')}}-->
<title>Task 3 Videos</title>
</head>
<body>
<div class="container">
<div class="double_video_container">
<div class="dv_half">
<div class="iframe-container">
<video controls>
<source src="{{ url_for('static', filename='videos/0009-intro-inflected.mp4') }}" type="video/mp4">
</video>
</div>
</div>
<div class="dv_half">
<div class="iframe-container">
<video controls>
<source src="{{ url_for('static', filename='videos/0009-variation-inflected.mp4') }}" type="video/mp4">
</video>
</div>
</div>
</div>
<div class="spacer" aria-hidden="true" style="height:30px"></div>
</div>
</body>
</html>

View File

@@ -48,7 +48,7 @@
<p>
Die Teilnahme an dieser Studie ist komplett freiwillig, Sie können die Studie zu jedem Zeitpunkt
abbrechen, indem Sie die Seite einfach schließen. Sie können außerdem die Löschung aller Daten bei uns
beantragen: jan.dickmann@web.de
beantragen: avatarstudy@proton.me
</p>
<p>
Ich, bestätige, dass ich die „Information betroffener Personen zur Verarbeitung personenbezogener Daten“
@@ -60,7 +60,7 @@
<p>
Mir ist bekannt, dass ich das Recht habe, meine Einwilligung jederzeit zu widerrufen. Durch den Widerruf
der Einwilligung wird die Rechtmäßigkeit der aufgrund der Einwilligung bis zum Widerruf erfolgten
Verarbeitung nicht berührt. Ein Widerruf kann per Email an jan.dickmann@web.de geschickt werden.
Verarbeitung nicht berührt. Ein Widerruf kann per Email an avatarstudy@proton.me geschickt werden.
</p>
</div>
<form class="dsgvoform" action="{{ url_for('startpage') }}" method="post">

View File

@@ -300,7 +300,7 @@
"question1": {
"type": "textinput",
"name": "formfeedback",
"text": "Das war der Prototyp für dieses Studientool. Über Feedback würde ich mich freuen. Entweder hier oder per Email unter: jan.dickmann@web.de",
"text": "Das war der Prototyp für dieses Studientool. Über Feedback würde ich mich freuen. Entweder hier oder per Email unter: avatarstudy@proton.me",
"required": "false",
"size": "1000"
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,8 @@
{
"Block -1":{
"type": "SinglePage",
"template": "oldstart.html"
},
"Block 0":{
"type": "SinglePage",
"template": "intropage.html"
@@ -10,13 +14,14 @@
"type": "empty",
"list": {
"empty_stimulus": ""
}
},
"questions": {
"question1_alter": {
"type": "numberinput",
"name": "alter",
"text": "1. Wie alt sind sie?",
"text": "1. Wie alt sind Sie?",
"required": "true",
"min": "1",
"max": "120"
@@ -24,7 +29,7 @@
"question2_geschlecht": {
"type": "dropdowninput",
"name": "geschlecht",
"text": "2. Wie ist ihr Geschlecht?",
"text": "2. Welches Geschlecht haben Sie?",
"required": "true",
"defaulttext": "",
"points": {
@@ -49,7 +54,7 @@
"question3_bildung": {
"type": "dropdowninput",
"name": "bildung",
"text": "Was ist ihr höchster Bildungsabschluss?",
"text": "Was ist Ihr höchster Bildungsabschluss?",
"required": "true",
"defaulttext": "",
"points": {
@@ -102,7 +107,7 @@
"question4_hoerstatus": {
"type": "dropdowninput",
"name": "hoerstatus",
"text": "Wie ist ihr Hörstatus?",
"text": "Wie ist Ihr Hörstatus?",
"required": "true",
"defaulttext": "",
"points": {
@@ -127,7 +132,7 @@
"question5_wann_gehörlos": {
"type": "numberinput",
"name": "wann_gehörlos",
"text": "In welchem Alter wurden sie gehörlos/schwerhörig? (\"0\" für ab Geburt, \"-1\" falls sie hörend sind)",
"text": "In welchem Alter wurden Sie gehörlos/schwerhörig? (\"0\" für ab Geburt, \"-1\" falls Sie hörend sind)",
"required": "true",
"min": "-1",
"max": "120"
@@ -135,7 +140,7 @@
"question6_wann_gebärdensprache": {
"type": "numberinput",
"name": "wann_gebärdensprache",
"text": "Seit welchem Alter lernen sie Gebärdensprache?",
"text": "Seit welchem Alter lernen Sie Gebärdensprache?",
"required": "true",
"min": "0",
"max": "120"
@@ -143,7 +148,7 @@
"question7_eltern_gehörlos": {
"type": "dropdowninput",
"name": "eltern_gehörlos",
"text": "Sind ihre Eltern Gehörlos?",
"text": "Sind ihre Eltern gehörlos?",
"required": "true",
"defaulttext": "",
"points": {
@@ -164,7 +169,7 @@
"question8_zuhause_sl": {
"type": "multiplechoice",
"name": "zuhause_sl",
"text": "Welche Sprache(n) verwenden sie zuhause?",
"text": "Welche Sprache(n) verwenden Sie zuhause?",
"required": "true",
"defaulttext": "",
"points": {
@@ -185,7 +190,7 @@
"question9_arbeit_sl": {
"type": "multiplechoice",
"name": "arbeit_sl",
"text": "Welche Sprache(n) verwenden sie auf der Arbeit/in der Schule?",
"text": "Welche Sprache(n) verwenden Sie auf der Arbeit/in der Schule?",
"required": "true",
"defaulttext": "",
"points": {
@@ -206,7 +211,7 @@
"question10_avatar_erfahrung": {
"type": "dropdowninput",
"name": "avatar_erfahrung",
"text": "Haben sie schonmal Computeranimationen von Gebärdensprache gesehen? (Gebärdenavatare)",
"text": "Haben Sie schonmal Computeranimationen von Gebärdensprache gesehen? (Gebärdenavatare)",
"required": "true",
"defaulttext": "",
"points": {
@@ -222,7 +227,6 @@
}
},
"infovideo": {
"videourl": "videos/platzhalter-video.mp4",
"htmlblock": "dqinfos.html",
"configuration": {
"embed": "no"
@@ -292,9 +296,9 @@
"type": "single_video",
"order": "random",
"list": {
"video_1": "0009-inflected.mp4",
"video_2": "0009-mocap.mp4",
"video_3": "0009-simple.mp4"
"video_1": "0044-inflected.mp4",
"video_2": "0044-mocap.mp4",
"video_3": "0044-simple.mp4"
},
"configuration": {
"embed": "no"
@@ -314,7 +318,7 @@
"points": {
"naturalness-p1": {
"value": "1",
"text": "Gar nicht gut 👎"
"text": "Sehr schlecht 👎"
},
"naturalness-p2": {
"value": "2",
@@ -350,7 +354,7 @@
"points": {
"understandability-p1": {
"value": "1",
"text": "Gar nicht gut 👎"
"text": "Sehr schlecht 👎"
},
"understandability--p2": {
"value": "2",
@@ -386,7 +390,7 @@
"points": {
"gramKorrektheit-p1": {
"value": "1",
"text": "Gar nicht gut 👎"
"text": "Sehr schlecht 👎"
},
"gramKorrektheit-p2": {
"value": "2",
@@ -417,19 +421,18 @@
"question4": {
"type": "textinput",
"name": "text_feedback",
"text": "Hier können sie Feedback zum Avatar geben",
"text": "Hier können Sie Text-Feedback zum Avatar geben",
"required": "false",
"size": "250"
},
"question5": {
"type": "videoinput",
"text": "Hier können sie per Video Feedback geben (max. 70 Sekunden)",
"text": "Hier können Sie Video-Feedback geben (max. 70 Sekunden)",
"name": "video_feedback",
"required": "false"
}
},
"infovideo": {
"videourl": "videos/platzhalter-video.mp4",
"htmlblock": "p1infos.html",
"configuration": {
"embed": "no"
@@ -504,7 +507,7 @@
"points": {
"naturalness-p1": {
"value": "1",
"text": "Gar nicht gut 👎"
"text": "Sehr schlecht 👎"
},
"naturalness-p2": {
"value": "2",
@@ -540,7 +543,7 @@
"points": {
"understandability-p1": {
"value": "1",
"text": "Gar nicht gut 👎"
"text": "Sehr schlecht 👎"
},
"understandability--p2": {
"value": "2",
@@ -576,7 +579,7 @@
"points": {
"gramKorrektheit-p1": {
"value": "1",
"text": "Gar nicht gut 👎"
"text": "Sehr schlecht 👎"
},
"gramKorrektheit-p2": {
"value": "2",
@@ -607,19 +610,18 @@
"question4": {
"type": "textinput",
"name": "text_feedback",
"text": "Hier können sie Feedback zum Avatar geben",
"text": "Hier können Sie Text-Feedback zum Avatar geben",
"required": "false",
"size": "250"
},
"question5": {
"type": "videoinput",
"text": "Hier können sie per Video Feedback geben (max. 70 Sekunden)",
"text": "Hier können Sie Video-Feedback geben (max. 70 Sekunden)",
"name": "video_feedback",
"required": "false"
}
},
"infovideo": {
"videourl": "videos/platzhalter-video.mp4",
"htmlblock": "p1infos.html",
"configuration": {
"embed": "no"
@@ -663,10 +665,10 @@
"stimuli": {
"type": "double_video",
"list_1": {
"video_1": "0009-inflected.mp4"
"video_1": "0009-intro-inflected.mp4"
},
"list_2": {
"video_1": "0009-variation-wide.mp4"
"video_1": "0009-variation-inflected.mp4"
},
"configuration": {
"embed": "no"
@@ -676,7 +678,7 @@
"question0": {
"type": "textblock",
"name": "fragestellung",
"text": "Der folgende Satz wird gebärdet: Gleis 18, Einfahrt RE 77 richtung Köln Hauptbahnhof über Hannover, Abfahrt 3:44."
"text": "Der folgende Satz wird gebärdet: Einfahrt RE 77 Richtung Köln Hauptbahnhof über Hannover, Abfahrt 3:44 Uhr."
},
"question1": {
"type": "likert-basic",
@@ -690,7 +692,7 @@
},
"natürlicher-p2": {
"value": "eherLinks",
"text": "eher Links"
"text": "Eher links"
},
"natürlicher-p3": {
"value": "Gleich",
@@ -698,7 +700,7 @@
},
"natürlicher-p4": {
"value": "eherRechts",
"text": "eher Rechts"
"text": "Eher rechts"
},
"natürlicher-p5": {
"value": "Rechts",
@@ -709,7 +711,7 @@
"question2": {
"type": "likert-basic",
"name": "verständlicher",
"text": "Welche Formulierung verstehen sie besser?",
"text": "Welche Formulierung ist verständlicher?",
"required": "true",
"points": {
"verständlicher-p1": {
@@ -718,7 +720,7 @@
},
"verständlicher-p2": {
"value": "eherLinks",
"text": "eher Links"
"text": "Eher links"
},
"verständlicher-p3": {
"value": "Gleich",
@@ -726,7 +728,7 @@
},
"verständlicher-p4": {
"value": "eherRechts",
"text": "eher Rechts"
"text": "Eher rechts"
},
"verständlicher-p5": {
"value": "Rechts",
@@ -737,7 +739,7 @@
"question3": {
"type": "likert-basic",
"name": "korreter",
"text": "Welche Formulierung ist korreter?",
"text": "Welche Formulierung ist korrekter?",
"required": "true",
"points": {
"korreter-p1": {
@@ -746,7 +748,7 @@
},
"korreter-p2": {
"value": "eherLinks",
"text": "eher Links"
"text": "Eher links"
},
"korreter-p3": {
"value": "Gleich",
@@ -754,7 +756,7 @@
},
"korreter-p4": {
"value": "eherRechts",
"text": "eher Rechts"
"text": "Eher rechts"
},
"korreter-p5": {
"value": "Rechts",
@@ -765,7 +767,7 @@
"question4": {
"type": "likert-basic",
"name": "besser",
"text": "Welche Formulierung gefällt ihnen besser?",
"text": "Welche Formulierung gefällt Ihnen besser?",
"required": "true",
"points": {
"besser-p1": {
@@ -774,7 +776,7 @@
},
"besser-p2": {
"value": "eherLinks",
"text": "eher Links"
"text": "Eher links"
},
"besser-p3": {
"value": "Gleich",
@@ -782,7 +784,7 @@
},
"besser-p4": {
"value": "eherRechts",
"text": "eher Rechts"
"text": "Eher rechts"
},
"besser-p5": {
"value": "Rechts",
@@ -793,19 +795,18 @@
"question5": {
"type": "textinput",
"name": "text_feedback",
"text": "Hier können sie Text Feedback geben",
"text": "Hier können Sie Text-Feedback geben",
"required": "false",
"size": "250"
},
"question6": {
"type": "videoinput",
"text": "Hier können sie per Video Feedback geben (max. 70 Sekunden)",
"text": "Hier können Sie Video-Feedback geben (max. 70 Sekunden)",
"name": "video_feedback",
"required": "false"
}
},
"infovideo": {
"videourl": "videos/platzhalter-video.mp4",
"htmlblock": "p2infos.html",
"configuration": {
"embed": "no"
@@ -868,7 +869,7 @@
"question0": {
"type": "textblock",
"name": "fragestellung",
"text": "Im Video gebärdet der Avatar drei Mal „Gleis“, jedes Mal in eine etwas andere Richtung. Bitte beantworten sie dazu die folgenden Fragen:"
"text": "Im Video gebärdet der Avatar drei Mal „Gleis“, jedes Mal in eine etwas andere Richtung. Bitte bewerten Sie die folgenden Aussagen:"
},
"question1": {
"type": "likert-basic",
@@ -929,7 +930,7 @@
"question3": {
"type": "likert-basic",
"name": "bessere_lokalisierung",
"text": "Das Anpassen der Richtung und der Position der Gebärde kann dabei helfen, besser zu verstehen, wo das Gleis liegt.",
"text": "Das Anpassen der Richtung und der Position der Gebärde kann dabei helfen besser zu verstehen, wo das Gleis liegt.",
"required": "true",
"points": {
"bessere_lokalisierung-p1": {
@@ -985,19 +986,18 @@
"question5": {
"type": "textinput",
"name": "text_feedback",
"text": "Hier können sie Text Feedback geben",
"text": "Hier können Sie Text-Feedback geben",
"required": "false",
"size": "250"
},
"question6": {
"type": "videoinput",
"text": "Hier können sie per Video Feedback geben (max. 70 Sekunden)",
"text": "Hier können Sie per Video-Feedback geben (max. 70 Sekunden)",
"name": "video_feedback",
"required": "false"
}
},
"infovideo": {
"videourl": "videos/platzhalter-video.mp4",
"htmlblock": "p3infos.html",
"configuration": {
"embed": "no"
@@ -1039,31 +1039,33 @@
"type": "TaskTemplate",
"template": "standard_template.html",
"stimuli": {
"type": "single_video",
"order": "random",
"type": "empty",
"list": {
"video_1": "platzhalter-video.mp4"
"empty_stimulus": ""
},
"configuration": {
"embed": "no"
}
"lastquestion": "true"
},
"questions": {
"question0": {
"type": "textblock",
"name": "fragestellung",
"text": "Vielen Dank für Ihre Teilnahme an der Studie, wenn Sie noch weiteres Feedback geben möchten oder Anmerkungen haben, können Sie uns diese hier mitteilen. Wenn Sie noch weitere Fragen haben, schreiben Sie uns bitte unter: jan.dickmann@web.de"
"text": "Vielen Dank für Ihre Teilnahme an der Studie. Sie können die Studie nun abschließen, indem sie den Button unten rechts anklicken."
},
"question5": {
"question1": {
"type": "textblock",
"name": "fragestellung",
"text": "Wenn Sie noch weiteres Feedback geben möchten oder Anmerkungen haben, können Sie uns diese hier mitteilen. Wenn Sie noch weitere Fragen haben, schreiben Sie uns bitte unter: avatarstudy@proton.me"
},
"question2": {
"type": "textinput",
"name": "text_feedback",
"text": "Hier können sie Text Feedback geben",
"text": "Hier können Sie Text-Feedback geben",
"required": "false",
"size": "400"
},
"question6": {
"question3": {
"type": "videoinput",
"text": "Hier können sie per Video Feedback geben (max. 70 Sekunden)",
"text": "Hier können Sie Video-Feedback geben (max. 70 Sekunden)",
"name": "video_feedback",
"required": "false"
}