Compare commits

...

31 Commits
0.0.2 ... main

Author SHA1 Message Date
029ff239cc
feat(blog): add new features and improvements for LfK! 2025
All checks were successful
Build latest image / build-container (push) Successful in 1m29s
2025-05-17 17:07:03 +02:00
42323d94d8
fix: Added missing language tag
All checks were successful
Build latest image / build-container (push) Successful in 1m29s
2025-04-28 20:15:23 +02:00
2cbe906d47
docs(blog): Added new blog post 2025-04-28 20:15:12 +02:00
f8dea737d4
feat(blog): add videos & img
All checks were successful
Build latest image / build-container (push) Successful in 1m21s
2025-04-25 16:03:47 +02:00
4233361d65
chore: Added language codes
All checks were successful
Build latest image / build-container (push) Successful in 1m30s
2025-04-25 14:46:24 +02:00
4d2c993ba2
fix(setup): correct property type in registry modification command
All checks were successful
Build latest image / build-container (push) Successful in 1m28s
2025-04-25 14:37:36 +02:00
1497fa19d0
docs(kiosk): Disable widgets
All checks were successful
Build latest image / build-container (push) Successful in 1m26s
2025-04-25 14:33:22 +02:00
486115eb1b
docs(kiosk): Added script to disable windows shortcuts
All checks were successful
Build latest image / build-container (push) Successful in 1m27s
2025-04-25 14:29:17 +02:00
215fcc9f91
docs(kiosk): update setup instructions to disable sleep and hibernation
All checks were successful
Build latest image / build-container (push) Successful in 1m33s
2025-04-25 14:24:19 +02:00
1b93f54a76
Merge branch 'main' of git.odit.services:lfk/docs
All checks were successful
Build latest image / build-container (push) Successful in 1m28s
2025-04-25 13:29:22 +02:00
d3c71353cc
docs(kiosk): Added footer/header setup step 2025-04-25 13:29:18 +02:00
5d26fa8c33
fix(blog): typos
All checks were successful
Build latest image / build-container (push) Successful in 1m28s
2025-04-25 13:27:01 +02:00
b22d130631
fix(blog): Typo in filename
All checks were successful
Build latest image / build-container (push) Successful in 1m35s
2025-04-25 11:33:19 +02:00
813db4de78
fix(config): update menu structure and adjust weights for blog and search 2025-04-25 11:32:03 +02:00
3b0eb9ec46
docs(blog): fix typo in Kiosk feature description 2025-04-25 11:31:57 +02:00
3b84480a31
docs(blog): add new features and improvements blog posts in German and English 2025-04-25 11:31:03 +02:00
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
84 changed files with 953 additions and 4 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

@ -15,6 +15,7 @@ outputs:
section: [HTML, RSS]
markup:
defaultMarkdownHandler: goldmark
highlight:
noClasses: false
goldmark:
@ -60,17 +61,25 @@ 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
- identifier: blog
name: Blog/Updates
pageRef: /blog/
weight: 6
- name: Suche
identifier: search
weight: 6
weight: 8
params:
type: search
- name: Sourcecode
weight: 7
weight: 9
url: "https://git.odit.services/lfk"
params:
icon: gitea

View File

@ -1,6 +1,7 @@
---
title: Die Dokumentation für das LfK! Läufersystem
layout: hextra-home
lang: de
---
{{< hextra/hero-badge >}}
<div class="hx-w-2 hx-h-2 hx-rounded-full hx-bg-primary-400"></div>
@ -49,6 +50,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

@ -1,6 +1,7 @@
---
title: The Documentation for the LfK! Runner System
layout: hextra-home
lang: en
---
{{< hextra/hero-badge >}}
<div class="hx-w-2 hx-h-2 hx-rounded-full hx-bg-primary-400"></div>
@ -49,6 +50,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

@ -6,6 +6,7 @@ prev: /
next: /admin/quickstart
cascade:
type: docs
lang: de
---
Dieser Teil der Dokumentation befasst sich mit der Installation, Konfiguration und Bedienung des Läufersystems für normale Admins.

View File

@ -6,6 +6,7 @@ prev: /
next: /admin/quickstart
cascade:
type: docs
lang: en
---
This part of the documentation deals with the installation, configuration, and operation of the runner system for regular admins.

View File

@ -3,6 +3,7 @@ title: Schnellstart für Admins
weight: 2
prev: /admin
next: /admin/users
lang: de
---
Du willst das System schnell aufsetzen und testen? Dann bist du hier genau richtig!

View File

@ -3,6 +3,7 @@ title: Quick Start for Admins
weight: 2
prev: /admin
next: /admin/users
lang: en
---
Do you want to set up and test the system quickly? Then you are in the right place!

View File

@ -3,6 +3,7 @@ title: Benutzergruppen verwalten
weight: 4
prev: /admin/quickstart
next: /admin/usergroups
lang: de
---
Als Admin kannst du Benutzergruppen anlegen und Benutzer:innen in diese Einsortieren.

View File

@ -3,6 +3,7 @@ title: Manage User Groups
weight: 4
prev: /admin/quickstart
next: /admin/usergroups
lang: en
---
As an admin, you can create user groups and assign users to them.

View File

@ -3,6 +3,7 @@ title: Benutzer:innen verwalten
weight: 3
prev: /admin/quickstart
next: /admin/usergroups
lang: de
---
Als Admin kannst du Benutzer:innen anlegen.

View File

@ -3,6 +3,7 @@ title: Manage Users
weight: 3
prev: /admin/quickstart
next: /admin/usergroups
lang: en
---
As an admin, you can create users.

View File

@ -6,6 +6,7 @@ prev: /
next: /beamershow/config
cascade:
type: docs
lang: de
---
Die Beamershow zeigt live Statistiken zum aktuellen Event an.

View File

@ -6,6 +6,7 @@ prev: /
next: /beamershow/config
cascade:
type: docs
lang: en
---
The beamer show displays live statistics for the current event.

View File

@ -2,6 +2,7 @@
title: Beamershow Konfig
weight: 1
prev: /beamershow
lang: de
---
## Start

View File

@ -2,6 +2,7 @@
title: Beamershow Config
weight: 1
prev: /beamershow
lang: en
---
## Start

View File

@ -0,0 +1,80 @@
---
title: Neue Funktionen und Verbesserungen
date: 2025-04-25
authors:
- name: ODIT.Services
link: https://odit.services
image: https://odit.services/img/profile-pic-no_bg.webp
tags:
- Release
- Kiosk
- Frontend
- Dokumente
excludeSearch: true
description: "In den letzten Wochen haben wir an mehreren neuen Funktionen und Verbesserungen der Plattform gearbeitet. Dieser Beitrag gibt einen Überblick über die wichtigsten Änderungen."
lang: de
---
In den letzten Wochen haben wir an mehreren neuen Funktionen und Verbesserungen der Plattform gearbeitet.
Dieser Beitrag gibt einen Überblick über die wichtigsten Änderungen.
## Kiosk
### LfK! 2023 - Kiosk 0.6
Vor zwei Jahren haben wir das Kiosk-Feature eingeführt, um Läufer:innen die Anmeldung am Veranstaltungstag vor Ort zu ermöglichen.
Es handelte sich um ein recht einfaches Formular, in das Vor- und Nachname eingetragen werden konnten.
Nach dem Absenden wurde die Läufer-ID auf dem Bildschirm zusammen mit einem scannbaren Barcode angezeigt dieser wurde jedoch nur von den Helfern genutzt, die Karten an die neu registrierten Läufer:innen ausgaben.
Der Kiosk löste genau ein Problem: Die Namen der Läufer:innen mussten nicht mehr mühsam buchstabiert und manuell eingetippt (und nach dem unvermeidlichen Tippfehler erneut eingegeben) werden.
### Der neue Kiosk (1.2)
Der Hauptkritikpunkt am alten Kiosk war, dass die Kartenzuordnung für über der Kiosk registrierte Läufer:innen weiterhin umständlich war.
Man benötigte eine 1:1-Zuordnung von Kiosk-PCs zu Helfern, die Karten an die neu registrierten Läufer:innen ausgaben, was den Durchsatz des Kiosks begrenzte.
Der neue Kiosk ist als vollständige self-service Lösung konzipiert und ermöglicht einen höheren Durchsatz.
Um diese Ziele zu erreichen, haben wir folgende Funktionen eingeführt:
- **Anmeldung mit E-Mail**: Läufer:innen können bei der Anmeldung am Kiosk optional ihre E-Mail-Adresse angeben. Dadurch können sie das Self-Service-Portal nutzen, um ihre Anmeldedaten und Rundenzeiten einzusehen.
- **Self-Service QR-Code-Generierung**: Statt eines nichtssagenden Barcodes erzeugt der Kiosk nach der Anmeldung nun einen QR-Code. Dieser kann von den Läufer:innen gescannt werden, um das Self-Service-Portal zu öffnen und ihre Anmeldedaten einzusehen.
- **Bestätigungsdruck**: Ist das Kiosk mit einem Bondrucker verbunden, wird automatisch ein Bestätigungsbeleg mit den Anmeldedaten und dem QR-Code ausgedruckt. Der QR-Code kann von den Läufer:innen gescannt werden, um das Self-Service-Portal zu öffnen und ihre Anmeldedaten sowie Rundenzeiten einzusehen. Er kann auch von den Helfern zur Kartenzuordnung genutzt werden (siehe unten).
Dieses Video demonstriert die neuen Kiosk-Funktionen:
<video width="320" height="240" controls>
<source src="/images/kiosk.mp4" type="video/mp4">
</video>
![LfK! Kiosk Bon](/images/kiosk.jpg)
## Frontend
### Schnelle Läufer ↔️ Karten Zuordnung
Wir haben eine neue Ansicht im Admin-Panel implementiert, die es Helfern und Admins ermöglicht, schnell Karten an Läufer:innen zuzuordnen, die sich über der Kiosk registriert haben.
Diese Ansicht besteht hauptsächlich aus einem webbasierten QR-Code/Barcode-Scanner, der die vom Kiosk, den Bestätigungsbelegen und dem Self-Service-Portal generierten QR-Codes erkennt.
Sobald ein gültiger Code gescannt wurde, wechselt der Scanner in den Karten-Zuordnungsmodus und der Helfer muss nur noch den Barcode einer Karte vorhalten.
Dieses kurze Video zeigt die neue Karten-Zuordnungsfunktion:
<video width="320" height="240" controls>
<source src="/images/cardassign.mp4" type="video/mp4">
</video>
## Dokumente
### Performance-Verbesserungen
Der Dokumentenserver wurde komplett in Go neu geschrieben, um die Performance und Zuverlässigkeit zu verbessern.
Dies ist ein rein technischer Aspekt der Plattform und hat keine Auswirkungen auf die Nutzererfahrung.
### QR-Codes auf den Urkunden
Die Läuferurkunden enthalten nun zwei QR-Codes am unteren Rand der zweiten Seite:
- **Self-Service-Portal**: Der erste QR-Code führt zum Self-Service-Portal, in dem Läufer:innen ihre Anmeldedaten und Rundenzeiten einsehen können.
- **Zahlung**: Der zweite QR-Code ist ein EPC-Zahlungscode, der mit den meisten Banking-Apps gescannt werden kann und Empfänger, Verwendungszweck und Betrag für die mit dem Läufer verbundenen Spenden automatisch ausfüllt.
## Allgemein
- **Anmelde-Tracking**: Das Backend zeichnet nun die Anmeldequelle jeder Läufer:in auf. Dies wurde hauptsächlich implementiert, um die Nutzung des Kiosks und des Self-Service-Portals zu verfolgen.

View File

@ -0,0 +1,70 @@
---
title: New Features and Improvements
date: 2025-04-25
authors:
- name: ODIT.Services
link: https://odit.services
image: https://odit.services/img/profile-pic-no_bg.webp
tags:
- Release
- Kiosk
- Frontend
- Documents
excludeSearch: true
description: "Over the last few weeks we have been working on several new features and improvements to the platform. This post provides an overview of the most important changes."
lang: en
---
Over the last few weeks we have been working on several new features and improvements to the platform.
This post provides an overview of the most important changes.
## Kiosk
### LfK! 2023 - Kiosk 0.6
Two years ago, we introduced the Kiosk feature to allow runners to sign up in person on the day of the event.
It was a pretty basic form that allowed runners to enter their first name and last name.
After hitting enter the runner's ID was shown on the screen alongside a scannable barcode - but this was only used for the kisok attendees that assigned cards to the newly registered runners.
The kiosk fixed exactly one problem: Not needing to ask runners to spell their names out loud and having to type them in manually (and re-type them after the inevitable typo).
### The new kiosk (1.2)
The main pain point of the old kiosk was that it was still a hastle assign a card to a runner that registered via the kiosk.
You still needed a 1:1 assignment of kiosk pcs to helpers that assigned cards to the newly registered runners, limiting the throughput of the kiosk.
The new kiosk is designed to be completely self-service and allow for higher throughput.
To achieve these goals we have introduced the following features:
- **Signup with email**: Runners can optionally provide their email address when signing up via the kiosk. This allows them to use the runner self-service portal to view their registration details and lap times.
- **Self-service QR-Code generation**: Instead of some none-descript barcode the kiosk now generates a QR-Code after signup. This QR-Code can be scanned by the runner to open the self-service portal and view their registration details.
- **Confirmation printing**: If your kiosk hardware is connected to a receipt printer the kiosk automatically prints a confirmation slip with the runner's registration details and QR-Code. The QR-Code can be scanned by the runner to open the self-service portal and view their registration details and lap times. It can also be used by the helpers to assign a card to the runner (see below).
This video demonstrates the new kiosk features: TODO: Video
## Frontend
### Fast runner ↔️ card assignment
We implemented a new view in the admin panel that allows helpers and admins to quickly assign cards to runners that registered via the kiosk.
This view mainly consists of a web-based QR-Code/barcode scanner that can recognize the QR-Codes generated by the kiosk, confirmation slips and the self-service portal.
As soon as a valid code is scanned the scanner switches to card assignment mode and the helper just has to present a card's barcode to the scanner.
This short video demonstrates the new card assignment feature: TODO: Video
## Documents
### Performance improvements
The document server has been rewritten from scratch in go to improve performance and reliability.
This is just a technical aspect of the platform and does not change the user experience.
### QR-Codes on the certificates
The runner certificates now include two QR-Codes on the bottom of the second page:
- **Self-service portal**: The first QR-Code links to the self-service portal where runners can view their registration details and lap times.
- **Payment**: The second QR-Code is an EPC payment code that can be scanned via any banking app and automatically fills in the payment recipient, purpose and amount for the donations assoicated with the runner.
## General
- **Sign up tracking**: The backend now tracks the signup source of each runner. This was mainly implemented to allow us to track the usage of the kiosk and self-service portal.

View File

@ -0,0 +1,33 @@
---
title: Anonyme Spenden
date: 2025-04-28
authors:
- name: ODIT.Services
link: https://odit.services
image: https://odit.services/img/profile-pic-no_bg.webp
tags:
- Release
- Backend
- Frontend
- Spenden
excludeSearch: true
description: "Auf vielfachen Wunsch unserer selbst, haben wir eine neue Funktion zur Plattform hinzugefügt: Anonyme Spenden!"
lang: de
---
Bei den letzten Veranstaltungen haben wir gelegentlich Anfragen von Läufern erhalten, eine feste Summe anonym spenden zu können.
Das bedeutet, dass die Spende nicht mit einem bestimmten Läufer oder Spender verknüpft ist, aber dennoch in der Spendenstatistik angezeigt wird.
Meistens wurde dies bisher dadurch erreicht, dass Bargeld direkt an den Veranstalter übergeben wurde und dieses Geld dann nicht in die Spendenstatistik eingeflossen ist.
Dank [backend@1.4.0](https://git.odit.services/lfk/backend/releases/tag/1.4.0), [lib@1.2.5](https://www.npmjs.com/package/@odit/lfk-client-js/v/1.2.5) und [frontend@1.12.1](https://git.odit.services/lfk/frontend/releases/tag/1.12.1) gehört das nun der Vergangenheit an!
Wir haben eine neue Funktion zur Plattform hinzugefügt, mit der anonyme Spenden erstellt werden können.
Diese Funktion ist im Admin-Panel verfügbar und ermöglicht es, im Bereich „Spenden“ anonyme Spenden zu erfassen.
Einfach eine neue Spende hinzufügen, den Typ „Anonyme Spende“ auswählen und den gespendeten Betrag eintragen.
![Spende hinzufügen](/images/blog/2025-04-28_anonymous-donations_add.png)
Die Spende wird dann in der Spendenstatistik angezeigt, ist aber nicht mit einem bestimmten Läufer oder Spender verknüpft.
Sie erscheint außerdem in der Spendenübersicht im Admin-Panel und kann wie jede andere Spende gelöscht werden.
![Anonyme Spende in der Übersicht](/images/blog/2025-04-28_anonymous-donations_overview.png)

View File

@ -0,0 +1,33 @@
---
title: Anonymous Donations
date: 2025-04-28
authors:
- name: ODIT.Services
link: https://odit.services
image: https://odit.services/img/profile-pic-no_bg.webp
tags:
- Release
- Backend
- Frontend
- Donations
excludeSearch: true
description: "As requested by no one but ourselves we have added a new feature to the platform: Anonymous donations!"
lang: en
---
During the last events we sometimes received requests from runners to be able to donate a fixed anonymously.
This means that the donation is not linked to a specific runner or donor but will still be shown in the donation statistics.
Most of the time this was achived by just handing over cash to the event organizer and the cash not getting counted in the donation statistics.
This is now a thing of the past thanks to [backend@1.4.0](https://git.odit.services/lfk/backend/releases/tag/1.4.0), [lib@1.2.5](https://www.npmjs.com/package/@odit/lfk-client-js/v/1.2.5) and [frontend@1.12.1](https://git.odit.services/lfk/frontend/releases/tag/1.12.1)!
We have added a new feature to the platform that allows you to create anonymous donations.
This feature is available in the admin panel and allows you to create anonymous donations in the "Donations" section.
Just add a new donation, select the Type "Anonymous Donation" and enter the donated amount.
![Add donation](/images/blog/2025-04-28_anonymous-donations_add.png)
The donation will then be shown in the donation statistics but will not be linked to a specific runner or donor.
It will also be shown in the donation overview in the admin panel and can be deleted like any other donation.
![Anonymous donation in the overview](/images/blog/2025-04-28_anonymous-donations_overview.png)

View File

@ -0,0 +1,73 @@
---
title: Neues vor dem LfK! 2025
date: 2025-05-17
authors:
- name: ODIT.Services
link: https://odit.services
image: https://odit.services/img/profile-pic-no_bg.webp
tags:
- Release
- Frontend
- Feedback
- Tools
excludeSearch: true
description: "Kurz vor dem LfK! 2025 sind noch einige neue Funktionen und Verbesserungen auf der Plattform verfügbar. Dieser Beitrag gibt einen Überblick über die wichtigsten Änderungen."
lang: de
---
In unter einer Woche findet der LfK! 2025 statt und wir haben noch einige neue Funktionen und Verbesserungen auf der Plattform implementiert.
Dieser Beitrag gibt einen Überblick über die wichtigsten Änderungen.
## Frontend
Vor kurzem kam im Frontend für Admins die [Schnelle Kartenzuweisung](../2025-04-25_newfeatures#schnelle-läufer--karten-zuordnung) hinzu, die es ermöglicht, Karten schnell und einfach zuzuweisen.
Nach der guten Erfahrung mit diesem neuen Feature, haben wir noch ein paar weitere Tools ergänzt, die Admins und Helfern die Arbeit erleichtern sollen.
### Karten ersetzen
Gerade am Vormittag des Events kommt es häufig vor, dass Karten verloren gehen oder beschädigt werden.
Um die Arbeit der Helfer:innen zu erleichtern, haben wir ein neues Feature implementiert, das es ermöglicht, Karten schnell zu ersetzen.
Dabei kann die Läufer:in per ID oder Name gesucht werden und anschließend die Karte ersetzt werden, indem die neue Karte via Barcodescanner oder Smartphone-Kamera gescannt wird.
![Karte ersetzen](/images/blog/2025-05-19_replace_card.png)
### Mobiler Scanclient
Traditionell werden die Läuferkarten am Verantstaltungstag mit Hand-Barcode-Scannern gescannt, um die Rundenzeiten zu erfassen.
Dies ist auch immernoch die beste Methode, um die Rundenzeiten zu erfassen, da die Hand-Scanner eine hohe Scanrate haben und auch bei schlechten Lichtverhältnissen gut funktionieren.
Allerdings ist es nicht immer möglich, Hand-Scanner zu verwenden, z.B. wenn die Helfer:innen keine Hand-Scanner haben oder die Hand-Scanner nicht funktionieren.
Daher haben wir einen neuen mobilen Scanclient entwickelt, der es ermöglicht, Rundenzeiten mit einem Smartphone zu scannen.
Der Mobile Scanclient nutzt die Kamera des Smartphones, um Barcodes zu scannen und die Rundenzeiten zu erfassen.
![Mobiler Scanclient](/images/blog/2025-05-19_mobile_scanclient.png)
### Sponsoring-Schnellanlage
Tradition werden wenige Tage vor dem Event die Sponsoring-Verträge der Teilnehmer:innen eingesammelt und manuell über das Frontend eingepflegt.
Dabei musste bisher in zwei Ansichten gearbeitet werden:
1. In der Spnsoren-Übersicht, um Sponsoren zu suchen und/oder zu erstellen.
2. In der Sponsoring-Übersicht, um die Sponsorings zu ersten und zu bearbeiten.
In der neuen Schnelleingabe können Sponsoren und Sponsoring-Verträge in einer Ansicht erstellt werden. Dazu müssen nur folgende Schritte durchgeführt werden:
1. Läufer:in suchen (nach Name oder ID)
2. Sponsor Suchen oder neu erstellen
3. Betrag pro Kilometer eingeben
4. Sponsoring erstellen
![Neue Sponsoring-Schnelleingabe](/images/blog/2025-05-19_sponsoring_quick_add.png)
## Feedback
Wir wollten dieses Jahr beim LfK! 2025 QR-Codes aufhängen, über die uns Teilnehmer:innen Feedback geben können. Dafür haben wir verschiedene Tools ausprobiert und waren aber mit keinem wirklich zufrieden.
Was macht der gute Programmierer in so einem Fall? Er baut sich sein eigenes Tool! Und genau das haben wir getan.
Das neue Tool nimmt Feedback von Teilnehmer:innen entgegen, wobei eine Sterne-Wertung und ein Kommentar (+ optional die eigene E-Mail Adresse) abgegeben werden können.
![Feedback Form](/images/blog/2025-05-19_feedback_form.png)
In einem eigenen Admin-Bereich können die abgegebenen Bewertungen und Kommentare eingesehen und verwaltet werden.
Dabei gibt es neben ein paar Statistiken auch eine rudimentäre Sentiment-Analyse, die die abgegebenen Kommentare in positiv, neutral und negativ einteilt.
![Feedback Admin](/images/blog/2025-05-19_feedback_admin.png)

View File

@ -0,0 +1,73 @@
---
title: News before LfK! 2025
date: 2025-05-17
authors:
- name: ODIT.Services
link: https://odit.services
image: https://odit.services/img/profile-pic-no_bg.webp
tags:
- Release
- Frontend
- Feedback
- Tools
excludeSearch: true
description: "Shortly before LfK! 2025, several new features and improvements have been added to the platform. This post provides an overview of the most important changes."
lang: en
---
In less than a week, LfK! 2025 will take place, and we have implemented several new features and improvements on the platform.
This post provides an overview of the most important changes.
## Frontend
Recently, we added the [Quick Card Assignment](../2025-04-25_newfeatures#quick-runner--card-assignment) feature to the admin frontend, which makes it possible to assign cards quickly and easily.
After the positive experience with this new feature, we have added a few more tools to make the work of admins and helpers easier.
### Card Replacement
Especially on the morning of the event, cards often get lost or damaged.
To make the work of helpers easier, we have implemented a new feature that allows for quick card replacement.
The runner can be searched by ID or name, and then the card can be replaced by scanning the new card using a barcode scanner or smartphone camera.
![Replace Card](/images/blog/2025-05-19_replace_card.png)
### Mobile Scan Client
Traditionally, runner cards are scanned with handheld barcode scanners on the event day to record lap times.
This is still the best method to capture lap times, as handheld scanners have a high scan rate and work well even in poor lighting conditions.
However, it's not always possible to use handheld scanners, e.g., when helpers don't have handheld scanners or the scanners don't work.
Therefore, we have developed a new mobile scan client that allows for recording lap times with a smartphone.
The mobile scan client uses the smartphone's camera to scan barcodes and record lap times.
![Mobile Scan Client](/images/blog/2025-05-19_mobile_scanclient.png)
### Quick Sponsorship Creation
Traditionally, a few days before the event, participants' sponsorship contracts are collected and manually entered through the frontend.
Until now, this required working in two different views:
1. In the sponsors overview to search for and/or create sponsors.
2. In the sponsorship overview to create and edit sponsorships.
In the new quick entry form, sponsors and sponsorship contracts can be created in a single view. To do this, only the following steps need to be completed:
1. Search for a runner (by name or ID)
2. Search for or create a new sponsor
3. Enter the amount per kilometer
4. Create the sponsorship
![New Quick Sponsorship Creation](/images/blog/2025-05-19_sponsoring_quick_add.png)
## Feedback
This year at LfK! 2025, we wanted to post QR codes that participants could use to give us feedback. We tried various tools for this but weren't really satisfied with any of them.
What does a good programmer do in such a case? He builds his own tool! And that's exactly what we did.
The new tool accepts feedback from participants, allowing them to give a star rating and a comment (+ optionally their own email address).
![Feedback Form](/images/blog/2025-05-19_feedback_form.png)
In a dedicated admin area, the submitted ratings and comments can be viewed and managed.
In addition to some statistics, there is also a rudimentary sentiment analysis that categorizes the submitted comments as positive, neutral, or negative.
![Feedback Admin](/images/blog/2025-05-19_feedback_admin.png)

11
content/blog/_index.de.md Normal file
View File

@ -0,0 +1,11 @@
---
title: "Blog"
lang: de
---
<div style="text-align: center; margin-top: 1em;">
{{< hextra/hero-badge link="index.xml" >}}
<span>RSS Feed</span>
{{< icon name="rss" attributes="height=14" >}}
{{< /hextra/hero-badge >}}
</div>

11
content/blog/_index.en.md Normal file
View File

@ -0,0 +1,11 @@
---
title: "Blog"
lang: en
---
<div style="text-align: center; margin-top: 1em;">
{{< hextra/hero-badge link="index.xml" >}}
<span>RSS Feed</span>
{{< icon name="rss" attributes="height=14" >}}
{{< /hextra/hero-badge >}}
</div>

View File

@ -0,0 +1,23 @@
---
linkTitle: "Kiosk"
title: Kiosk
weight: 1
prev: /
next: /kiosk/setup
cascade:
type: docs
lang: de
---
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,23 @@
---
linkTitle: "Kiosk"
title: Kiosk
weight: 1
prev: /
next: /kiosk/setup
cascade:
type: docs
lang: en
---
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,28 @@
---
title: Konfiguration
weight: 3
prev: /kiosk/setup
lang: de
---
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,28 @@
---
title: Configuration
weight: 3
prev: /kiosk/setup
lang: en
---
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 %}}

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

@ -0,0 +1,184 @@
---
title: Kiosk Einrichtung
weight: 2
prev: /kiosk
next: /kiosk/config
lang: de
---
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
```
{{< /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
```
{{< /tab >}}
{{< /tabs >}}
6. Ruhezustand und Windows Tastenkombinationen deaktivieren
```powershell
$NullKey = [byte[]]($null,$null)
$LeftWindows = [byte[]](0x5b,0xe0)
$RightWindows = [byte[]](0x5c,0xe0)
$RemapCount = 2
$ReMap = [byte[]](
[Byte[]]::new(8) +
[BitConverter]::GetBytes(1+$RemapCount) +
$NullKey + $LeftWindows +
$NullKey + $RightWindows +
[Byte[]]::new(4)
)
$Splat = @{
'Path' = 'HKLM:\SYSTEM\CurrentControlSet\Control\Keyboard Layout'
'Name' = 'ScanCode Map'
'Value' = $Remap
'Force' = $True
}
New-ItemProperty @Splat
$RegistryPath = "HKLM:\SOFTWARE\Policies\Microsoft\Dsh"
$Name = "AllowNewsAndInterests"
$Value = 0
If (-not (Test-Path $RegistryPath)) {
New-Item -Path $RegistryPath -Force | Out-Null
}
New-ItemProperty -Path $RegistryPath -Name $Name -Value $Value -Type DWORD -Force | Out-Null
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
```
7. Nur für den Druck: Druck ohne Metadaten einrichten:
1. Lade die [Administrativen Richtlinienvorlagen für Edge](https://www.microsoft.com/de-de/edge/business/download) herunter (Neueste Version herunterladen -> Windows 64-bit -> Windows 64-bit-Richtlinie herunterladen)
2. Kopiere den Inhalt der ZIP-Datei aus dem `.cab`-Archiv nach `C:\Windows\PolicyDefinitions`.
3. Öffne den Gruppenrichtlinien-Editor (GPEdit) und navigiere zu `Computerkonfiguration -> Administrative Vorlagen -> Microsoft Edge -> Drucken`
4. Öffne die Richtlinie `Kopf- und Fußzeilen drucken`, setze sie auf `Deaktiviert` und klicke auf `OK`.
8. Neustarten via `shutdown -r -t 0` oder die Windows Benutzeroberfläche.
### 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
$Splat = @{
'Path' = 'HKLM:\SYSTEM\CurrentControlSet\Control\Keyboard Layout'
'Name' = 'ScanCode Map'
'Force' = $True
}
Remove-ItemProperty @Splat
$RegistryPath = "HKLM:\SOFTWARE\Policies\Microsoft\Dsh"
$Name = "AllowNewsAndInterests"
If (Test-Path -Path $RegistryPath) {
If (Get-ItemProperty -Path $RegistryPath -Name $Name -ErrorAction SilentlyContinue) {
Remove-ItemProperty -Path $RegistryPath -Name $Name -Force | Out-Null
}
}
```
## 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/>

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

@ -0,0 +1,186 @@
---
title: Kiosk Setup
weight: 2
prev: /kiosk
next: /kiosk/config
lang: en
---
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
```
{{< /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
```
{{< /tab >}}
{{< /tabs >}}
6. Disable sleep and hibernation alongside the windows button:
```powershell
$NullKey = [byte[]]($null,$null)
$LeftWindows = [byte[]](0x5b,0xe0)
$RightWindows = [byte[]](0x5c,0xe0)
$RemapCount = 2
$ReMap = [byte[]](
[Byte[]]::new(8) +
[BitConverter]::GetBytes(1+$RemapCount) +
$NullKey + $LeftWindows +
$NullKey + $RightWindows +
[Byte[]]::new(4)
)
$Splat = @{
'Path' = 'HKLM:\SYSTEM\CurrentControlSet\Control\Keyboard Layout'
'Name' = 'ScanCode Map'
'Value' = $Remap
'Force' = $True
}
New-ItemProperty @Splat
$RegistryPath = "HKLM:\SOFTWARE\Policies\Microsoft\Dsh"
$Name = "AllowNewsAndInterests"
$Value = 0
If (-not (Test-Path $RegistryPath)) {
New-Item -Path $RegistryPath -Force | Out-Null
}
New-ItemProperty -Path $RegistryPath -Name $Name -Value $Value -Type DWORD -Force | Out-Null
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
```
7. For print only: Setup printing without metadata:
1. Download the [Administrative Policy Templates for Edge](https://www.microsoft.com/en-en/edge/business/download) (Download the latest -> Windows 64-bit -> Download Windows 64-bit Policy)
2. Copy the Contents of the zip inside the `.cab` to `C:\Windows\PolicyDefinitions`.
3. Open GPEdit and navigate to `Computer Configuration -> Administrative Templates -> Microsoft Edge -> Printing`
4. Open the `Print headers and footers` policy, set it to `Disabled` and click `OK`.
8. Reboot via `shutdown -r -t 0` or the windows GUI.
### 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
$Splat = @{
'Path' = 'HKLM:\SYSTEM\CurrentControlSet\Control\Keyboard Layout'
'Name' = 'ScanCode Map'
'Force' = $True
}
Remove-ItemProperty @Splat
$RegistryPath = "HKLM:\SOFTWARE\Policies\Microsoft\Dsh"
$Name = "AllowNewsAndInterests"
If (Test-Path -Path $RegistryPath) {
If (Get-ItemProperty -Path $RegistryPath -Name $Name -ErrorAction SilentlyContinue) {
Remove-ItemProperty -Path $RegistryPath -Name $Name -Force | Out-Null
}
}
```
## 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

@ -6,6 +6,7 @@ prev: /
next: /scanstation/install
cascade:
type: docs
lang: de
---
Die Scannerstation ist die Kombination aus Hardware und Software, die dazu genutzt wird Läuferkarten zu scannen und damit gelaufene Distanzen im System zu erfassen.

View File

@ -6,6 +6,7 @@ prev: /
next: /scanstation/install
cascade:
type: docs
lang: en
---
The scanner station is the combination of hardware and software used to scan runner cards and record the distances run in the system.

View File

@ -2,6 +2,7 @@
title: Scannerstation Konfig
weight: 3
prev: /scanstation/install
lang: de
---
## Start

View File

@ -2,6 +2,7 @@
title: Scanner Station Configuration
weight: 3
prev: /scanstation/install
lang: en
---
## Start

View File

@ -2,6 +2,7 @@
title: Scannerkonfiguration
weight: 31
prev: /scanstation/config
lang: de
---
{{< callout type="warning" >}}

View File

@ -2,6 +2,7 @@
title: Scanner Configuration
weight: 32
prev: /scanstation/config
lang: en
---
{{< callout type="warning" >}}

View File

@ -2,6 +2,7 @@
title: Hardwareempfehlungen
weight: 4
prev: /scanstation/config
lang: de
---
Known-good Hardware, die wir für die Scannerstationen empfehlen können.

View File

@ -2,6 +2,7 @@
title: Hardware Recommendations
weight: 4
prev: /scanstation/config
lang: en
---
Known-good hardware that we can recommend for the scanning stations.

View File

@ -3,6 +3,7 @@ title: Scannerstation Installation
weight: 2
prev: /scanstation
next: /scanstation/config
lang: de
---
Es gibt aktuell zwei Varianten, um die Scanclient Software zu installieren/nutzen.

View File

@ -3,6 +3,7 @@ title: Scannerstation Installation
weight: 2
prev: /scanstation
next: /scanstation/config
lang: en
---
There are currently two ways to install/use the Scanclient software.

View File

@ -6,6 +6,7 @@ prev: /
next: /selfservice/orgs
cascade:
type: docs
lang: de
---
Der Selfservice bietet Läufer:innen sich selbst für den Lauf zu registrieren und ihre eigenen Daten einzusehen.

View File

@ -6,6 +6,7 @@ prev: /
next: /selfservice/orgs
cascade:
type: docs
lang: en
---
The self-service allows runners to register themselves for the run and view their own data.

View File

@ -2,8 +2,13 @@
title: Selfservice für Organisationen
weight: 1
prev: /selfservice
lang: de
---
{{< 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

@ -2,7 +2,11 @@
title: Selfservice for organizations
weight: 1
prev: /selfservice
lang: en
---
{{< 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

@ -3,6 +3,7 @@ linkTitle: "Nutzerdokumentation"
title: Einleitung
cascade:
type: docs
lang: de
---
Dieser Teil der Dokumentation befasst sich mit der Bedienung des Läufersystems für normale Nutzer:innen.
Solltest du an der Installation oder Konfiguration interessiert sein schau doch mal in den [Admin](../admin) Bereich.

View File

@ -3,6 +3,7 @@ linkTitle: "Nutzerdokumentation"
title: Einleitung
cascade:
type: docs
lang: en
---
This part of the documentation describes the interaction with the system for normal users.

View File

@ -1,6 +1,7 @@
---
title: Läuferkarten
weight: 9
lang: de
---
Läuferkarten dienen dazu [Trackscans](../scans) für [Läufer:innen](../runners) durch [Scannerstationen](../scanstations) zu erzeugen

View File

@ -1,6 +1,7 @@
---
title: Runner Cards
weight: 9
lang: en
---
Runner cards are used to generate [Trackscans](../scans) for [Runners](../runners) through [Scanner Stations](../scanstations).

View File

@ -1,6 +1,7 @@
---
title: Kontakte
weight: 5
lang: de
---
Kontakte dienen dem Customer Relation Management (CRM) und können beliebig vielen [Teams](../teams) und [Orgs](../teams) zugeordnet werden.

View File

@ -1,6 +1,7 @@
---
title: Contacts
weight: 5
lang: en
---
Contacts are used for Customer Relation Management (CRM) and can be assigned to any number of [Teams](../teams) and [Orgs](../teams).

View File

@ -1,6 +1,7 @@
---
title: Sponsoring-Erklärungen
weight: 10
lang: de
---
Das System kann für beliebige [Läufer:innen](../runners), [Teams](../teams) oder ganze [Organisationen](../orgs) Sponsoring-Erklärungen generieren.

View File

@ -1,6 +1,7 @@
---
title: Sponsorship Declarations
weight: 10
lang: en
---
The system can generate sponsorship declarations for any [runners](../runners), [teams](../teams), or entire [organizations](../orgs).

View File

@ -1,6 +1,7 @@
---
title: Sponsorings
weight: 9
lang: de
---
Sponsorings können entweder Festbetragsspenden oder Kilometerspenden sein.

View File

@ -1,6 +1,7 @@
---
title: Donations
weight: 9
lang: en
---
Sponsorships can either be fixed amount donations or kilometer donations.

View File

@ -1,6 +1,7 @@
---
title: Sponsor:innen
weight: 8
lang: de
---
Sponsor:innen sind die Spender, die mit einen Festbetrag oder eine Kilometerspende den Lauf für Kaya! unterstützen.

View File

@ -1,6 +1,7 @@
---
title: Donors
weight: 8
lang: en
---
Sponsors are the donors who support the Run for Kaya! with a fixed amount or a per-kilometer donation.

View File

@ -1,6 +1,7 @@
---
title: Läuferimport
weight: 7
lang: de
---
Um das Eintragen von Läufer:innen ins System zu erleichtern können Läufer aus Excel-Tabellen(CSV, XLSX) importiert werden.

View File

@ -1,6 +1,7 @@
---
title: Runner Import
weight: 7
lang: en
---
To facilitate the entry of runners into the system, runners can be imported from Excel spreadsheets (CSV, XLSX).

View File

@ -1,8 +1,12 @@
---
title: Organisationen
weight: 3
lang: de
---
{{< 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

@ -1,8 +1,13 @@
---
title: Organizations
weight: 3
lang: en
---
{{< 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

@ -1,6 +1,7 @@
---
title: Läufer:innen
weight: 6
lang: de
---
Läufer sind das Herzstück des Läufersystems.

View File

@ -1,6 +1,7 @@
---
title: Runners
weight: 6
lang: en
---
Runners are the heart of the runner system.

View File

@ -1,6 +1,7 @@
---
title: Scans
weight: 12
lang: de
---
Scans sind das Herzstück der Kilometerzählung - sie verbinden [Läufer:innen](../runners) mit zurückgeleter Distantz.

View File

@ -1,6 +1,7 @@
---
title: Scans
weight: 12
lang: en
---
Scans are the heart of kilometer tracking - they connect [runners](../runners) with the distance covered.

View File

@ -1,6 +1,7 @@
---
title: Scannerstationen
weight: 13
lang: de
---
{{< callout type="info" >}}

View File

@ -1,6 +1,7 @@
---
title: Scanner Stations
weight: 13
lang: en
---
{{< callout type="info" >}}

View File

@ -1,6 +1,7 @@
---
title: Teams
weight: 4
lang: de
---
Läuferteams sind die Untergruppen des Gruppensystems für Läufer:innen.
Ein Team kann eine Klasse, Abteilung, Gruppe oder ähnliches sein.

View File

@ -1,6 +1,7 @@
---
title: Teams
weight: 4
lang: en
---
Runner teams are the subgroups of the group system for runners.
A team can be a class, department, group, or similar.

View File

@ -1,6 +1,7 @@
---
title: Tracks
weight: 11
lang: de
---
Die Tracks sind im System hinterlegte Laufstrecken, auf basis derer die Distanzen für Scans berechnet werden.

View File

@ -1,6 +1,7 @@
---
title: Tracks
weight: 11
lang: en
---
Tracks are predefined running routes in the system, based on which distances for scans are calculated.

View File

@ -1,6 +1,7 @@
---
title: Nutzer:innen
weight: 2
lang: de
---
{{< callout type="info" >}}

View File

@ -1,6 +1,7 @@
---
title: Users
weight: 2
lang: en
---
{{< callout type="info" >}}

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.

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 253 KiB

Binary file not shown.

BIN
static/images/kiosk.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 MiB

BIN
static/images/kiosk.mp4 Normal file

Binary file not shown.