Compare commits

16 Commits

Author SHA1 Message Date
250e27c92e fix(kiosk): typo
All checks were successful
Build latest image / build-container (push) Successful in 1m33s
2025-04-15 17:39:03 +02:00
3b88ff42f3 docs(kiosk): Update kiosk setup instructions to use HTTPS and disable sleep settings
All checks were successful
Build latest image / build-container (push) Successful in 1m46s
2025-04-14 17:38:18 +02:00
7a9d498d96 docs(orgs): Add warning about not deleting the "Citizen" organization
All checks were successful
Build latest image / build-container (push) Successful in 1m23s
2025-04-14 17:09:16 +02:00
685006f629 docs(orgs): Add warning about not deleting the "Citizen" organization 2025-04-14 17:07:12 +02:00
e05e54fae7 docs(kiosk): Add navigation link and correct escape key instruction
All checks were successful
Build latest image / build-container (push) Successful in 1m18s
2025-04-12 18:19:23 +02:00
b81a6092f5 docs(kiosk): Add configuration instructions for kiosk setup 2025-04-12 18:19:19 +02:00
9cc7c7f27c docs(kiosk): Add instructions for using the kiosk with preferred browsers
All checks were successful
Build latest image / build-container (push) Successful in 1m24s
2025-04-12 18:13:47 +02:00
6c909a8374 docs(kiosk): Added with/without printer instructions 2025-04-12 18:10:00 +02:00
b828322da1 docs(kiosk): Updated escape sequence
All checks were successful
Build latest image / build-container (push) Successful in 1m20s
2025-04-12 17:50:53 +02:00
95f8aa6fcd docs(kiosk): Added printer hints 2025-04-12 17:50:36 +02:00
09853639cd docs: Added kiosk to menu and homepage
All checks were successful
Build latest image / build-container (push) Successful in 1m25s
2025-04-12 17:48:12 +02:00
759376ca13 docs(kiosk): Added sleep hints 2025-04-12 17:45:32 +02:00
3e7e82c8b5 docs(kiosk): Added kiosk setup docs
All checks were successful
Build latest image / build-container (push) Successful in 1m26s
2025-04-12 17:31:41 +02:00
d2ed34fe2b Merge branch 'main' of git.odit.services:lfk/docs
All checks were successful
Build latest image / build-container (push) Successful in 1m27s
2025-04-08 19:36:04 +02:00
0473960c1a feat(ci): Added build-number based tag 2025-04-08 19:35:48 +02:00
75d0af185c ci: drop displayUpdatedDate for now
All checks were successful
Build latest image / build-container (push) Successful in 2m31s
Build release images / build-container (push) Successful in 2m42s
2025-03-28 17:09:01 +01:00
17 changed files with 407 additions and 5 deletions

View File

@@ -26,4 +26,5 @@ jobs:
push: true
tags: |
${{ vars.REGISTRY }}/lfk/docs:latest
${{ vars.REGISTRY }}/lfk/docs:main-${{ gitea.run_number }}
platforms: linux/amd64,linux/arm64

View File

@@ -2,7 +2,7 @@ FROM hugomods/hugo:exts AS build
WORKDIR /app
COPY . /app/
COPY .git /app/.git
# COPY .git /app/.git
RUN hugo
FROM hugomods/hugo:nginx

View File

@@ -7,7 +7,6 @@ module:
- path: github.com/imfing/hextra
enableRobotsTXT: true
enableGitInfo: true
hasCJKLanguage: true
outputs:
@@ -61,10 +60,14 @@ menu:
name: Scannerstationen
pageRef: /scanstation
weight: 4
- identifier: kiosk
name: Kiosk
pageRef: /kiosk
weight: 5
- identifier: beamershow
name: Beamershow
pageRef: /beamershow
weight: 5
weight: 6
- name: Suche
identifier: search
weight: 6
@@ -78,7 +81,6 @@ menu:
params:
description: Dokumentation für das Lauf für Kaya! Läufersystem.
displayUpdatedDate: true
navbar:
displayTitle: true
displayLogo: true

View File

@@ -49,6 +49,12 @@ layout: hextra-home
style="background: radial-gradient(ellipse at 50% 80%,rgba(59,221,210,0.15),hsla(0,0%,100%,0));"
link="./scanstation"
>}}
{{< hextra/feature-card
title="Kiosk"
subtitle="Anmeldekiosk für den Bürgerlauf vor Ort."
style="background: radial-gradient(ellipse at 50% 80%,rgba(53,142,74,0.15),hsla(0,0%,100%,0));"
link="./kiosk"
>}}
{{< hextra/feature-card
title="Beamershow"
subtitle="Aktuelle Statistiken und Toplisten zum Event."

View File

@@ -49,6 +49,12 @@ layout: hextra-home
style="background: radial-gradient(ellipse at 50% 80%,rgba(59,221,210,0.15),hsla(0,0%,100%,0));"
link="./scanstation"
>}}
{{< hextra/feature-card
title="Kiosk"
subtitle="Self-service kiosk for the citizen run on site."
style="background: radial-gradient(ellipse at 50% 80%,rgba(53,142,74,0.15),hsla(0,0%,100%,0));"
link="./kiosk"
>}}
{{< hextra/feature-card
title="Beamer Show"
subtitle="Current statistics and top lists for the event."

View File

@@ -0,0 +1,22 @@
---
linkTitle: "Kiosk"
title: Kiosk
weight: 1
prev: /
next: /kiosk/setup
cascade:
type: docs
---
Der Kiosk kann verwendet werden, um sich vor Ort für die Veranstaltung anzumelden.
Es handelt sich um eine Webanwendung, die auf jedem Gerät mit einem Webbrowser genutzt werden kann, ist jedoch hauptsächlich für die Verwendung mit dedizierter Hardware (z.B. Tablets) vorgesehen.
Der Kiosk ist für den Einsatz im öffentlichen Raum konzipiert und sollte daher einfach zu bedienen sein und keine besonderen Kenntnisse oder Schulungen erfordern.
## Bevorzugte Hardware
Wir empfehlen Hardware, die über einen Touchscreen und eine Tastatur verfügt.
Dies ermöglicht eine einfache Dateneingabe und macht den Kiosk benutzerfreundlicher.
Die Hardware sollte außerdem robust sein und starker Beanspruchung standhalten können, da sie während der Veranstaltung von vielen Personen genutzt wird.
Bonuspunkte, wenn das System einen Belegdrucker enthält, der es ermöglicht, Anmeldebelege direkt vom Kiosk auszudrucken.
Diese Belege enthalten einen QR-Code, der bei der Anmeldung gescannt werden kann, um den Benutzer zu registrieren, und vom Benutzer, um auf unser Self-Service-Portal zuzugreifen.

View File

@@ -0,0 +1,22 @@
---
linkTitle: "Kiosk"
title: Kiosk
weight: 1
prev: /
next: /kiosk/setup
cascade:
type: docs
---
The kiosk can be used to sign up to the event on site.
It's a web application that can be used on any device with a web browser, but is primarily intended for use with dedicated hardware (e.g. tablets).
The kiosk is designed to be used in a public space, so it should be easy to use and not require any special knowledge or training.
## Prefered Hardware
We recomend hardware that has a touchscreen and a keyboard.
This allows for easy input of data and makes the kiosk more user-friendly.
The hardware should also be durable and able to withstand heavy use, as it will be used by many people during the event.
Bonus points if the system includes a receipt printer, this allows for registration receipts to be printed directly from the kiosk.
These receipts include a QR code that can be scanned at signup to register the user and by the user to access our self-service portal.

View File

@@ -0,0 +1,27 @@
---
title: Konfiguration
weight: 3
prev: /kiosk/setup
---
Wie du den Kiosk nach der Einrichtung konfigurierst.
{{% steps %}}
### Benutzer erstellen
Erstelle einen neuen Benutzer im System - vorzugsweise mit dem Namen `kiosk`.
Weitere Informationen zum Erstellen eines Benutzers findest du in der [Admindokumentation](../admin/users).
### Berechtigungen zuweisen
Der Benutzer benötigt folgende Berechtigungen:
- `RUNNER:CREATE`
Weitere Informationen zum Zuweisen von Berechtigungen findest du in der [Admindokumentation](../admin/users).
### Anmelden
Melde dich auf deinem Kiosk-Gerät mit dem Benutzer an, den du im vorherigen Schritt erstellt hast.
{{% /steps %}}

View File

@@ -0,0 +1,27 @@
---
title: Configuration
weight: 3
prev: /kiosk/setup
---
How to configure the kiosk after setup.
{{% steps %}}
### Create user
Create a new user in the system - preferably with the name `kiosk`.
Please refer to the [admin docs](../admin/users) for more information on how to create a user.
### Assign permissions
The user needs the following permissions:
- `RUNNER:CREATE`
Please refer to the [admin docs](../admin/users) for more information on how to assign permissions.
### Login
Login in on your kiosk device with the user you created in the previous step.
{{% /steps %}}

137
content/kiosk/setup.de.md Normal file
View File

@@ -0,0 +1,137 @@
---
title: Kiosk Einrichtung
weight: 2
prev: /kiosk
next: /kiosk/config
---
So richten Sie den Kiosk für die Veranstaltung ein.
## Mit Windows Assigned Access
{{< callout type="info" >}}
Dies wurde nur auf Windows 11 Pro und Enterprise getestet.
{{< /callout >}}
### Voraussetzungen
- Windows 11 Pro oder Enterprise
- Nur ein konfigurierter Drucker oder Belegdrucker als Standarddrucker eingerichtet - du kannst die Druckfunktion deaktivieren, aber mit Drucker ist die Benutzererfahrung besser
- Administratorzugriff auf das System
### Einrichtung
1. Laden Sie [psexec](/files/psexec.exe) herunter
2. Öffnen Sie eine PowerShell mit Administratorrechten
3. Wechseln Sie zum Download-Ordner `cd C:\Users\<Benutzername>\Downloads`
4. Führe den psexec-Befehl aus: `.\psexec.exe -i -s powershell.exe`
5. Führe das folgende Skript aus
{{< tabs items="Mit Drucker, Ohne Drucker" >}}
{{< tab >}}
```powershell
$assignedAccessConfiguration = @"
<?xml version="1.0" encoding="utf-8"?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config" xmlns:rs5="http://schemas.microsoft.com/AssignedAccess/201810/config" xmlns:v4="http://schemas.microsoft.com/AssignedAccess/2021/config">
<Profiles>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}">
<KioskModeApp v4:ClassicAppPath="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" v4:ClassicAppArguments="--kiosk https://kiosk.lauf-fuer-kaya.de/?print=true --kiosk-printing --edge-kiosk-type=fullscreen" />
<v4:BreakoutSequence Key="Ctrl+E" />
</Profile>
</Profiles>
<Configs>
<Config>
<AutoLogonAccount rs5:DisplayName="Lfk Kiosk" />
<DefaultProfile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" />
</Config>
</Configs>
</AssignedAccessConfiguration>
"@
$namespaceName="root\cimv2\mdm\dmmap"
$className="MDM_AssignedAccess"
$obj = Get-CimInstance -Namespace $namespaceName -ClassName $className
$obj.Configuration = [System.Net.WebUtility]::HtmlEncode($assignedAccessConfiguration)
Set-CimInstance -CimInstance $obj
powercfg.exe -x -monitor-timeout-ac 0
powercfg.exe -x -monitor-timeout-dc 0
powercfg.exe -x -disk-timeout-ac 0
powercfg.exe -x -disk-timeout-dc 0
powercfg.exe -x -standby-timeout-ac 0
powercfg.exe -x -standby-timeout-dc 0
powercfg.exe -x -hibernate-timeout-ac 0
powercfg.exe -x -hibernate-timeout-dc 0
```
{{< /tab >}}
{{< tab >}}
```powershell
$assignedAccessConfiguration = @"
<?xml version="1.0" encoding="utf-8"?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config" xmlns:rs5="http://schemas.microsoft.com/AssignedAccess/201810/config" xmlns:v4="http://schemas.microsoft.com/AssignedAccess/2021/config">
<Profiles>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}">
<KioskModeApp v4:ClassicAppPath="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" v4:ClassicAppArguments="--kiosk https://kiosk.lauf-fuer-kaya.de/ --kiosk-printing --edge-kiosk-type=fullscreen" />
<v4:BreakoutSequence Key="Ctrl+E" />
</Profile>
</Profiles>
<Configs>
<Config>
<AutoLogonAccount rs5:DisplayName="Lfk Kiosk" />
<DefaultProfile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" />
</Config>
</Configs>
</AssignedAccessConfiguration>
"@
$namespaceName="root\cimv2\mdm\dmmap"
$className="MDM_AssignedAccess"
$obj = Get-CimInstance -Namespace $namespaceName -ClassName $className
$obj.Configuration = [System.Net.WebUtility]::HtmlEncode($assignedAccessConfiguration)
Set-CimInstance -CimInstance $obj
powercfg.exe -x -monitor-timeout-ac 0
powercfg.exe -x -monitor-timeout-dc 0
powercfg.exe -x -disk-timeout-ac 0
powercfg.exe -x -disk-timeout-dc 0
powercfg.exe -x -standby-timeout-ac 0
powercfg.exe -x -standby-timeout-dc 0
powercfg.exe -x -hibernate-timeout-ac 0
powercfg.exe -x -hibernate-timeout-dc 0
```
{{< /tab >}}
{{< /tabs >}}
6. Reboot via `shutdown -r -t 0`
### Deinstallation
1. Um den Kiosk-Modus zu verlassen, drücken Sie `Strg+E`
2. Öffnen Sie eine PowerShell mit Administratorrechten
3. Wechseln Sie zum Desktop-Ordner (C:\Users\<Benutzername>\Desktop)
4. Führen Sie den psexec-Befehl aus: `psexec.exe -i -s powershell.exe`
5. Führen Sie das folgende Skript aus
```powershell
$namespaceName="root\cimv2\mdm\dmmap"
$className="MDM_AssignedAccess"
$obj = Get-CimInstance -Namespace $namespaceName -ClassName $className
$obj.Configuration = $null
Set-CimInstance -CimInstance $obj
```
## Mit deinem bevorzugten Browser
{{< callout type="warning" >}}
Die Möglichkeit, den Browser zu verlassen und/oder DevTools zu öffnen, könnte standardmäßig verfügbar sein.
Bitte prüfe, ob dein Browser einen Kiosk-Modus unterstützt und wie du ihn einrichten kannst.
{{< /callout >}}
{{< callout type="warning" >}}
Dein Browser unterstützt möglicherweise nicht das Drucken ohne Dialog.
Bitte prüfe, ob dein Browser diese Funktion unterstützt und wie du sie einrichten kannst.
{{< /callout >}}
Öffne einfach den Link in deinem bevorzugten Browser und nutze den Kiosk-Modus deines Browsers:
- Mit automatischem Druck: <https://kiosk.lauf-fuer-kaya.de/?print=true>
- Ohne automatischen Druck: <https://kiosk.lauf-fuer-kaya.de/>

137
content/kiosk/setup.en.md Normal file
View File

@@ -0,0 +1,137 @@
---
title: Kiosk Setup
weight: 2
prev: /kiosk
next: /kiosk/config
---
How to set up the kiosk for the event.
## With Windows Assigned Access
{{< callout type="info" >}}
This is only tested on windows 11 pro and enterprise.
{{< /callout >}}
### Prerequesites
- Windows 11 Pro or Enterprise
- Only one configured printer or receipt printer configured as default printer - you can disable printing but it's cooler to have it
- Admin access to the system
### Setup
1. Download [psexec](/files/psexec.exe)
2. Open a admin windows PowerShell prompt
3. Cd to Downloads `cd C:\Users\<Username>\Downloads`
4. Run the psexec command: `.\psexec.exe -i -s powershell.exe`
5. Run the following script
{{< tabs items="With printing, Without printing" >}}
{{< tab >}}
```powershell
$assignedAccessConfiguration = @"
<?xml version="1.0" encoding="utf-8"?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config" xmlns:rs5="http://schemas.microsoft.com/AssignedAccess/201810/config" xmlns:v4="http://schemas.microsoft.com/AssignedAccess/2021/config">
<Profiles>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}">
<KioskModeApp v4:ClassicAppPath="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" v4:ClassicAppArguments="--kiosk https://kiosk.lauf-fuer-kaya.de/?print=true --kiosk-printing --edge-kiosk-type=fullscreen" />
<v4:BreakoutSequence Key="Ctrl+E" />
</Profile>
</Profiles>
<Configs>
<Config>
<AutoLogonAccount rs5:DisplayName="Lfk Kiosk" />
<DefaultProfile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" />
</Config>
</Configs>
</AssignedAccessConfiguration>
"@
$namespaceName="root\cimv2\mdm\dmmap"
$className="MDM_AssignedAccess"
$obj = Get-CimInstance -Namespace $namespaceName -ClassName $className
$obj.Configuration = [System.Net.WebUtility]::HtmlEncode($assignedAccessConfiguration)
Set-CimInstance -CimInstance $obj
powercfg.exe -x -monitor-timeout-ac 0
powercfg.exe -x -monitor-timeout-dc 0
powercfg.exe -x -disk-timeout-ac 0
powercfg.exe -x -disk-timeout-dc 0
powercfg.exe -x -standby-timeout-ac 0
powercfg.exe -x -standby-timeout-dc 0
powercfg.exe -x -hibernate-timeout-ac 0
powercfg.exe -x -hibernate-timeout-dc 0
```
{{< /tab >}}
{{< tab >}}
```powershell
$assignedAccessConfiguration = @"
<?xml version="1.0" encoding="utf-8"?>
<AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config" xmlns:rs5="http://schemas.microsoft.com/AssignedAccess/201810/config" xmlns:v4="http://schemas.microsoft.com/AssignedAccess/2021/config">
<Profiles>
<Profile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}">
<KioskModeApp v4:ClassicAppPath="%ProgramFiles(x86)%\Microsoft\Edge\Application\msedge.exe" v4:ClassicAppArguments="--kiosk https://kiosk.lauf-fuer-kaya.de/ --kiosk-printing --edge-kiosk-type=fullscreen" />
<v4:BreakoutSequence Key="Ctrl+E" />
</Profile>
</Profiles>
<Configs>
<Config>
<AutoLogonAccount rs5:DisplayName="Lfk Kiosk" />
<DefaultProfile Id="{EDB3036B-780D-487D-A375-69369D8A8F78}" />
</Config>
</Configs>
</AssignedAccessConfiguration>
"@
$namespaceName="root\cimv2\mdm\dmmap"
$className="MDM_AssignedAccess"
$obj = Get-CimInstance -Namespace $namespaceName -ClassName $className
$obj.Configuration = [System.Net.WebUtility]::HtmlEncode($assignedAccessConfiguration)
Set-CimInstance -CimInstance $obj
powercfg.exe -x -monitor-timeout-ac 0
powercfg.exe -x -monitor-timeout-dc 0
powercfg.exe -x -disk-timeout-ac 0
powercfg.exe -x -disk-timeout-dc 0
powercfg.exe -x -standby-timeout-ac 0
powercfg.exe -x -standby-timeout-dc 0
powercfg.exe -x -hibernate-timeout-ac 0
powercfg.exe -x -hibernate-timeout-dc 0
```
{{< /tab >}}
{{< /tabs >}}
6. Reboot via `shutdown -r -t 0`
### Teardown
1. To escape the experience press `Ctrl+E`
2. Open a admin windows PowerShell prompt
3. Cd to Desktop (C:\Users\<Username>\Desktop
4. Run the psexec command: `psexec.exe -i -s powershell.exe`
5. Run the following script
```powershell
$namespaceName="root\cimv2\mdm\dmmap"
$className="MDM_AssignedAccess"
$obj = Get-CimInstance -Namespace $namespaceName -ClassName $className
$obj.Configuration = $null
Set-CimInstance -CimInstance $obj
```
## With your favourite browser
{{< callout type="warning" >}}
The ability to exit the browser and/or open devtools may be available by default.
Please check if your browser supports a kiosk mode and how to set it up.
{{< /callout >}}
{{< callout type="warning" >}}
Your browser might not support printing without a dialog.
Please check if your browser supports this feature and how to set it up.
{{< /callout >}}
Just open the link in your favourite browser and use the kiosk mode of your browser:
- With auto-printing: <https://kiosk.lauf-fuer-kaya.de/?print=true>
- Without auto-printing: <https://kiosk.lauf-fuer-kaya.de/>

View File

@@ -4,6 +4,10 @@ weight: 1
prev: /selfservice
---
{{< callout type="warning" >}}
Für den Bürgerlauf gibt es die Org "Citizen" (ID 1), die nicht gelöscht werden sollte.
{{< /callout >}}
Läufer:innen von Firmen und andere Institutionen können sich über den Selfservice für den Lauf registrieren.
So werden sie automatisch im System angelegt und bekommen per Mail einen Link zugesendet, mit dem sie ihre persönlichen Daten und Rundenzeiten ansehen können.

View File

@@ -3,6 +3,9 @@ title: Selfservice for organizations
weight: 1
prev: /selfservice
---
{{< callout type="warning" >}}
The org "Citizen" (ID 1) is reserved for the citizen run event and should not be deleted.
{{< /callout >}}
Runners from companies and other institutions can register for the run through the self-service. They will be automatically added to the system and receive a link via email to view their personal data and lap times.

View File

@@ -2,7 +2,10 @@
title: Organisationen
weight: 3
---
{{< callout type="warning" >}}
Du solltest die Organisation "Citizen" (ID 1 standardmäßig) nicht löschen.
Sie wird für den [Selfservice](../../selfservice) benötigt.
{{< /callout >}}
{{< callout type="info" >}}
Solltest du dich für den Selfservice für Orgs interessieren findest du die Dokumentation zu [hier](../../selfservice/orgs).
{{< /callout >}}

View File

@@ -3,6 +3,10 @@ title: Organizations
weight: 3
---
{{< callout type="warning" >}}
You are not allowed to delete the organization "Citizen" (ID 1 by default).
It is required by the [selfservice](../../selfservice)
{{< /callout >}}
{{< callout type="info" >}}
If you are interested in the self-service for organizations, you can find the documentation [here](../../selfservice/orgs).
{{< /callout >}}

View File

@@ -2,6 +2,7 @@ user: User
admin: Administrators
selfservice: Selfservice
scanstation: Scanning Stations
kiosk: Kiosk
beamershow: Beamer Show
search: Search
editThisPage: "Edit this page →"

BIN
static/files/psexec.exe Normal file

Binary file not shown.