Compare commits
No commits in common. "ca8373e383e07584818d52423a00adf314eea8d9" and "37c89bedae98d628c50a0f929f2f1e88fd1cf12f" have entirely different histories.
ca8373e383
...
37c89bedae
33
.argo/application.yaml
Normal file
@ -0,0 +1,33 @@
|
||||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
annotations:
|
||||
argocd-image-updater.argoproj.io/image-list: docs=registry.odit.services/lfk/docs:latest
|
||||
argocd-image-updater.argoproj.io/write-back-method: argocd
|
||||
argocd-image-updater.argoproj.io/update-strategy: digest
|
||||
argocd-image-updater.argoproj.io/docs.pull-secret: pullsecret:argocd/registry-odit-services
|
||||
name: docs-lfk-de
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: lfk
|
||||
source:
|
||||
repoURL: "git@git.odit.services:lfk/docs.git"
|
||||
path: .argo
|
||||
targetRevision: main
|
||||
destination:
|
||||
name: odit-h2
|
||||
namespace: lfk
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
allowEmpty: false
|
||||
syncOptions:
|
||||
- PruneLast=true
|
||||
- CreateNamespace=true
|
||||
retry:
|
||||
limit: 5
|
||||
backoff:
|
||||
duration: 20s
|
||||
factor: 2
|
||||
maxDuration: 7m
|
14
.argo/cert.yaml
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: docs-lfk-de-cert
|
||||
namespace: lfk
|
||||
spec:
|
||||
commonName: docs.lauf-fuer-kaya.de
|
||||
secretName: docs-lfk-de-cert
|
||||
dnsNames:
|
||||
- docs.lauf-fuer-kaya.de
|
||||
issuerRef:
|
||||
name: letsencrypt-prod-dns
|
||||
kind: ClusterIssuer
|
58
.argo/deployment.yaml
Normal file
@ -0,0 +1,58 @@
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: docs-lfk-de
|
||||
namespace: lfk
|
||||
labels:
|
||||
app: docs-lfk-de
|
||||
spec:
|
||||
replicas: 1
|
||||
revisionHistoryLimit: 10
|
||||
strategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxSurge: 1
|
||||
maxUnavailable: 0
|
||||
selector:
|
||||
matchLabels:
|
||||
app: docs-lfk-de
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: docs-lfk-de
|
||||
spec:
|
||||
containers:
|
||||
- name: docs-lfk-de
|
||||
image: registry.odit.services/lfk/docs:latest
|
||||
imagePullPolicy: IfNotPresent
|
||||
ports:
|
||||
- containerPort: 80
|
||||
name: web
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
memory: 10Mi
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 128Mi
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /health/
|
||||
port: 80
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 3
|
||||
successThreshold: 4
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /health/
|
||||
port: 80
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 3
|
||||
lifecycle:
|
||||
preStop:
|
||||
exec:
|
||||
command: ["/bin/sh", "-c", "sleep 10"]
|
||||
imagePullSecrets:
|
||||
- name: registry-odit-services
|
||||
restartPolicy: Always
|
12
.argo/dns.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
apiVersion: externaldns.k8s.io/v1alpha1
|
||||
kind: DNSEndpoint
|
||||
metadata:
|
||||
name: docs-lfk-de-dns
|
||||
namespace: lfk
|
||||
spec:
|
||||
endpoints:
|
||||
- dnsName: docs.lauf-fuer-kaya.de
|
||||
recordTTL: 180
|
||||
recordType: CNAME
|
||||
targets:
|
||||
- k.odit.services
|
17
.argo/ingress.yaml
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: IngressRoute
|
||||
metadata:
|
||||
name: docs-lfk-de
|
||||
namespace: lfk
|
||||
spec:
|
||||
entryPoints:
|
||||
- websecure
|
||||
routes:
|
||||
- match: Host(`docs.lauf-fuer-kaya.de`)
|
||||
kind: Rule
|
||||
services:
|
||||
- name: docs-lfk-de
|
||||
port: 80
|
||||
tls:
|
||||
secretName: docs-lfk-de-cert
|
7
.argo/kustomization.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
namespace: lfk
|
||||
resources:
|
||||
- deployment.yaml
|
||||
- service.yaml
|
||||
- ingress.yaml
|
||||
- cert.yaml
|
||||
- dns.yaml
|
15
.argo/service.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: docs-lfk-de
|
||||
namespace: lfk
|
||||
labels:
|
||||
app: docs-lfk-de
|
||||
spec:
|
||||
ports:
|
||||
- port: 80
|
||||
name: web
|
||||
selector:
|
||||
app: docs-lfk-de
|
||||
type: ClusterIP
|
142
.dockerignore
@ -1,2 +1,140 @@
|
||||
*lock
|
||||
public/**
|
||||
# ---> VisualStudioCode
|
||||
.vscode/*
|
||||
!.vscode/settings.json
|
||||
!.vscode/tasks.json
|
||||
!.vscode/launch.json
|
||||
!.vscode/extensions.json
|
||||
!.vscode/i18n-ally-custom-framework.yml
|
||||
*.code-workspace
|
||||
|
||||
# Local History for Visual Studio Code
|
||||
.history/
|
||||
|
||||
# ---> Node
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.*
|
||||
|
||||
yarn.lock
|
||||
package-lock.json
|
||||
build
|
||||
|
||||
*.sqlite
|
||||
*.sqlite-jurnal
|
||||
/docs
|
||||
lib
|
||||
/oss-attribution
|
||||
*.tmp
|
144
.gitignore
vendored
@ -1,2 +1,142 @@
|
||||
.hugo_build.lock
|
||||
public
|
||||
# ---> VisualStudioCode
|
||||
.vscode/*
|
||||
!.vscode/settings.json
|
||||
!.vscode/tasks.json
|
||||
!.vscode/launch.json
|
||||
!.vscode/extensions.json
|
||||
!.vscode/i18n-ally-custom-framework.yml
|
||||
*.code-workspace
|
||||
|
||||
# Local History for Visual Studio Code
|
||||
.history/
|
||||
|
||||
# ---> Node
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
lerna-debug.log*
|
||||
|
||||
# Diagnostic reports (https://nodejs.org/api/report.html)
|
||||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
||||
|
||||
# Runtime data
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
*.pid.lock
|
||||
|
||||
# Directory for instrumented libs generated by jscoverage/JSCover
|
||||
lib-cov
|
||||
|
||||
# Coverage directory used by tools like istanbul
|
||||
coverage
|
||||
*.lcov
|
||||
|
||||
# nyc test coverage
|
||||
.nyc_output
|
||||
|
||||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
||||
.grunt
|
||||
|
||||
# Bower dependency directory (https://bower.io/)
|
||||
bower_components
|
||||
|
||||
# node-waf configuration
|
||||
.lock-wscript
|
||||
|
||||
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
||||
build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
web_modules/
|
||||
|
||||
# TypeScript cache
|
||||
*.tsbuildinfo
|
||||
|
||||
# Optional npm cache directory
|
||||
.npm
|
||||
|
||||
# Optional eslint cache
|
||||
.eslintcache
|
||||
|
||||
# Microbundle cache
|
||||
.rpt2_cache/
|
||||
.rts2_cache_cjs/
|
||||
.rts2_cache_es/
|
||||
.rts2_cache_umd/
|
||||
|
||||
# Optional REPL history
|
||||
.node_repl_history
|
||||
|
||||
# Output of 'npm pack'
|
||||
*.tgz
|
||||
|
||||
# Yarn Integrity file
|
||||
.yarn-integrity
|
||||
|
||||
# dotenv environment variables file
|
||||
.env
|
||||
.env.test
|
||||
|
||||
# parcel-bundler cache (https://parceljs.org/)
|
||||
.cache
|
||||
.parcel-cache
|
||||
|
||||
# Next.js build output
|
||||
.next
|
||||
out
|
||||
|
||||
# Nuxt.js build / generate output
|
||||
.nuxt
|
||||
dist
|
||||
|
||||
# Gatsby files
|
||||
.cache/
|
||||
# Comment in the public line in if your project uses Gatsby and not Next.js
|
||||
# https://nextjs.org/blog/next-9-1#public-directory-support
|
||||
# public
|
||||
|
||||
# vuepress build output
|
||||
.vuepress/dist
|
||||
|
||||
# Serverless directories
|
||||
.serverless/
|
||||
|
||||
# FuseBox cache
|
||||
.fusebox/
|
||||
|
||||
# DynamoDB Local files
|
||||
.dynamodb/
|
||||
|
||||
# TernJS port file
|
||||
.tern-port
|
||||
|
||||
# Stores VSCode versions used for testing VSCode extensions
|
||||
.vscode-test
|
||||
|
||||
# yarn v2
|
||||
.yarn/cache
|
||||
.yarn/unplugged
|
||||
.yarn/build-state.yml
|
||||
.yarn/install-state.gz
|
||||
.pnp.*
|
||||
|
||||
yarn.lock
|
||||
package-lock.json
|
||||
build
|
||||
|
||||
*.sqlite
|
||||
*.sqlite-jurnal
|
||||
/docs
|
||||
lib
|
||||
/oss-attribution
|
||||
*.tmp
|
||||
pnpm-lock.yaml
|
||||
.argo/secret.yaml
|
||||
|
12
.npmignore
Normal file
@ -0,0 +1,12 @@
|
||||
pids
|
||||
logs
|
||||
node_modules
|
||||
npm-debug.log
|
||||
coverage/
|
||||
run
|
||||
dist
|
||||
.DS_Store
|
||||
.nyc_output
|
||||
.basement
|
||||
config.local.js
|
||||
basement_dist
|
20
.woodpecker/build.yml
Normal file
@ -0,0 +1,20 @@
|
||||
steps:
|
||||
- name: build latest
|
||||
image: woodpeckerci/plugin-docker-buildx
|
||||
settings:
|
||||
repo: registry.odit.services/lfk/docs
|
||||
tags:
|
||||
- latest
|
||||
registry: registry.odit.services
|
||||
platforms: linux/amd64,linux/arm64
|
||||
cache_from: registry.odit.services/lfk/docs:latest
|
||||
username:
|
||||
from_secret: odit-registry-builder-username
|
||||
password:
|
||||
from_secret: odit-registry-builder-password
|
||||
secrets:
|
||||
- source: odit-npm-cache-url
|
||||
target: NPM_REGISTRY_URL
|
||||
when:
|
||||
branch: main
|
||||
event: push
|
22
Dockerfile
@ -1,8 +1,14 @@
|
||||
FROM hugomods/hugo:exts AS build
|
||||
WORKDIR /app
|
||||
|
||||
COPY . /app/
|
||||
RUN hugo
|
||||
|
||||
FROM hugomods/hugo:nginx
|
||||
COPY --from=build /app/public /site
|
||||
FROM registry.odit.services/hub/library/node:16-alpine3.16 AS build
|
||||
ARG NPM_REGISTRY_URL=https://registry.npmjs.org
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json *.config.cjs *.config.js ./
|
||||
RUN npm config set registry $NPM_REGISTRY_URL && npm i -g pnpm@7.29.3
|
||||
RUN pnpm i
|
||||
COPY . ./
|
||||
RUN pnpm build
|
||||
|
||||
# final image
|
||||
FROM registry.odit.services/library/nginx-brotli:latest
|
||||
COPY --from=build /app/src/.vuepress/dist /usr/share/nginx/html
|
||||
COPY ./nginx.conf /etc/nginx/nginx.conf
|
61
README.md
@ -1,27 +1,34 @@
|
||||
# @lfk/documentation
|
||||
|
||||
The documentation for the LfK! 'Läufersystem'.
|
||||
Powered by Hugo.
|
||||
|
||||
The main language for the content is German (since our primary target audience is the Lauf für Kaya! Team at a local German school) but every page has an English translation.
|
||||
|
||||
## Quickstart 🐳
|
||||
|
||||
> Use this to run the documentation server via docker.
|
||||
|
||||
1. Clone the repo or copy the docker-compose.yml
|
||||
2. Cd into the folder containing the docker-compose.yml
|
||||
3. Run docker-compose: `docker-compose up -d`
|
||||
4. Visit <http://127.0.0.1:8080/> to check if the server is running
|
||||
|
||||
## Dev Setup 🛠
|
||||
|
||||
> Local dev setup for previewing changes.
|
||||
|
||||
1. Clone the repo
|
||||
2. Install Hugo: `brew install hugo` or `winget install hugo.hugo.extended`
|
||||
3. Start the dev server: `hugo server --buildDrafts --disableFastRender`
|
||||
|
||||
### Recommended Editor
|
||||
|
||||
[Visual Studio Code](https://code.visualstudio.com/)
|
||||
# @lfk/documentation
|
||||
|
||||
The documentation for the LfK! 'Läufersystem'.
|
||||
Powered by Vuepress.
|
||||
|
||||
The main language for the content is German (since our primary target audience is the Lauf für Kaya! Team at a local German school).
|
||||
|
||||
## Quickstart 🐳
|
||||
> Use this to run the documentation server via docker.
|
||||
|
||||
1. Clone the repo or copy the docker-compose.yml
|
||||
2. Cd into the folder containing the docker-compose.yml
|
||||
2. Run docker-compose: `docker-compose up -d`
|
||||
3. Visit http://127.0.0.1:8080/ to check if the server is running
|
||||
|
||||
## Dev Setup 🛠
|
||||
> Local dev setup for previewing changes.
|
||||
|
||||
1. Install Dependencies
|
||||
```bash
|
||||
yarn
|
||||
```
|
||||
2. Start the server
|
||||
```bash
|
||||
yarn dev
|
||||
```
|
||||
|
||||
## Recommended Editor
|
||||
|
||||
[Visual Studio Code](https://code.visualstudio.com/)
|
||||
|
||||
### Recommended Extensions
|
||||
|
||||
* will be automatically recommended via ./vscode/extensions.json
|
115
config.yaml
@ -1,115 +0,0 @@
|
||||
# Configuration
|
||||
baseURL: "https://docs.lauf-fuer-kaya.de"
|
||||
title: "LfK! Dokumentation"
|
||||
|
||||
module:
|
||||
imports:
|
||||
- path: github.com/imfing/hextra
|
||||
|
||||
enableRobotsTXT: true
|
||||
enableGitInfo: true
|
||||
hasCJKLanguage: true
|
||||
|
||||
outputs:
|
||||
home: [HTML]
|
||||
page: [HTML]
|
||||
section: [HTML, RSS]
|
||||
|
||||
markup:
|
||||
highlight:
|
||||
noClasses: false
|
||||
goldmark:
|
||||
renderer:
|
||||
unsafe: true
|
||||
extensions:
|
||||
passthrough:
|
||||
delimiters:
|
||||
block: [['\[', '\]'], ['$$', '$$']]
|
||||
inline: [['\(', '\)']]
|
||||
enable: true
|
||||
|
||||
enableInlineShortcodes: true
|
||||
|
||||
defaultContentLanguage: de
|
||||
languages:
|
||||
de:
|
||||
languageName: Deutsch
|
||||
languageCode: de
|
||||
title: LfK! Dokumentation
|
||||
weight: 1
|
||||
en:
|
||||
languageName: English
|
||||
languageCode: en
|
||||
title: LfK! Documentation
|
||||
weight: 2
|
||||
|
||||
menu:
|
||||
main:
|
||||
- identifier: user
|
||||
name: Anwender
|
||||
pageRef: /user
|
||||
weight: 1
|
||||
- identifier: admin
|
||||
name: Administratoren
|
||||
pageRef: /admin
|
||||
weight: 2
|
||||
- identifier: selfservice
|
||||
name: Selfservice
|
||||
pageRef: /selfservice
|
||||
weight: 3
|
||||
- identifier: scanstation
|
||||
name: Scanerstationen
|
||||
pageRef: /scanstation
|
||||
weight: 4
|
||||
- identifier: beamershow
|
||||
name: Beamershow
|
||||
pageRef: /beamershow
|
||||
weight: 5
|
||||
- name: Suche
|
||||
identifier: search
|
||||
weight: 6
|
||||
params:
|
||||
type: search
|
||||
- name: Sourcecode
|
||||
weight: 7
|
||||
url: "https://git.odit.services/lfk"
|
||||
params:
|
||||
icon: gitea
|
||||
|
||||
params:
|
||||
description: Dokumentation für das Lauf für Kaya! Läufersystem.
|
||||
displayUpdatedDate: true
|
||||
navbar:
|
||||
displayTitle: true
|
||||
displayLogo: true
|
||||
logo:
|
||||
path: logo.svg
|
||||
dark: logo.svg
|
||||
link: /
|
||||
width: normal
|
||||
page:
|
||||
width: normal
|
||||
theme:
|
||||
default: system
|
||||
displayToggle: true
|
||||
footer:
|
||||
enable: true
|
||||
displayCopyright: true
|
||||
displayPoweredBy: false
|
||||
width: normal
|
||||
search:
|
||||
enable: true
|
||||
type: flexsearch
|
||||
flexsearch:
|
||||
index: content
|
||||
tokenize: forward
|
||||
highlight:
|
||||
copy:
|
||||
enable: true
|
||||
display: hover
|
||||
comments:
|
||||
enable: false
|
||||
editURL:
|
||||
enable: true
|
||||
base: "https://git.odit.services/lfk/docs/_edit/main/content"
|
||||
|
@ -1,58 +0,0 @@
|
||||
---
|
||||
title: Die Dokumentation für das LfK! Läufersystem
|
||||
layout: hextra-home
|
||||
---
|
||||
{{< hextra/hero-badge >}}
|
||||
<div class="hx-w-2 hx-h-2 hx-rounded-full hx-bg-primary-400"></div>
|
||||
<span>Kostenlos, open source</span>
|
||||
{{< icon name="arrow-circle-right" attributes="height=14" >}}
|
||||
{{< /hextra/hero-badge >}}
|
||||
|
||||
<div class="hx-mt-6 hx-mb-6">
|
||||
{{< hextra/hero-headline >}}
|
||||
Dokumentation des LfK! Läufersystems.
|
||||
{{< /hextra/hero-headline >}}
|
||||
</div>
|
||||
|
||||
<div class="hx-mb-12">
|
||||
{{< hextra/hero-subtitle >}}
|
||||
Hier findest du alle Informationen, die du benötigst, um das LfK! Läufersystem zu installieren, zu konfigurieren und zu nutzen.
|
||||
{{< /hextra/hero-subtitle >}}
|
||||
</div>
|
||||
|
||||
<div class="hx-mb-6">
|
||||
{{< hextra/hero-button text="Schnellstart für Nutzer 👉" link="./user" >}}
|
||||
</div>
|
||||
|
||||
{{< hextra/feature-grid >}}
|
||||
{{< hextra/feature-card
|
||||
title="Anwenderdoku"
|
||||
subtitle="Orgs, Teams und Läufer:innen anlegen, verwalten und mehr."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(194,97,254,0.15),hsla(0,0%,100%,0));"
|
||||
link="./user"
|
||||
>}}
|
||||
{{< hextra/feature-card
|
||||
title="Admindoku"
|
||||
subtitle="Installation, Konfiguration und Bedienung des Läufersystems."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(142,53,74,0.15),hsla(0,0%,100%,0));"
|
||||
link="./admin"
|
||||
>}}
|
||||
{{< hextra/feature-card
|
||||
title="Selfservice"
|
||||
subtitle="Portal für Bürger- und Firmenläufer:innen."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(221,210,59,0.15),hsla(0,0%,100%,0));"
|
||||
link="./selfservice"
|
||||
>}}
|
||||
{{< hextra/feature-card
|
||||
title="Scannerstationen"
|
||||
subtitle="Karten scannen, Kilometer und erfassen. Bedienung, Hardware und Software."
|
||||
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="Beamershow"
|
||||
subtitle="Aktuelle Statistiken und Toplisten zum Event."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(97,254,97,0.15),hsla(0,0%,100%,0));"
|
||||
link="./beamershow"
|
||||
>}}
|
||||
{{< /hextra/feature-grid >}}
|
@ -1,58 +0,0 @@
|
||||
---
|
||||
title: The Documentation for the LfK! Runner System
|
||||
layout: hextra-home
|
||||
---
|
||||
{{< hextra/hero-badge >}}
|
||||
<div class="hx-w-2 hx-h-2 hx-rounded-full hx-bg-primary-400"></div>
|
||||
<span>Free, open source</span>
|
||||
{{< icon name="arrow-circle-right" attributes="height=14" >}}
|
||||
{{< /hextra/hero-badge >}}
|
||||
|
||||
<div class="hx-mt-6 hx-mb-6">
|
||||
{{< hextra/hero-headline >}}
|
||||
Documentation of the LfK! Runner System.
|
||||
{{< /hextra/hero-headline >}}
|
||||
</div>
|
||||
|
||||
<div class="hx-mb-12">
|
||||
{{< hextra/hero-subtitle >}}
|
||||
Here you will find all the information you need to install, configure, and use the LfK! Runner System.
|
||||
{{< /hextra/hero-subtitle >}}
|
||||
</div>
|
||||
|
||||
<div class="hx-mb-6">
|
||||
{{< hextra/hero-button text="Quickstart for Users 👉" link="./user" >}}
|
||||
</div>
|
||||
|
||||
{{< hextra/feature-grid >}}
|
||||
{{< hextra/feature-card
|
||||
title="User Documentation"
|
||||
subtitle="Create and manage orgs, teams, runners and mire."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(194,97,254,0.15),hsla(0,0%,100%,0));"
|
||||
link="./user"
|
||||
>}}
|
||||
{{< hextra/feature-card
|
||||
title="Admin Documentation"
|
||||
subtitle="Installation, configuration, and operation of the runner system."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(142,53,74,0.15),hsla(0,0%,100%,0));"
|
||||
link="./admin"
|
||||
>}}
|
||||
{{< hextra/feature-card
|
||||
title="Self-service"
|
||||
subtitle="Portal for citizen and company runners."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(221,210,59,0.15),hsla(0,0%,100%,0));"
|
||||
link="./selfservice"
|
||||
>}}
|
||||
{{< hextra/feature-card
|
||||
title="Scanner Stations"
|
||||
subtitle="Scan cards, record kilometers. How-to, hardware, and software."
|
||||
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="Beamer Show"
|
||||
subtitle="Current statistics and top lists for the event."
|
||||
style="background: radial-gradient(ellipse at 50% 80%,rgba(97,254,97,0.15),hsla(0,0%,100%,0));"
|
||||
link="./beamershow"
|
||||
>}}
|
||||
{{< /hextra/feature-grid >}}
|
@ -1,70 +0,0 @@
|
||||
---
|
||||
linkTitle: "Admins"
|
||||
title: Admin-Doku
|
||||
weight: 1
|
||||
prev: /
|
||||
next: /admin/quickstart
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
|
||||
Dieser Teil der Dokumentation befasst sich mit der Installation, Konfiguration und Bedienung des Läufersystems für normale Admins.
|
||||
Solltest du an der Bedienung für normale Nutzer interessiert sein schau doch mal in den [Nutzerbereich](../../user).
|
||||
|
||||
## Services
|
||||
|
||||
Eine kurze Übersicht über die verschiedenen Services des Systems und ihre Interaktion
|
||||
|
||||
* Backend: Beinhaltet die Hauptlogik und verwaltet die Daten (via Datenbankanbindung)
|
||||
* Mailer: Versendet auf Basis von HTML-Templates automatisiert Mails
|
||||
* Document-Server: Erstellt PDFs (Urkunden, Läuferkarten, Sponsoringerklärungen) aus HTML-Templates
|
||||
* Frontend: Verwaltungsoberfläche für die Admins und Benutzer:innen des Läufersystems
|
||||
* Selfservice: Portal in dem sich Bürger- und Firmenläufer:innen registrieren und ihre Daten einsehen können
|
||||
* Beamershow: Zeigt aktuelle Statistiken und Toplisten zum Event an
|
||||
* Scanclient: Software für die Scannerstationen
|
||||
* Kiosk: Software für die Registrierung von Läufer:innen vor Ort
|
||||
* Docs: Diese Dokumentation
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
subgraph Anwendungen
|
||||
Frontend
|
||||
Beamershow
|
||||
Scanclient
|
||||
Selfservice
|
||||
Kiosk
|
||||
end
|
||||
|
||||
subgraph Services
|
||||
Backend
|
||||
Mailer
|
||||
Document-Server
|
||||
end
|
||||
|
||||
subgraph Extern
|
||||
Datenbank
|
||||
Mail-Server
|
||||
end
|
||||
|
||||
Frontend --> |Zeigt Daten an und bearbeitet sie| Backend
|
||||
Beamershow -->|Fragt aktuelle Statistiken ab| Backend
|
||||
Scanclient --> |Generiert und validiert Scans| Backend
|
||||
Selfservice --> |Registriert Läufer| Backend
|
||||
Kiosk --> |Registriert Läufer| Backend
|
||||
|
||||
Backend --> |Speichert Daten| Datenbank
|
||||
Backend --> |Sendet Mails| Mailer
|
||||
Mailer --> |Sendet Mails| Mail-Server
|
||||
|
||||
Frontend --> |Generiert PDFs| Document-Server
|
||||
Selfservice --> |Generiert PDFs| Document-Server
|
||||
```
|
||||
|
||||
## FAQ
|
||||
|
||||
Ein paar der meist gestellten Fragen vorab
|
||||
|
||||
### Warum sehe ich eine Seite nicht?
|
||||
|
||||
Nutzer sehen nur die Seiten im System, für die sie Berechtigungen haben.
|
||||
Solltest du eine Seite nicht sehen bist du vermutlich nicht voll als Admin berechtigt.
|
@ -1,70 +0,0 @@
|
||||
---
|
||||
linkTitle: "Admins"
|
||||
title: Admin Documentation
|
||||
weight: 1
|
||||
prev: /
|
||||
next: /admin/quickstart
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
|
||||
This part of the documentation deals with the installation, configuration, and operation of the runner system for regular admins.
|
||||
If you are interested in the operation for regular users, take a look at the [User Area](../../user).
|
||||
|
||||
## Services
|
||||
|
||||
A brief overview of the various services of the system and their interaction
|
||||
|
||||
* Backend: Contains the main logic and manages the data (via database connection)
|
||||
* Mailer: Automatically sends mails based on HTML templates
|
||||
* Document-Server: Creates PDFs (certificates, runner cards, sponsorship declarations) from HTML templates
|
||||
* Frontend: Management interface for the admins and users of the runner system
|
||||
* Selfservice: Portal where citizen and company runners can register and view their data
|
||||
* Beamershow: Displays current statistics and top lists for the event
|
||||
* Scanclient: Software for the scanner stations
|
||||
* Kiosk: Software for the on-site registration of runners
|
||||
* Docs: This documentation
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
subgraph Applications
|
||||
Frontend
|
||||
Beamershow
|
||||
Scanclient
|
||||
Selfservice
|
||||
Kiosk
|
||||
end
|
||||
|
||||
subgraph Services
|
||||
Backend
|
||||
Mailer
|
||||
Document-Server
|
||||
end
|
||||
|
||||
subgraph External
|
||||
Database
|
||||
Mail-Server
|
||||
end
|
||||
|
||||
Frontend --> |Displays and edits data| Backend
|
||||
Beamershow -->|Requests current statistics| Backend
|
||||
Scanclient --> |Generates and validates scans| Backend
|
||||
Selfservice --> |Registers runners| Backend
|
||||
Kiosk --> |Registers runners| Backend
|
||||
|
||||
Backend --> |Stores data| Database
|
||||
Backend --> |Sends mails| Mailer
|
||||
Mailer --> |Sends mails| Mail-Server
|
||||
|
||||
Frontend --> |Generates PDFs| Document-Server
|
||||
Selfservice --> |Generates PDFs| Document-Server
|
||||
```
|
||||
|
||||
## FAQ
|
||||
|
||||
A few of the most frequently asked questions in advance
|
||||
|
||||
### Why can't I see a page?
|
||||
|
||||
Users only see the pages in the system for which they have permissions.
|
||||
If you can't see a page, you are probably not fully authorized as an admin.
|
@ -1,39 +0,0 @@
|
||||
---
|
||||
title: Schnellstart für Admins
|
||||
weight: 2
|
||||
prev: /admin
|
||||
next: /admin/users
|
||||
---
|
||||
|
||||
Du willst das System schnell aufsetzen und testen? Dann bist du hier genau richtig!
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
Alle der folgenden Anleitungen gehen davon aus, dass du bereits Docker und Docker-Compose installiert hast.
|
||||
Die Installationsanleitungen dafür findest du hier:
|
||||
|
||||
* [Docker](https://docs.docker.com/get-docker/)
|
||||
* [Docker-Compose](https://docs.docker.com/compose/install/)
|
||||
|
||||
## Das ganze System
|
||||
|
||||
> Du willst das ganze System (backend, fronten, document-server) schnell aufsetzen.
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Klonen
|
||||
|
||||
Klone das lfk/deployment git repo von: <https://git.odit.services/lfk/deployment> (oder lade es herunter).
|
||||
|
||||
### Starten
|
||||
|
||||
Navigiere nach `docker-compose/full_stack`: `cd deployment/docker-compose/full_stack`.
|
||||
tarte das System mit `docker-compose up`
|
||||
|
||||
### Nutzen
|
||||
|
||||
Nachdem alles gestartet ist ist kannst du das Frontend aufrufen: <http://localhost:4010> (backend: <http://localhost:4010/api/>, document-server: <http://localhost:4010/documents/>)
|
||||
|
||||
Bei Bedarf können die Ports und andere Einstellungen im docker-compose.yml angepasst werden.
|
||||
|
||||
{{% /steps %}}
|
@ -1,39 +0,0 @@
|
||||
---
|
||||
title: Quick Start for Admins
|
||||
weight: 2
|
||||
prev: /admin
|
||||
next: /admin/users
|
||||
---
|
||||
|
||||
Do you want to set up and test the system quickly? Then you are in the right place!
|
||||
|
||||
## Prerequisites
|
||||
|
||||
All of the following instructions assume that you have already installed Docker and Docker-Compose.
|
||||
You can find the installation instructions here:
|
||||
|
||||
* [Docker](https://docs.docker.com/get-docker/)
|
||||
* [Docker-Compose](https://docs.docker.com/compose/install/)
|
||||
|
||||
## The whole system
|
||||
|
||||
> You want to quickly set up the entire system (backend, frontend, document-server).
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Clone
|
||||
|
||||
Clone the lfk/deployment git repo from: <https://git.odit.services/lfk/deployment> (or download it).
|
||||
|
||||
### Start
|
||||
|
||||
Navigate to `docker-compose/full_stack`: `cd deployment/docker-compose/full_stack`.
|
||||
Start the system with `docker-compose up`.
|
||||
|
||||
### Use
|
||||
|
||||
After everything has started, you can access the frontend at: <http://localhost:4010> (backend: <http://localhost:4010/api/>, document-server: <http://localhost:4010/documents/>).
|
||||
|
||||
If necessary, ports and other settings can be adjusted in the docker-compose.yml file.
|
||||
|
||||
{{% /steps %}}
|
@ -1,50 +0,0 @@
|
||||
---
|
||||
title: Manage User Groups
|
||||
weight: 4
|
||||
prev: /admin/quickstart
|
||||
next: /admin/usergroups
|
||||
---
|
||||
|
||||
As an admin, you can create user groups and assign users to them.
|
||||
Users inherit the permissions of all the groups they belong to.
|
||||
|
||||
For example, you can put all admins in the `ADMINS` group instead of manually assigning permissions to each user.
|
||||
|
||||
## Create
|
||||
|
||||
To create a new user group, open the `User Groups` page in the runner system.
|
||||
Click the `Create New Group` button to create a new user group.
|
||||
You can give the group a name and (optionally) a description.
|
||||
|
||||
## Edit
|
||||
|
||||
To edit a user group, click the `Details` button for the desired group in the user groups overview.
|
||||
In the overview for this user group, you can now adjust the name and description and view or edit permissions.
|
||||
When you're done, just click `Save Changes`.
|
||||
|
||||
### Permissions
|
||||
|
||||
{{< callout type="info" >}}
|
||||
There is a separate page for a user group's permissions.
|
||||
{{< /callout >}}
|
||||
|
||||
To edit a group's permissions, click `Edit Permissions` on the group's detail page.
|
||||
On the permissions page, there are two columns: `Available` (permissions the group does not have) and `Granted` (permissions the group has).
|
||||
You can grant or remove permissions using the `+` and `-` buttons.
|
||||
When you're done, just click `Save Changes`.
|
||||
|
||||
## Delete
|
||||
|
||||
You can delete a user group either from the user groups overview or the user group detail view.
|
||||
Only the user group and its permissions will be deleted, not its users.
|
||||
|
||||
### In the User Groups Overview
|
||||
|
||||
Click the `Delete` button for the desired user group.
|
||||
You will then be asked if you really want to delete the user group or cancel.
|
||||
|
||||
### In the User Group Detail View
|
||||
|
||||
Click the `Details` button for the desired user group.
|
||||
At the top of the page, there is now a `Delete Group` button.
|
||||
You will then be asked if you really want to delete the user group or cancel.
|
@ -1,49 +0,0 @@
|
||||
---
|
||||
title: Manage Users
|
||||
weight: 3
|
||||
prev: /admin/quickstart
|
||||
next: /admin/usergroups
|
||||
---
|
||||
|
||||
As an admin, you can create users.
|
||||
Users can log in to the runner management system and the backend (API) and work within their permissions.
|
||||
You can assign permissions directly to users or assign them to any number of groups from which they inherit permissions.
|
||||
|
||||
## Create
|
||||
|
||||
To create a new user, open the `Users` page in the runner system.
|
||||
Click the `Create User` button to create a new user.
|
||||
You can give the contact a name, username, password, and email address.
|
||||
|
||||
## Edit
|
||||
|
||||
To edit a user, click the `Details` button for the desired user in the user overview.
|
||||
In the overview for this contact, you can now adjust the name, username, email, groups, and permissions.
|
||||
When you are done, simply click `Save Changes`.
|
||||
|
||||
### Permissions
|
||||
|
||||
{{< callout type="info" >}}
|
||||
There is a separate page for a user's permissions.
|
||||
{{< /callout >}}
|
||||
|
||||
To edit a user's permissions, click `Edit Permissions` on the user's detail page.
|
||||
On the permissions page, there are three columns: `Available` (permissions the user does not have directly), `Directly Granted` (permissions the user has directly), and `Inherited` (permissions the user has inherited from their user groups).
|
||||
You can grant or remove direct permissions using the `+` and `-` buttons.
|
||||
When you are done, simply click `Save Changes`.
|
||||
|
||||
## Delete
|
||||
|
||||
You can delete a user either from the user overview or the user detail view.
|
||||
Only the user and their permissions will be deleted.
|
||||
|
||||
### In the User Overview
|
||||
|
||||
Click the `Delete` button for the desired user.
|
||||
You will then be asked if you really want to delete the user or cancel.
|
||||
|
||||
### In the User Detail View
|
||||
|
||||
Click the `Details` button for the desired user.
|
||||
At the top of the page, there is now a `Delete User` button.
|
||||
You will then be asked if you really want to delete the user or cancel.
|
@ -1,27 +0,0 @@
|
||||
---
|
||||
linkTitle: "Beamershow"
|
||||
title: Beamershow
|
||||
weight: 1
|
||||
prev: /
|
||||
next: /beamershow/config
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
|
||||
The beamer show displays live statistics for the current event.
|
||||
As the name suggests, it is intended to be projected on a (screen) wall on-site using a beamer.
|
||||
|
||||
It should normally always be accessible under `<läufersystem>/beamershow`, more details can be found under [Configuration](./config).
|
||||
|
||||
## Pages/Information
|
||||
|
||||
> The beamer show includes the following pages/sections
|
||||
|
||||
* General
|
||||
* Number of runners
|
||||
* Total kilometers ran so far
|
||||
* Current total donation amount
|
||||
* Top 10 runners by distance
|
||||
* Top 10 runners by fastest lap time
|
||||
* Top 10 organizations by distance
|
||||
* Top 10 teams by distance
|
@ -1,18 +0,0 @@
|
||||
---
|
||||
title: Beamershow Config
|
||||
weight: 1
|
||||
prev: /beamershow
|
||||
---
|
||||
|
||||
## Start
|
||||
|
||||
When you open the Beamershow, you will first be asked for the API endpoint - this corresponds to the URL of the runner system (e.g., `https://lauf-fuer-kaya.de`).
|
||||
Next, you will be asked for a client token, which you will receive from your admin.
|
||||
|
||||
Once you have entered the token, you can click the "Configure" button and the Beamershow will start.
|
||||
|
||||
## Change Configuration
|
||||
|
||||
Type `cnf` on any page of the Beamershow.
|
||||
|
||||
You will be immediately logged out of the Beamershow and can then enter a new API endpoint and client token.
|
@ -1,37 +0,0 @@
|
||||
---
|
||||
linkTitle: "Scannerstationen"
|
||||
title: Über die Scannerstationen
|
||||
weight: 1
|
||||
prev: /
|
||||
next: /scanstation/install
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
|
||||
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.
|
||||
Wir schreiben grundsätzlich keine Hardware oder Software vor - stellen aber selbst eine Software bereit und empfehlen Hardware.
|
||||
|
||||
Die API für Scannerstationen im Läufersystem ist grundsätzlich so gestaltet, dass Scans live erfasst und validiert (Läufer, Track, Rundenzeit) werden.
|
||||
|
||||
## Bedienung
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Die Bedienung kann erst nach der [Konfiguration](./config) erfolgen.
|
||||
{{< /callout >}}
|
||||
|
||||
|
||||
Die Bedienung der Software als Helfer an der Scannerstation ist relativ einfach.
|
||||
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Scannen
|
||||
|
||||
Den Handscanner auf den Barcode der Läuferkarte halten und auf den Bestätigungs-Ton warten.
|
||||
|
||||
### Validierung
|
||||
|
||||
Schau auf den Bildschirm deiner Scannerstation, ob der Scan valide war.
|
||||
Hier wird auch die aktuelle Kilometerzahl und die Rundenzeit angezeigt.
|
||||
|
||||
{{% /steps %}}
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
linkTitle: "Scannerstationen"
|
||||
title: "About the Scanner Stations"
|
||||
weight: 1
|
||||
prev: /
|
||||
next: /scanstation/install
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
|
||||
The scanner station is the combination of hardware and software used to scan runner cards and record the distances run in the system.
|
||||
We do not prescribe any specific hardware or software - but we do provide our own software and recommend hardware.
|
||||
|
||||
The API for scanner stations in the runner system is designed to capture and validate scans live (runner, track, lap time).
|
||||
|
||||
## Operation
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Operation can only be performed after [configuration](./config).
|
||||
{{< /callout >}}
|
||||
|
||||
Operating the software as a helper at the scanner station is relatively simple.
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Scanning
|
||||
|
||||
Hold the handheld scanner over the barcode of the runner card and wait for the confirmation tone.
|
||||
|
||||
### Validation
|
||||
|
||||
Look at the screen of your scanner station to see if the scan was valid.
|
||||
The current kilometer count and lap time are also displayed here.
|
||||
|
||||
{{% /steps %}}
|
@ -1,48 +0,0 @@
|
||||
---
|
||||
title: Scanner Station Configuration
|
||||
weight: 3
|
||||
prev: /scanstation/install
|
||||
---
|
||||
|
||||
## Start
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### API Endpoint
|
||||
|
||||
When you open the Scanclient software, you will first be asked for an API endpoint.
|
||||
Here you need to enter the URL of your LfK backend (e.g., `https://lauf-fuer-kaya.de`).
|
||||
|
||||
### Client Token
|
||||
|
||||
Next, you will be asked for a Client Token.
|
||||
The setup is described under [Create Token](../../user/scanstations).
|
||||
|
||||
### Confirm
|
||||
|
||||
If you made a typo in the API endpoint, you can enter `rst` instead of a Client Token to set it again.
|
||||
Once you have entered the token, you can click the "Configure" button and the Scanclient will start.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Change Configuration
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Start Config Mode
|
||||
|
||||
Type `cnf` in the runner card field and press Enter.
|
||||
|
||||
### Config Mode
|
||||
|
||||
Now the configuration overview opens, listing all the details of the configured scanner station.
|
||||
|
||||
### Save Settings
|
||||
|
||||
When you are done, you can switch back to scan mode by clicking the "Back to Scanner" button.
|
||||
|
||||
### Log Out
|
||||
|
||||
If you want to log out the software from the runner system or change the token, click on "Log out from this Client".
|
||||
|
||||
{{% /steps %}}
|
@ -1,54 +0,0 @@
|
||||
---
|
||||
title: Scannerkonfiguration
|
||||
weight: 31
|
||||
prev: /scanstation/config
|
||||
---
|
||||
|
||||
{{< callout type="warning" >}}
|
||||
Diese Konfiguration wurde nur mit GD4130-BK/WH USB Scannern getestet
|
||||
{{< /callout >}}
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Download als PDF: [Scannerkonfiguration.pdf](/files/scannerconfig.pdf)
|
||||
{{< /callout >}}
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Werkseinstellungen wiederherstellen
|
||||
|
||||

|
||||
|
||||
### 2. Programming Mode Aktivieren
|
||||
|
||||

|
||||
|
||||
### 3. Nur EAN-13 scannen (optional)
|
||||
|
||||

|
||||

|
||||
|
||||
### 4. EAN13 Check-Zahl überprüfen, aber nicht übertragen
|
||||
|
||||

|
||||
|
||||
### 5. Scanner auf always on stellen (optional)
|
||||
|
||||

|
||||
|
||||
### 6. Programming Mode Verlassen
|
||||
|
||||

|
||||
|
||||
### 7. Beep ausschalten (optional)
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
### 8. Tastatur auf Deutsch stellen (optional)
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
{{% /steps %}}
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
title: Hardware Recommendations
|
||||
weight: 4
|
||||
prev: /scanstation/config
|
||||
---
|
||||
|
||||
Known-good hardware that we can recommend for the scanning stations.
|
||||
|
||||
## Computer
|
||||
|
||||
* Raspberry Pi 3 or newer
|
||||
* Processor: Minimum: Intel Core 2 Duo
|
||||
* Memory: Minimum 4GB
|
||||
|
||||
## Barcode Scanner
|
||||
|
||||
* Datalogic Gryphon GD4130-BK/WH USB Scanner (1D)
|
||||
* Datalogic Gryphon GD4200 USB Scanner (1D)
|
||||
* Datalogic Gryphon GD4400 USB Scanner (2D)
|
@ -1,71 +0,0 @@
|
||||
---
|
||||
title: Scannerstation Installation
|
||||
weight: 2
|
||||
prev: /scanstation
|
||||
next: /scanstation/config
|
||||
---
|
||||
|
||||
Es gibt aktuell zwei Varianten, um die Scanclient Software zu installieren/nutzen.
|
||||
|
||||
1. Als Livesystem starten (empfohlen)
|
||||
2. Für Windows oder Linux herunterladen
|
||||
|
||||
## Livesystem
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Wir empfehlen die Nutzung des Livesystems, da es keine Installation erfordert und immer die aktuellste Version verwendet.
|
||||
{{< /callout >}}
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Download
|
||||
|
||||
Lade dir die aktuellste Version des Betriebssystems herunter: [Versionsübersicht](https://git.odit.services/lfk/scanclient-live/releases)
|
||||
|
||||
* Den neusten (obersten) Release auswählen.
|
||||
* Unter "Downloads" die Datei lfk-scanclient-live_X.Y.Z_x64.zip anklicken
|
||||
|
||||
### Stick Formatieren
|
||||
|
||||
Einen USB-Stick einstecken und als FAT32 formatieren (Achtung: Hierbei gehen alle Daten verloren, die auf dem Stick sind).
|
||||
|
||||
### Kopieren und Entpacken
|
||||
|
||||
Die ZIP-Datei auf den Stick kopieren und entpacken.
|
||||
Du solltest einen neuen Order `slax` erhalten
|
||||
|
||||
### Den Stick bootfähig machen
|
||||
|
||||
* Windows: Die Datei `USBSTICK\slax\boot\bootinst.bat` als Administrator ausführen
|
||||
* Linux/Mac: Die Datei `USBSTICK/slax/boot/bootinst.sh` mit Root-Rechten (sudo) ausführen
|
||||
|
||||
### Booten
|
||||
|
||||
Den Stick in den Rechner deiner Wahl einstecken und von ihm Starten.
|
||||
Bei den meisten Rechner geht das, indem du beim Hochfahren F12 und/oder Entf drückst und dann den USB-Stick auswählst.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Windows/Linux
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Herunterladen
|
||||
|
||||
Programm aus dem Git Repo herunterladen: [Versionsübersicht](https://git.odit.services/lfk/scanclient-electron/releases)
|
||||
|
||||
* Den neusten (obersten) Release auswählen.
|
||||
* Unter "Downloads" die Datei für dein Betriebssystem anklicken
|
||||
* Windows: `@lfk-scanclient-electron-win32-x64.zip`
|
||||
* Linux: `@lfk-scanclient-electron-linux-x64.zip`
|
||||
|
||||
### Entpacken
|
||||
|
||||
Die ZIP-Datei entpacken und den Ordner `lfk-scanclient-electron-win32-x64` öffnen.
|
||||
|
||||
### Starten
|
||||
|
||||
* Windows: Die Datei `@lfk-scanclient-electron.exe` öffnen.
|
||||
* Linux: Die Datei `@lfk-scanclient-electron` öffnen.
|
||||
|
||||
{{% /steps %}}
|
@ -1,71 +0,0 @@
|
||||
---
|
||||
title: Scannerstation Installation
|
||||
weight: 2
|
||||
prev: /scanstation
|
||||
next: /scanstation/config
|
||||
---
|
||||
|
||||
There are currently two ways to install/use the Scanclient software.
|
||||
|
||||
1. Start as a live system (recommended)
|
||||
2. Download for Windows or Linux
|
||||
|
||||
## Live System
|
||||
|
||||
{{< callout type="info" >}}
|
||||
We recommend using the live system as it requires no installation and always uses the latest version.
|
||||
{{< /callout >}}
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Download
|
||||
|
||||
Download the latest version of the operating system: [Version Overview](https://git.odit.services/lfk/scanclient-live/releases)
|
||||
|
||||
* Select the latest (top) release.
|
||||
* Under "Downloads" click on the file lfk-scanclient-live_X.Y.Z_x64.zip
|
||||
|
||||
### Format Stick
|
||||
|
||||
Insert a USB stick and format it as FAT32 (Warning: This will erase all data on the stick).
|
||||
|
||||
### Copy and Unzip
|
||||
|
||||
Copy the ZIP file to the stick and unzip it.
|
||||
You should get a new folder `slax`
|
||||
|
||||
### Make the Stick Bootable
|
||||
|
||||
* Windows: Run the file `USBSTICK\slax\boot\bootinst.bat` as Administrator
|
||||
* Linux/Mac: Run the file `USBSTICK/slax/boot/bootinst.sh` with root privileges (sudo)
|
||||
|
||||
### Boot
|
||||
|
||||
Insert the stick into the computer of your choice and boot from it.
|
||||
On most computers, you can do this by pressing F12 and/or Delete during startup and then selecting the USB stick.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Windows/Linux
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Download
|
||||
|
||||
Download the program from the Git repo: [Version Overview](https://git.odit.services/lfk/scanclient-electron/releases)
|
||||
|
||||
* Select the latest (top) release.
|
||||
* Under "Downloads" click on the file for your operating system
|
||||
* Windows: `@lfk-scanclient-electron-win32-x64.zip`
|
||||
* Linux: `@lfk-scanclient-electron-linux-x64.zip`
|
||||
|
||||
### Unzip
|
||||
|
||||
Unzip the ZIP file and open the folder `lfk-scanclient-electron-win32-x64`.
|
||||
|
||||
### Start
|
||||
|
||||
* Windows: Open the file `@lfk-scanclient-electron.exe`.
|
||||
* Linux: Open the file `@lfk-scanclient-electron`.
|
||||
|
||||
{{% /steps %}}
|
@ -1,23 +0,0 @@
|
||||
---
|
||||
linkTitle: "Selfservice"
|
||||
title: Introduction
|
||||
weight: 1
|
||||
prev: /
|
||||
next: /selfservice/orgs
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
|
||||
The self-service allows runners to register themselves for the run and view their own data.
|
||||
|
||||
It includes (but is not limited to) the following functions:
|
||||
|
||||
* Registration for citizen runners
|
||||
* Registration for corporate runners
|
||||
* Viewing a runner's own data
|
||||
* General data: First name, middle name, last name, email address, phone number
|
||||
* Lap times
|
||||
* Download a runner certificate
|
||||
* Completely delete a runner's data from the system (GDPR compliant)
|
||||
|
||||
Note: For the self-service to work for citizen runners, the automatically generated citizen run organization must exist!
|
@ -1,35 +0,0 @@
|
||||
---
|
||||
title: Selfservice für Organisationen
|
||||
weight: 1
|
||||
prev: /selfservice
|
||||
---
|
||||
|
||||
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.
|
||||
|
||||
## Selfservice für eine Organisations freischalten
|
||||
|
||||
{{< callout type="warning" >}}
|
||||
Nur Teammitglider können Organisationen für die Registrierung über den Selfservice freischalten.
|
||||
Solltest du zu einer Organisation gehören, die sich freischalten lassen will wende dich bitte an das Laufteam.
|
||||
{{< /callout >}}
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Org-Übersicht
|
||||
|
||||
Rufe im Läufersystem die Seite `Organisationen auf`
|
||||
|
||||
### Org-Details
|
||||
|
||||
Klicke für die gewünschte Organisation auf den Button `Details`
|
||||
|
||||
### Selfservice aktivieren
|
||||
|
||||
Setze einen Haken bei `Selfservice Registrierung`, falls dieser noch nicht gesetzt ist und klicke auf `Änderungen speichern`
|
||||
|
||||
### Link Teilen
|
||||
|
||||
Kopiere den Registrierungslink für die Organisation
|
||||
|
||||
{{% /steps %}}
|
@ -1,34 +0,0 @@
|
||||
---
|
||||
title: Selfservice for organizations
|
||||
weight: 1
|
||||
prev: /selfservice
|
||||
---
|
||||
|
||||
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.
|
||||
|
||||
## Enable Self-service for an Organization
|
||||
|
||||
{{< callout type="warning" >}}
|
||||
Only team members can enable organizations for registration through the self-service.
|
||||
If you belong to an organization that wants to use the selfservice, please contact the team.
|
||||
{{< /callout >}}
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Org Overview
|
||||
|
||||
Open the `Organizations` page in the runner system
|
||||
|
||||
### Org Details
|
||||
|
||||
Click the `Details` button for the desired organization
|
||||
|
||||
### Enable Self-service
|
||||
|
||||
Check the `Self-service Registration` box if it is not already checked and click `Save changes`
|
||||
|
||||
### Share Link
|
||||
|
||||
Copy the registration link for the organization
|
||||
|
||||
{{% /steps %}}
|
@ -1,74 +0,0 @@
|
||||
---
|
||||
title: Runner Cards
|
||||
weight: 9
|
||||
---
|
||||
|
||||
Runner cards are used to generate [Trackscans](../scans) for [Runners](../runners) through [Scanner Stations](../scanstations).
|
||||
Runner cards can either be permanently assigned to a runner or used as blank cards that can be assigned to any runner.
|
||||
|
||||
## Creating
|
||||
|
||||
You can create runner cards either manually or have the system generate them automatically.
|
||||
You can also generate as many blank cards as you need from the system.
|
||||
|
||||
### Create Manually
|
||||
|
||||
To create a new runner card, open the `Runner Cards` page in the runner system.
|
||||
Click the `Create Card` button to create a new runner card.
|
||||
Here you can select a runner (but you don't have to).
|
||||
Once you have entered all the information, click the `Create` button to create the runner card.
|
||||
|
||||
### Generate Blank Cards
|
||||
|
||||
To create new blank cards, open the `Runner Cards` page in the runner system.
|
||||
Click the `Create Blank Cards` button to create new blank cards.
|
||||
Here you can select how many cards should be generated.
|
||||
Once you have entered all the information, click the `Create` button to generate the blank cards.
|
||||
|
||||
### For Runners
|
||||
|
||||
In the runner overview, you can select any number of runners (or all runners using the `Select All` button).
|
||||
Then the `Generate Runner Cards` button will appear above the runner list.
|
||||
Once you click it, you can select the language for the runner card PDFs.
|
||||
The runner cards will then be created, the PDFs generated, and downloaded.
|
||||
|
||||
### For Teams
|
||||
|
||||
#### For Teams in the Team Overview
|
||||
|
||||
In the team overview, you can select any number of teams (or all teams using the `Select All` button).
|
||||
Then the `Generate Runner Cards` button will appear above the team list.
|
||||
Once you click it, you can select the language for the runner card PDFs.
|
||||
The runner cards for all runners in the teams will then be created, the PDFs generated, and downloaded.
|
||||
|
||||
#### For Individual Teams in the Team Detail View
|
||||
|
||||
To generate runner cards for all runners in a single team, click the `Details` button for the desired team in the team overview.
|
||||
Then, in the detail view, simply click the `Generate Runner Cards` button and select the desired language - the runner cards will then be generated and downloaded.
|
||||
|
||||
### For Organizations
|
||||
|
||||
#### For Organizations in the Organization Overview
|
||||
|
||||
In the organization overview, you can select any number of organizations (or all organizations using the `Select All` button).
|
||||
Then the `Generate Runner Cards` button will appear above the organization list.
|
||||
Once you click it, you can select the language for the runner card PDFs.
|
||||
The runner cards for all runners in the organization (including teams) will then be created, the PDFs generated, and downloaded.
|
||||
|
||||
#### For Individual Organizations in the Organization Detail View
|
||||
|
||||
To generate runner cards for all runners in a single organization (including its teams), click the `Details` button for the desired organization in the organization overview.
|
||||
Then, in the detail view, simply click the `Generate Runner Cards` button and select the desired language - the runner cards will then be generated and downloaded.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a runner card, open the `Runner Cards` page in the runner system.
|
||||
In the runner card overview, click the `Details` button for the desired runner card.
|
||||
Now you can assign the card to a different runner or deactivate it.
|
||||
Once you have made all the changes, click the `Save Changes` button to apply the changes.
|
||||
|
||||
## Deleting
|
||||
|
||||
To delete a runner card, open the `Runner Cards` page in the runner system.
|
||||
In the runner card overview, click the `Delete` button for the desired runner card.
|
||||
You will then be asked if you really want to delete the card or cancel.
|
@ -1,38 +0,0 @@
|
||||
---
|
||||
title: Contacts
|
||||
weight: 5
|
||||
---
|
||||
|
||||
Contacts are used for Customer Relation Management (CRM) and can be assigned to any number of [Teams](../teams) and [Orgs](../teams).
|
||||
Note: A team/organization can only have one contact at a time.
|
||||
|
||||
Currently, contacts are only used for documentation, but in the future, it will be possible to send certificates for all their teams/orgs to a contact via email with the push of a button.
|
||||
|
||||
## Creating
|
||||
|
||||
To create a new contact, open the `Contact` page in the runner system.
|
||||
You can create a new contact using the `Create Contact` button.
|
||||
You can give the contact a name, phone number, and email address and assign them to any number of groups (teams/organizations).
|
||||
You can also choose whether to set an address for the contact (if not, simply uncheck the address box).
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a contact, click the `Details` button for the desired contact in the contact overview.
|
||||
In the overview for this contact, you can now adjust the name, phone number, email address, and address.
|
||||
When you are finished, simply click `Save Changes`.
|
||||
|
||||
## Deleting
|
||||
|
||||
You can delete a contact either from the contact overview or the contact detail view.
|
||||
Only the contact will be deleted, no associated orgs or teams.
|
||||
|
||||
### In the Contact Overview
|
||||
|
||||
Click the `Delete` button for the desired contact.
|
||||
You will then be asked if you really want to delete the contact or cancel.
|
||||
|
||||
### In the Contact Detail View
|
||||
|
||||
Click the `Details` button for the desired contact.
|
||||
At the top of the page, there is now a `Delete Contact` button.
|
||||
You will then be asked if you really want to delete the contact or cancel.
|
@ -1,47 +0,0 @@
|
||||
---
|
||||
title: Sponsorship Declarations
|
||||
weight: 10
|
||||
---
|
||||
|
||||
The system can generate sponsorship declarations for any [runners](../runners), [teams](../teams), or entire [organizations](../orgs).
|
||||
The sponsorship declarations are currently available in German and English.
|
||||
The texts on the sponsorship declarations and the number of declarations per runner can be adjusted by your admins.
|
||||
|
||||
## For Runners
|
||||
|
||||
### For Runners in the Runner Overview
|
||||
|
||||
In the runner overview, you can select any number of runners (or all via the `Select All` button).
|
||||
Then, the `Generate Sponsorship Contract` button appears above the runner list.
|
||||
As soon as you click it, the sponsorship declarations are generated and downloaded.
|
||||
|
||||
### For Individual Runners in the Runner Detail View
|
||||
|
||||
To generate a sponsorship declaration for an individual runner, you can click the `Details` button for the desired runner in the runner overview.
|
||||
Then, in the detail view, simply click the `Generate Sponsorship Contract` button - the sponsorship declaration will be generated and downloaded.
|
||||
|
||||
## For Teams
|
||||
|
||||
### For Teams in the Team Overview
|
||||
|
||||
In the team overview, you can select any number of teams (or all via the `Select All` button).
|
||||
Then, the `Generate Sponsorship Contracts` button appears above the team list.
|
||||
As soon as you click it, the sponsorship declarations for all runners in the teams are generated and downloaded.
|
||||
|
||||
### For Individual Teams in the Team Detail View
|
||||
|
||||
To generate sponsorship declarations for all runners in an individual team, you can click the `Details` button for the desired team in the team overview.
|
||||
Then, in the detail view, simply click the `Generate Sponsorship Contracts` button - the sponsorship declarations will be generated and downloaded.
|
||||
|
||||
## For Organizations
|
||||
|
||||
### For Organizations in the Organization Overview
|
||||
|
||||
In the organization overview, you can select any number of organizations (or all via the `Select All` button).
|
||||
Then, the `Generate Sponsorship Contracts` button appears above the organization list.
|
||||
As soon as you click it, the sponsorship declarations for all runners in the organizations (including their teams) are generated and downloaded.
|
||||
|
||||
### For Individual Organizations in the Organization Detail View
|
||||
|
||||
To generate sponsorship declarations for all runners in an individual organization (including their teams), you can click the `Details` button for the desired organization in the organization overview.
|
||||
Then, in the detail view, simply click the `Generate Sponsorship Contracts` button - the sponsorship declarations will be generated and downloaded.
|
@ -1,70 +0,0 @@
|
||||
---
|
||||
title: Donations
|
||||
weight: 9
|
||||
---
|
||||
|
||||
Sponsorships can either be fixed amount donations or kilometer donations.
|
||||
Kilometer donations connect [runners](../runners) with [sponsors](../donors) who donate a fixed amount per kilometer run by the runner.
|
||||
|
||||
## Creating
|
||||
|
||||
To create a new sponsorship, open the `Sponsorships` page in the runner system.
|
||||
You can create a new sponsorship by clicking the `Create Sponsorship` button.
|
||||
|
||||
First, you can choose whether to create a (kilometer) sponsorship or a fixed amount donation.
|
||||
Then you need to select the sponsor.
|
||||
|
||||
### Sponsorship (Kilometer Donation)
|
||||
|
||||
For kilometer donations, you need to select a runner and specify how many euros the sponsor will donate per kilometer run by the runner.
|
||||
Once you have entered all the details, you can create the sponsorship by clicking the `Create` button.
|
||||
|
||||
### Fixed Amount Donation
|
||||
|
||||
For fixed amount donations, you need to specify the donation amount in euros.
|
||||
Once you have entered all the details, you can create the fixed amount donation by clicking the `Create` button.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a sponsorship, you can click the `Details` button for the desired sponsorship in the sponsorship overview.
|
||||
Here you can see the total amount (calculated for kilometer donations) of the sponsorship and change the sponsor.
|
||||
|
||||
### Sponsorship (Kilometer Donation)
|
||||
|
||||
For kilometer donations, you can also adjust the runner and the donation amount per kilometer run.
|
||||
Once you have made all the adjustments, you can save the changes by clicking the `Save Changes` button.
|
||||
|
||||
### Fixed Amount Donation
|
||||
|
||||
For fixed amount donations, you can also adjust the donation amount.
|
||||
Once you have made all the adjustments, you can save the changes by clicking the `Save Changes` button.
|
||||
|
||||
## Entering Payment
|
||||
|
||||
### In the Sponsorship Overview
|
||||
|
||||
To enter a payment, you can click the `Enter Payment` button for the desired sponsorship in the sponsorship overview.
|
||||
|
||||
A dialog will open where you can enter the paid amount for the sponsorship.
|
||||
If the sponsorship has been paid to the exact cent, you can save yourself the typing by clicking the `MAX` button.
|
||||
|
||||
Once you have made your changes, you can save them by clicking the `Save Changes` button.
|
||||
|
||||
### In the Sponsorship Details
|
||||
|
||||
See Editing Sponsorship
|
||||
|
||||
## Deleting
|
||||
|
||||
You can delete a sponsorship either from the sponsorship overview or the sponsorship detail view.
|
||||
|
||||
### In the Sponsorship Overview
|
||||
|
||||
Click the `Delete` button for the desired sponsorship.
|
||||
You will then be asked if you really want to delete the sponsorship or cancel.
|
||||
|
||||
### In the Sponsorship Detail View
|
||||
|
||||
Click the `Details` button for the desired sponsorship.
|
||||
At the top of the page, there is now a `Delete Sponsorship` button.
|
||||
You will then be asked if you really want to delete the sponsorship or cancel.
|
@ -1,54 +0,0 @@
|
||||
---
|
||||
title: Donors
|
||||
weight: 8
|
||||
---
|
||||
|
||||
Sponsors are the donors who support the Run for Kaya! with a fixed amount or a per-kilometer donation.
|
||||
Together with the [sponsorships](../donations), they form the cornerstone of donation management and accounting.
|
||||
|
||||
## Sponsor Overview
|
||||
|
||||
> A brief overview of the functions of the sponsor overview.
|
||||
|
||||
The sponsor overview lists all sponsors registered in the system.
|
||||
From here, you can add, edit, or delete individual sponsors.
|
||||
|
||||
In addition to the name and contact information, all sponsorships (fixed amount donations, per-kilometer donations) of the sponsor are also listed (and linked) here.
|
||||
The total donation amount of all sponsorships of the sponsor is also listed here.
|
||||
|
||||
There is also a search function that allows you to search for sponsor names and IDs.
|
||||
|
||||
## Creating
|
||||
|
||||
To create a new sponsor, open the `Sponsors` page in the runner system.
|
||||
You can add a new sponsor via the `Add Sponsor` button.
|
||||
You need to provide a first name and last name.
|
||||
Additionally, you can provide a middle name (second first name), a phone number, and an email address.
|
||||
If the sponsor needs a donation receipt, you can check the `Donation receipt needed` box and enter the sponsor's address.
|
||||
Once you have entered everything, you can create the sponsor with the `Create` button.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a sponsor, you can click the `Details` button for the desired sponsor in the sponsor overview.
|
||||
In the overview for the sponsor, you can now edit the first name, middle name, last name, as well as the phone number, email address, and address (donation receipt needed).
|
||||
When you are finished, simply click `Save changes`.
|
||||
|
||||
## Deleting
|
||||
|
||||
You can delete a sponsor either from the sponsor overview or the sponsor detail view.
|
||||
|
||||
### In the Sponsor Overview
|
||||
|
||||
Click the `Delete` button for the desired sponsor.
|
||||
You will then be asked if you really want to delete the sponsor or cancel.
|
||||
|
||||
### In the Sponsor Detail View
|
||||
|
||||
Click the `Details` button for the desired sponsor.
|
||||
At the top of the page, there is now a `Delete Sponsor` button.
|
||||
You will then be asked if you really want to delete the sponsor or cancel.
|
||||
|
||||
### Sponsor with Sponsorships
|
||||
|
||||
If the sponsor still has sponsorships, a warning will appear after confirming the deletion.
|
||||
Here you must confirm the deletion including all sponsorships again, or you can cancel.
|
@ -1,215 +0,0 @@
|
||||
---
|
||||
title: Läuferimport
|
||||
weight: 7
|
||||
---
|
||||
|
||||
Um das Eintragen von Läufer:innen ins System zu erleichtern können Läufer aus Excel-Tabellen(CSV, XLSX) importiert werden.
|
||||
Diese Funktion ist vor allem für Schulen und Kindergärten gedacht, kann aber natürlich für alle Arten von Teams und Organisationen verwendet werden.
|
||||
Im Folgenden erklären wir dir Schritt für Schritt, wie du Läufer ins System importieren kannst.
|
||||
|
||||
## Aufbau der Importdateien
|
||||
|
||||
> Die Datei muss im Format XLSX(Excel) oder CSV vorliegen
|
||||
|
||||
Alle Läufer müssen auf einem "Tabellenblatt"(Excel) stehen, alle weiteren Tabellenblätter werden ignoriert.
|
||||
Die Tabelle muss folgendem Schema folgen:
|
||||
|
||||
| Vorname | Mittelname | Nachname | Team/Klasse |
|
||||
| -------- | ---------- | --------- | ----------- |
|
||||
| Vorname1 | Optional | Nachname1 | Optional |
|
||||
|
||||
Achtung: Die Team Spalte kann Team oder Klasse heißen!
|
||||
|
||||
### Beispiel: CSV
|
||||
|
||||
#### Mit Mittelname
|
||||
|
||||
> [Beispieldatei herunterladen](/files/class_with_middlename.csv)
|
||||
|
||||
```csv
|
||||
Vorname; Mittelname; Nachname; Team;
|
||||
Peter; ; Tester; 1A
|
||||
Manuel; Steffen; Regenwald; 1A
|
||||
Toller; ; Typ; 2A
|
||||
```
|
||||
|
||||
#### Ohne Mittelname
|
||||
|
||||
> [Beispieldatei herunterladen](/files/class_without_middlename.csv)
|
||||
|
||||
```csv
|
||||
Vorname; Nachname; Team;
|
||||
Peter; Tester; 1A
|
||||
Manuel; Regenwald; 1A
|
||||
Toller; Typ; 2A
|
||||
```
|
||||
|
||||
### Beispiel: XLSX (Excel)
|
||||
|
||||
#### Mit Mittelname
|
||||
|
||||
> [Beispieldatei herunterladen](/files/class_with_middlename.xlsx)
|
||||
|
||||

|
||||
|
||||
#### Ohne Mittelname
|
||||
|
||||
> [Beispieldatei herunterladen](/files/class_without_middlename.xlsx)
|
||||
|
||||

|
||||
|
||||
## Import in eine Organisation
|
||||
|
||||
Wähle diese Variante, wenn du in einer Organisation automatisch Teams anlegen und die Läufer in diese Importieren willst.
|
||||
Wähle diese Variante, wenn du Läufer direkt in eine Organisation importieren willst.
|
||||
|
||||
Wenn in der Datei bei einer Läufer:in kein Team angegeben ist wird sie direkt in die Organisation importiert.
|
||||
Ist ein Team angegeben wird das Team in der Organisation gesucht und neu Angelegt, wenn es nicht gefunden wurde - danach wird die Läufer:in in das Team importiert.
|
||||
|
||||
### Aus der Organisationsübersicht
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Übersicht öffnen
|
||||
|
||||
Öffne im Läufersystem die Seite `Orgs`
|
||||
|
||||
### Datei auswählen
|
||||
|
||||
Klicke oben auf `Läufer importieren`
|
||||
Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst
|
||||
|
||||
### Läufer überprüfen
|
||||
|
||||
Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
|
||||
### Organisation auswählen
|
||||
|
||||
Wähle oben die Organisation aus, in die die Läufer:innen importiert werden sollen.
|
||||
|
||||
### Import starten
|
||||
|
||||
Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen.
|
||||
Die Läufer werden nun in die Organisation importiert.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
### Aus der Organisationsdetailansicht
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Übersicht öffnen
|
||||
|
||||
Öffne im Läufersystem die Seite `Orgs`.
|
||||
Klicke bei der gewünschten Organisation auf den `Details` Button.
|
||||
|
||||
### Datei auswählen
|
||||
|
||||
Klicke oben auf `Läufer importieren`.
|
||||
Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst.
|
||||
|
||||
### Läufer überprüfen
|
||||
|
||||
Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
|
||||
### Organisation auswählen
|
||||
|
||||
Wähle oben die Organisation aus, in die die Läufer:innen importiert werden sollen.
|
||||
|
||||
### Import starten
|
||||
|
||||
Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen.
|
||||
Die Läufer werden nun in die Organisation importiert.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
### Aus der Läuferübersicht
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Übersicht öffnen
|
||||
|
||||
Öffne im Läufersystem die Seite `Läufer`
|
||||
|
||||
### Datei auswählen
|
||||
|
||||
Klicke oben auf `Läufer importieren`.
|
||||
Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst.
|
||||
|
||||
### Läufer überprüfen
|
||||
|
||||
Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
|
||||
### Organisation auswählen
|
||||
|
||||
Wähle oben die Organisation (Hat kein `>` im Namen) aus, in die die Läufer:innen importiert werden sollen.
|
||||
|
||||
### Import starten
|
||||
|
||||
Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen.
|
||||
Die Läufer werden nun in die Organisation importiert.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Import in ein Team
|
||||
|
||||
> Wähle diese Variante, wenn du Läufer direkt in ein Team importieren willst.
|
||||
|
||||
Wenn in der Datei bei einer Läufer:in ein Team angegeben ist wird dieses ignoriert und mit dem gewählten Team überschrieben..
|
||||
|
||||
### Aus der Teamdetailansicht
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Übersicht öffnen
|
||||
|
||||
Öffne im Läufersystem die Seite `Teams`.
|
||||
Klicke bei de, gewünschten Team auf den `Details` Button.
|
||||
|
||||
### Datei auswählen
|
||||
|
||||
Klicke oben auf `Läufer importieren`.
|
||||
Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst.
|
||||
|
||||
### Läufer überprüfen
|
||||
|
||||
Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
|
||||
### Team auswählen
|
||||
|
||||
Wähle oben das Team aus, in die die Läufer:innen importiert werden sollen.
|
||||
|
||||
### Import starten
|
||||
|
||||
Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen.
|
||||
Die Läufer werden nun in das Team importiert
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
### Aus der Läuferübersicht
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Übersicht öffnen
|
||||
|
||||
Öffne im Läufersystem die Seite `Läufer`.
|
||||
|
||||
### Datei auswählen
|
||||
|
||||
Klicke oben auf `Läufer importieren`.
|
||||
Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst.
|
||||
|
||||
### Läufer überprüfen
|
||||
|
||||
Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
|
||||
### Team auswählen
|
||||
|
||||
Wähle oben das Team (Hat ein `>` im Namen) aus, in die die Läufer:innen importiert werden sollen.
|
||||
|
||||
### Import starten
|
||||
|
||||
Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen.
|
||||
Die Läufer werden nun in das Team importiert
|
||||
|
||||
{{% /steps %}}
|
@ -1,215 +0,0 @@
|
||||
---
|
||||
title: Runner Import
|
||||
weight: 7
|
||||
---
|
||||
|
||||
To facilitate the entry of runners into the system, runners can be imported from Excel spreadsheets (CSV, XLSX).
|
||||
This function is mainly intended for schools and kindergartens, but can of course be used for all types of teams and organizations.
|
||||
Below we explain step by step how to import runners into the system.
|
||||
|
||||
## Structure of the Import Files
|
||||
|
||||
> The file must be in XLSX (Excel) or CSV format
|
||||
|
||||
All runners must be on one "worksheet" (Excel), all other worksheets will be ignored.
|
||||
The table must follow this schema:
|
||||
|
||||
| Vorname | Mittelname | Nachname | Team/Klasse |
|
||||
| ---------- | ---------- | --------- | ----------- |
|
||||
| FirstName1 | Optional | LastName1 | Optional |
|
||||
|
||||
Note: The Team column can be named Team or Class!
|
||||
|
||||
### Example: CSV
|
||||
|
||||
#### With Middle Name
|
||||
|
||||
> [Download sample file](/files/class_with_middlename.csv)
|
||||
|
||||
```csv
|
||||
First Name; Middle Name; Last Name; Team;
|
||||
Peter; ; Tester; 1A
|
||||
Manuel; Steffen; Rainforest; 1A
|
||||
Great; ; Guy; 2A
|
||||
```
|
||||
|
||||
#### Without Middle Name
|
||||
|
||||
> [Download sample file](/files/class_without_middlename.csv)
|
||||
|
||||
```csv
|
||||
First Name; Last Name; Team;
|
||||
Peter; Tester; 1A
|
||||
Manuel; Rainforest; 1A
|
||||
Great; Guy; 2A
|
||||
```
|
||||
|
||||
### Example: XLSX (Excel)
|
||||
|
||||
#### With Middle Name
|
||||
|
||||
> [Download sample file](/files/class_with_middlename.xlsx)
|
||||
|
||||

|
||||
|
||||
#### Without Middle Name
|
||||
|
||||
> [Download sample file](/files/class_without_middlename.xlsx)
|
||||
|
||||

|
||||
|
||||
## Import into an Organization
|
||||
|
||||
Choose this option if you want to automatically create teams in an organization and import the runners into them.
|
||||
Choose this option if you want to import runners directly into an organization.
|
||||
|
||||
If no team is specified for a runner in the file, they will be imported directly into the organization.
|
||||
If a team is specified, the team will be searched for in the organization and created if not found - then the runner will be imported into the team.
|
||||
|
||||
### From the Organization Overview
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Open Overview
|
||||
|
||||
Open the `Orgs` page in the runner system
|
||||
|
||||
### Select File
|
||||
|
||||
Click on `Import Runners` at the top
|
||||
Click on `Select File` and choose the file from which you want to import runners
|
||||
|
||||
### Verify Runners
|
||||
|
||||
A summary of all runners found in the file will be displayed - check all runners for correctness
|
||||
|
||||
### Select Organization
|
||||
|
||||
Select the organization at the top into which the runners should be imported.
|
||||
|
||||
### Start Import
|
||||
|
||||
Click on `Import Runners` at the bottom to import the runners or `Cancel` to cancel the import.
|
||||
The runners will now be imported into the organization.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
### From the Organization Detail View
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Open Overview
|
||||
|
||||
Open the `Orgs` page in the runner system.
|
||||
Click on the `Details` button for the desired organization.
|
||||
|
||||
### Select File
|
||||
|
||||
Click on `Import Runners` at the top.
|
||||
Click on `Select File` and choose the file from which you want to import runners.
|
||||
|
||||
### Verify Runners
|
||||
|
||||
A summary of all runners found in the file will be displayed - check all runners for correctness
|
||||
|
||||
### Select Organization
|
||||
|
||||
Select the organization at the top into which the runners should be imported.
|
||||
|
||||
### Start Import
|
||||
|
||||
Click on `Import Runners` at the bottom to import the runners or `Cancel` to cancel the import.
|
||||
The runners will now be imported into the organization.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
### From the Runner Overview
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Open Overview
|
||||
|
||||
Open the `Runners` page in the runner system
|
||||
|
||||
### Select File
|
||||
|
||||
Click on `Import Runners` at the top.
|
||||
Click on `Select File` and choose the file from which you want to import runners.
|
||||
|
||||
### Verify Runners
|
||||
|
||||
A summary of all runners found in the file will be displayed - check all runners for correctness
|
||||
|
||||
### Select Organization
|
||||
|
||||
Select the organization (does not have a `>` in the name) at the top into which the runners should be imported.
|
||||
|
||||
### Start Import
|
||||
|
||||
Click on `Import Runners` at the bottom to import the runners or `Cancel` to cancel the import.
|
||||
The runners will now be imported into the organization.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Import into a Team
|
||||
|
||||
> Choose this option if you want to import runners directly into a team.
|
||||
|
||||
If a team is specified for a runner in the file, it will be ignored and overwritten with the selected team.
|
||||
|
||||
### From the Team Detail View
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Open Overview
|
||||
|
||||
Open the `Teams` page in the runner system.
|
||||
Click on the `Details` button for the desired team.
|
||||
|
||||
### Select File
|
||||
|
||||
Click on `Import Runners` at the top.
|
||||
Click on `Select File` and choose the file from which you want to import runners.
|
||||
|
||||
### Verify Runners
|
||||
|
||||
A summary of all runners found in the file will be displayed - check all runners for correctness
|
||||
|
||||
### Select Team
|
||||
|
||||
Select the team at the top into which the runners should be imported.
|
||||
|
||||
### Start Import
|
||||
|
||||
Click on `Import Runners` at the bottom to import the runners or `Cancel` to cancel the import.
|
||||
The runners will now be imported into the team
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
### From the Runner Overview
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Open Overview
|
||||
|
||||
Open the `Runners` page in the runner system.
|
||||
|
||||
### Select File
|
||||
|
||||
Click on `Import Runners` at the top.
|
||||
Click on `Select File` and choose the file from which you want to import runners.
|
||||
|
||||
### Verify Runners
|
||||
|
||||
A summary of all runners found in the file will be displayed - check all runners for correctness
|
||||
|
||||
### Select Team
|
||||
|
||||
Select the team (has a `>` in the name) at the top into which the runners should be imported.
|
||||
|
||||
### Start Import
|
||||
|
||||
Click on `Import Runners` at the bottom to import the runners or `Cancel` to cancel the import.
|
||||
The runners will now be imported into the team
|
||||
|
||||
{{% /steps %}}
|
@ -1,48 +0,0 @@
|
||||
---
|
||||
title: Organizations
|
||||
weight: 3
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
If you are interested in the self-service for organizations, you can find the documentation [here](../../selfservice/orgs).
|
||||
{{< /callout >}}
|
||||
|
||||
Runner organizations are the heart of the group system for runners.
|
||||
An organization can be a company, school, kindergarten, club, or similar.
|
||||
|
||||
Runners can be directly assigned to an organization.
|
||||
To further sort the runners of an organization (e.g., school), multiple teams (e.g., classes) can be assigned to an organization.
|
||||
A contact can be assigned to an organization/team, more about this can be found [here](../contacts).
|
||||
More about teams can be found [here](../teams).
|
||||
|
||||
## Creating
|
||||
|
||||
To create a new organization, open the `Orgs` page in the runner system.
|
||||
You can create a new organization by clicking the `Create Organization` button.
|
||||
You can give the organization a name.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit an organization, click the `Details` button for the desired organization in the organization overview.
|
||||
In the overview for this organization, you can now change the name of the organization and the assigned contact.
|
||||
When you are done, simply click `Save changes`.
|
||||
|
||||
## Deleting
|
||||
|
||||
You can delete an organization either from the organization overview or the organization detail view.
|
||||
|
||||
### In the organization overview
|
||||
|
||||
Click the `Delete` button for the desired organization.
|
||||
You will then be asked if you really want to delete the organization or cancel.
|
||||
|
||||
### In the organization detail view
|
||||
|
||||
Click the `Details` button for the desired organization.
|
||||
At the top of the page, there is now a `Delete organization` button.
|
||||
You will then be asked if you really want to delete the organization or cancel.
|
||||
|
||||
### Organization with teams and runners
|
||||
|
||||
If the organization still has teams and/or runners, a warning will appear after confirming the deletion.
|
||||
Here you must confirm the deletion including all runners and teams again, alternatively, you can cancel.
|
@ -1,67 +0,0 @@
|
||||
---
|
||||
title: Runners
|
||||
weight: 6
|
||||
---
|
||||
|
||||
Runners are the heart of the runner system.
|
||||
They are used to track routes and calculate donations.
|
||||
|
||||
Runners can be assigned to a [Team](../teams) or an [Organization](../teams).
|
||||
|
||||
## Runner Overview
|
||||
|
||||
> A brief overview of the functions of the runner overview.
|
||||
|
||||
The runner overview lists all runners registered in the system.
|
||||
From here you can add, edit, or delete individual runners.
|
||||
|
||||
To make it easier to search for individual runners, there is a filter by teams and organizations.
|
||||
If you add multiple teams/organizations to the filter, all runners registered in any of the teams/organizations will be displayed.
|
||||
|
||||
There is also a search function that allows you to search by runner names, IDs, and groups (teams/organizations).
|
||||
If you enter an ID, only the runner with exactly that ID will be displayed. If you want to see all runners whose IDs start with your input, add a `*` at the end of the ID.
|
||||
|
||||
Examples:
|
||||
|
||||
* `Peter` -> All runners with Peter in their name
|
||||
* `Gymnasium` -> All runners in a group named Gymnasium
|
||||
* `421` -> The runner with ID 421
|
||||
* `42*` -> All runners whose ID starts with 42
|
||||
|
||||
## Actions
|
||||
|
||||
### Create
|
||||
|
||||
{{< callout type="warning" >}}
|
||||
To create a runner, you must first create an organization and/or a team.
|
||||
{{< /callout >}}
|
||||
|
||||
To create a new runner, open the `Runners` page in the runner system.
|
||||
Click the `Add Runner` button to create a new runner.
|
||||
You must provide a first name, last name, and group (team/organization).
|
||||
Additionally, you can provide a middle name (second first name), phone number, and email address.
|
||||
|
||||
### Edit
|
||||
|
||||
To edit a runner, click the `Details` button for the desired runner in the runner overview.
|
||||
In the runner's overview, you can now edit the first name, middle name, last name, phone number, email address, and group.
|
||||
When you are finished, simply click `Save Changes`.
|
||||
|
||||
### Delete
|
||||
|
||||
You can delete a runner either from the runner overview or the runner detail view.
|
||||
|
||||
### In the Runner Overview
|
||||
|
||||
Click the `Delete` button for the desired runner.
|
||||
You will then be asked if you really want to delete the runner or cancel.
|
||||
|
||||
### In the Runner Detail View
|
||||
|
||||
Click the `Details` button for the desired runner.
|
||||
At the top of the page, there is now a `Delete Runner` button.
|
||||
You will then be asked if you really want to delete the runner or cancel.
|
||||
|
||||
## Import
|
||||
|
||||
You can find the import instructions [here](../import).
|
@ -1,52 +0,0 @@
|
||||
---
|
||||
title: Scans
|
||||
weight: 12
|
||||
---
|
||||
|
||||
Scans are the heart of kilometer tracking - they connect [runners](../runners) with the distance covered.
|
||||
There are two types of scans in the system: "Fixed Distance Scans" and "Track Scans".
|
||||
|
||||
Fixed Distance Scans can only be created by users in the runner system and assign a fixed distance to a runner.
|
||||
This is particularly useful when runners have lost cards halfway or receive a distance bonus for other reasons.
|
||||
|
||||
Track Scans, on the other hand, can only be generated by a scanning station scanning the code of a runner's card, thus creating a new scan.
|
||||
Track Scans are always linked to a runner and a [track](../tracks), from which the distance is derived.
|
||||
|
||||
## Creating
|
||||
|
||||
> You can only create Fixed Distance Scans in the runner system.
|
||||
|
||||
To create a new scan, open the `Scans` page in the runner system.
|
||||
You can create a new scan using the `Create Scan` button.
|
||||
You must assign a runner and a distance in meters to the scan.
|
||||
Once you have provided all the information, you can create the scan using the `Create` button.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a scan, you can click the `Details` button for the desired scan in the scan overview.
|
||||
|
||||
### Fixed Distance Scans
|
||||
|
||||
In the scan detail view of Fixed Distance Scans, you can adjust the validity, runner, and distance.
|
||||
When you are done, simply click `Save Changes`.
|
||||
|
||||
### Track Scans
|
||||
|
||||
In the scan detail view of Track Scans, you can only adjust the validity - all other values are fixed in the system.
|
||||
When you are done, simply click `Save Changes`.
|
||||
|
||||
## Deleting
|
||||
|
||||
You can delete a scan either from the scan overview or the scan detail view.
|
||||
We generally recommend deactivating scans rather than deleting them to prevent human errors.
|
||||
|
||||
### In the Scan Overview
|
||||
|
||||
Click the `Delete` button for the desired scan.
|
||||
You will then be asked whether you really want to delete the scan or cancel.
|
||||
|
||||
### In the Scan Detail View
|
||||
|
||||
Click the `Details` button for the desired scanning station.
|
||||
At the top of the page, there is now a `Delete Scan` button.
|
||||
You will then be asked whether you really want to delete the scanning station or cancel.
|
@ -1,63 +0,0 @@
|
||||
---
|
||||
title: Scanner Stations
|
||||
weight: 13
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
The documentation for using the [scanner stations can be found here](../../scanstation)
|
||||
{{< /callout >}}
|
||||
|
||||
Scanner stations create scans for runner cards on [Tracks](../tracks).
|
||||
In the real world, scanner stations are usually laptops with barcode scanners and special software.
|
||||
|
||||
The scanner stations in the runner system are used to register the "real" scanner stations and assign them to a track.
|
||||
This part of the documentation only deals with the scanner stations in the runner system!
|
||||
|
||||
## Creating
|
||||
|
||||
{{< callout type="warning" >}}
|
||||
Before you can create a scanner station, you must first create a [track](../tracks) to which it belongs.
|
||||
{{< /callout >}}
|
||||
{{< callout type="info" >}}
|
||||
When you create a scanner station, you will receive a token (code/key) for it - keep it safe!
|
||||
{{< /callout >}}
|
||||
|
||||
To create a new scanner station, open the `Scanner Stations` page in the runner system.
|
||||
You can create a new scanner station by clicking the `Create Station` button.
|
||||
You must assign the station to a track and you can give the station a description and deactivate it.
|
||||
When you are done, simply click the `Create` button.
|
||||
|
||||
After the scanner station has been created in the system, you will be shown its token.
|
||||
This token is only displayed once and cannot be changed - so keep it safe!
|
||||
You can click on the token or the copy button to copy the token to your clipboard.
|
||||
Once you have securely saved the token, you can close the dialog by clicking the `Yes, I have copied the token` button.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a scanner station, click the `Details` button for the desired scanner station in the scanner station overview.
|
||||
In the overview for this scanner station, you can now change the track and description of the scanner station and (de)activate it.
|
||||
When you are done, simply click `Save changes`.
|
||||
|
||||
## Deleting
|
||||
|
||||
You can delete a scanner station either from the scanner station overview or from the scanner station detail view.
|
||||
|
||||
### In the Scanner Station Overview
|
||||
|
||||
Click the `Delete` button for the desired scanner station.
|
||||
You will then be asked if you really want to delete the scanner station or cancel.
|
||||
|
||||
### In the Scanner Station Detail View
|
||||
|
||||
Click the `Details` button for the desired scanner station.
|
||||
At the top of the page, there is now a `Delete Station` button.
|
||||
You will then be asked if you really want to delete the scanner station or cancel.
|
||||
|
||||
### Scanner Station with Scans
|
||||
|
||||
{{< callout type="error" >}}
|
||||
We recommend never deleting stations with scans, but simply deactivating them!
|
||||
{{< /callout >}}
|
||||
|
||||
If the scanner station still has associated scans, a warning will appear again after confirming the deletion.
|
||||
Here you must confirm the deletion including all scans again, or you can cancel.
|
@ -1,45 +0,0 @@
|
||||
---
|
||||
title: Teams
|
||||
weight: 4
|
||||
---
|
||||
Runner teams are the subgroups of the group system for runners.
|
||||
A team can be a class, department, group, or similar.
|
||||
|
||||
Runners can be assigned to a team, which in turn belongs to an organization (more about organizations can be found [here](../orgs)).
|
||||
An organization/team can be assigned a contact, more about that can be found [here](../contacts)).
|
||||
|
||||
## Creating
|
||||
|
||||
{{< callout type="warning" >}}
|
||||
Warning: To create a team, you must first create the parent organization for the team.
|
||||
{{< /callout >}}
|
||||
|
||||
To create a new team, open the `Teams` page in the runner system.
|
||||
You can create a new team using the `Create Team` button.
|
||||
You can give the team a name and select which organization the team belongs to.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a team, you can click the `Details` button for the desired team in the team overview.
|
||||
In the overview for this team, you can now change the name, parent organization, and contact of the team.
|
||||
When you are finished, simply click `Save Changes`.
|
||||
|
||||
## Deleting
|
||||
|
||||
You can delete a team either from the team overview or the team detail view.
|
||||
|
||||
### In the Team Overview
|
||||
|
||||
Click the `Delete` button for the desired team.
|
||||
You will then be asked if you really want to delete the team or cancel.
|
||||
|
||||
### In the Team Detail View
|
||||
|
||||
Click the `Details` button for the desired team.
|
||||
At the top of the page, there is now a `Delete Team` button.
|
||||
You will then be asked if you really want to delete the team or cancel.
|
||||
|
||||
### Teams with Runners
|
||||
|
||||
If the team still has runners, a warning will appear after confirming the deletion.
|
||||
Here you must confirm the deletion including all runners again, or you can cancel.
|
@ -1,25 +0,0 @@
|
||||
---
|
||||
title: Tracks
|
||||
weight: 11
|
||||
---
|
||||
|
||||
Tracks are predefined running routes in the system, based on which distances for scans are calculated.
|
||||
They have a name, a distance (in meters), and a minimum lap time (faster laps are automatically flagged as cheating).
|
||||
In the past, the "Run for Kaya!" event always had two tracks: "small lap" (400m) and "big lap" (1000m).
|
||||
|
||||
## Creating
|
||||
|
||||
To create a new track, open the `Tracks` page in the runner system.
|
||||
You can create a new track by clicking the `Create Track` button.
|
||||
You need to provide the name of the track and its length in meters - optionally, you can also specify a minimum lap time in seconds.
|
||||
|
||||
## Editing
|
||||
|
||||
To edit a track, click the `Edit` button for the desired track in the track overview.
|
||||
You can then edit the values in the track's columns.
|
||||
When you are done, simply click `Save`.
|
||||
|
||||
## Deleting
|
||||
|
||||
To delete a track, click the `Delete` button for the desired track in the track overview.
|
||||
You will then have the option to cancel the deletion process or confirm the deletion by clicking `Confirm`.
|
@ -1,52 +0,0 @@
|
||||
---
|
||||
title: Nutzer:innen
|
||||
weight: 2
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Administratoren können Nutzer:innen im System anlegen und verwalten.
|
||||
Mehr Informationen dazu findest du im [Admin](../../admin) Bereich.
|
||||
{{< /callout >}}
|
||||
|
||||
## Passwort vergessen
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Anmeldeseite
|
||||
|
||||
Die Login Seite des Systems aufrufen.
|
||||
Auf `Passwort vergessen?` klicken.
|
||||
|
||||
### E-Mail eingeben
|
||||
|
||||
Deine E-Mail Adresse eingeben.
|
||||
|
||||
### E-Mail bestätigen
|
||||
|
||||
Du bekommst eine Mail, du sie hast auf den Link in der Mail klicken
|
||||
|
||||
### Neues Passwort setzen
|
||||
|
||||
Das neue Passwort setzen.
|
||||
Wieder normal anmelden
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Einstellungen ändern
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Anmelden
|
||||
|
||||
Melde dich im Läufersystem an.
|
||||
|
||||
### Anpassen
|
||||
|
||||
Gehe auf die Seite `Einstellungen`.
|
||||
Pass deine Nutzereinstellungen an.
|
||||
|
||||
### Speichern
|
||||
|
||||
Klicke auf `Speichern`
|
||||
|
||||
{{% /steps %}}
|
@ -1,52 +0,0 @@
|
||||
---
|
||||
title: Users
|
||||
weight: 2
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Administrators can create and manage users in the system.
|
||||
You can find more information in the [Admin](../../admin) section.
|
||||
{{< /callout >}}
|
||||
|
||||
## Forgot Password
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Login Page
|
||||
|
||||
Open the login page of the system.
|
||||
Click on `Forgot Password?`.
|
||||
|
||||
### Enter Email
|
||||
|
||||
Enter your email address.
|
||||
|
||||
### Confirm Email
|
||||
|
||||
You will receive an email, click on the link in the email.
|
||||
|
||||
### Set New Password
|
||||
|
||||
Set the new password.
|
||||
Log in normally again.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Change Settings
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Log In
|
||||
|
||||
Log in to the runner system.
|
||||
|
||||
### Adjust
|
||||
|
||||
Go to the `Settings` page.
|
||||
Adjust your user settings.
|
||||
|
||||
### Save
|
||||
|
||||
Click on `Save`.
|
||||
|
||||
{{% /steps %}}
|
@ -1,6 +1,6 @@
|
||||
version: "3.3"
|
||||
services:
|
||||
httpd:
|
||||
build: .
|
||||
ports:
|
||||
version: "3.3"
|
||||
services:
|
||||
httpd:
|
||||
build: .
|
||||
ports:
|
||||
- 8080:80
|
5
go.mod
@ -1,5 +0,0 @@
|
||||
module git.odit.services/lfk/docs
|
||||
|
||||
go 1.23.4
|
||||
|
||||
require github.com/imfing/hextra v0.9.3 // indirect
|
2
go.sum
@ -1,2 +0,0 @@
|
||||
github.com/imfing/hextra v0.9.3 h1:p4vDm2TSgt3RpJdJm2mqkpoJCH2S08wzySyyYodtgCc=
|
||||
github.com/imfing/hextra v0.9.3/go.mod h1:cEfel3lU/bSx7lTE/+uuR4GJaphyOyiwNR3PTqFTXpI=
|
@ -1,2 +0,0 @@
|
||||
editThisPage: "Diese Seite bearbeiten →"
|
||||
copyright: 'Erstellt von <a href="https://odit.services/?ref=lfk-docs" target="_blank" rel="noreferrer" style="color:magenta !important; font-weight: bold;">ODIT.Services</a> mit ❤️, <a href="https://gohugo.io/" rel="noreferrer" target="_blank" style="color: rgb(63, 198, 250); font-weight: bold;">Hugo</a> und <a href="https://github.com/imfing/hextra" rel="noreferrer" target="_blank" style="color: rgb(51, 186, 145); font-weight: bold;">dem Hextra Theme</a><br>Entwickelt für den <a href="https://lauf-fuer-kaya.de" target="_blank" rel="noreferrer" style="color: #ebb951; font-weight: bold;">Lauf für Kaya! Spendenlauf</a> <br><a href="https://lauf-fuer-kaya.de/impressum" target="_blank" rel="noreferrer">Impressum</a> | <a href="https://lauf-fuer-kaya.de/datenschutz" target="_blank" rel="noreferrer">Datenschutz</a>'
|
@ -1,8 +0,0 @@
|
||||
user: User
|
||||
admin: Administrators
|
||||
selfservice: Selfservice
|
||||
scanstation: Scaning Stations
|
||||
beamershow: Beamer Show
|
||||
search: Search
|
||||
editThisPage: "Edit this page →"
|
||||
copyright: 'Made by <a href="https://odit.services/?ref=lfk-docs" target="_blank" rel="noreferrer" style="color:magenta !important; font-weight: bold;">ODIT.Services</a> with ❤️, <a href="https://gohugo.io/" rel="noreferrer" target="_blank" style="color: rgb(63, 198, 250); font-weight: bold;">Hugo</a> and <a href="https://github.com/imfing/hextra" rel="noreferrer" target="_blank" style="color: rgb(51, 186, 145); font-weight: bold;">the Hextra theme</a><br>Developed for the <a href="https://lauf-fuer-kaya.de" target="_blank" rel="noreferrer" style="color: #ebb951; font-weight: bold;">Lauf für Kaya! charity run</a> <br><a href="https://lauf-fuer-kaya.de/impressum" target="_blank" rel="noreferrer">Imprint</a> | <a href="https://lauf-fuer-kaya.de/datenschutz" target="_blank" rel="noreferrer">Privacy</a>'
|
@ -1,49 +0,0 @@
|
||||
{{- $enableFooterSwitches := .Scratch.Get "enableFooterSwitches" | default false -}}
|
||||
{{- $displayThemeToggle := site.Params.theme.displayToggle | default true -}}
|
||||
{{- $footerSwitchesVisible := and $enableFooterSwitches (or hugo.IsMultilingual $displayThemeToggle) -}}
|
||||
{{- $copyrightSectionVisible := or (.Site.Params.footer.displayPoweredBy | default true) .Site.Params.footer.displayCopyright -}}
|
||||
|
||||
{{- $copyright := (T "copyright") | default "© 2024 Hextra." -}}
|
||||
{{- $poweredBy := (T "poweredBy") | default "Powered by Hextra" -}}
|
||||
|
||||
{{- $footerWidth := "hx-max-w-screen-xl" -}}
|
||||
{{- with .Site.Params.footer.width -}}
|
||||
{{ if eq . "wide" -}}
|
||||
{{ $footerWidth = "hx-max-w-[90rem]" -}}
|
||||
{{ else if eq . "full" -}}
|
||||
{{ $footerWidth = "max-w-full" -}}
|
||||
{{ end -}}
|
||||
{{- end -}}
|
||||
|
||||
|
||||
<footer class="hextra-footer hx-bg-gray-100 hx-pb-[env(safe-area-inset-bottom)] dark:hx-bg-neutral-900 print:hx-bg-transparent">
|
||||
{{- if $footerSwitchesVisible -}}
|
||||
<div class="hx-mx-auto hx-flex hx-gap-2 hx-py-2 hx-px-4 {{ $footerWidth }}">
|
||||
{{- partial "language-switch.html" (dict "context" .) -}}
|
||||
{{- with $displayThemeToggle }}{{ partial "theme-toggle.html" }}{{ end -}}
|
||||
</div>
|
||||
{{- if or hugo.IsMultilingual $displayThemeToggle -}}
|
||||
<hr class="dark:hx-border-neutral-800" />
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- if $copyrightSectionVisible -}}
|
||||
<div
|
||||
class="{{ $footerWidth }} hx-mx-auto hx-flex hx-justify-center hx-py-1 hx-pl-[max(env(safe-area-inset-left),1.5rem)] hx-pr-[max(env(safe-area-inset-right),1.5rem)] hx-text-gray-600 dark:hx-text-gray-400 md:hx-justify-start"
|
||||
>
|
||||
<div class="hx-flex hx-w-full hx-flex-col sm:hx-items-start">
|
||||
{{- if .Site.Params.footer.displayCopyright }}<div class="hx-mt-1 hx-text-xs">{{ $copyright | markdownify }}</div>{{- end -}}
|
||||
</div>
|
||||
</div>
|
||||
{{- end -}}
|
||||
</footer>
|
||||
|
||||
{{- define "theme-credit" -}}
|
||||
<a class="hx-flex hx-text-sm hx-items-center hx-gap-1 hx-text-current" target="_blank" rel="noopener noreferrer" title="Hextra GitHub Homepage" href="https://github.com/imfing/hextra">
|
||||
<span>
|
||||
{{- . | markdownify -}}
|
||||
{{- if strings.Contains . "Hextra" -}}
|
||||
{{- partial "utils/icon.html" (dict "name" "hextra" "attributes" `height=1em class="hx-inline-block ltr:hx-ml-1 rtl:hx-mr-1 hx-align-[-2.5px]"`) -}}
|
||||
{{- end -}}
|
||||
</span>
|
||||
</a>
|
||||
{{- end -}}
|
113
licenses.md
Normal file
@ -0,0 +1,113 @@
|
||||
# vuepress-plugin-flexsearch
|
||||
**Author**: Ahmad Mostafa
|
||||
**Repo**: https://github.com/z3by/vuepress-plugin-flexsearch
|
||||
**License**: MIT
|
||||
**Description**: Next-Generation full text search library for Vuepress
|
||||
## License Text
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2020 Ahmad Mostafa
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
|
||||
# vuepress-theme-default-prefers-color-scheme
|
||||
**Author**: tolking <qw13131wang@gmail.com>
|
||||
**Repo**: https://github.com/tolking/vuepress-theme-default-prefers-color-scheme
|
||||
**License**: MIT
|
||||
**Description**: add prefers-color-scheme for vuepress default theme
|
||||
## License Text
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright 2019 tolking <qw13131wang@gmail.com>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
|
||||
# @odit/license-exporter
|
||||
**Author**: ODIT.Services
|
||||
**Repo**: https://git.odit.services/odit/license-exporter
|
||||
**License**: MIT
|
||||
**Description**: A simple license crawler for crediting open source work
|
||||
## License Text
|
||||
MIT License Copyright (c) 2020 ODIT.Services (info@odit.services)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is furnished
|
||||
to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice (including the next
|
||||
paragraph) shall be included in all copies or substantial portions of the
|
||||
Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
|
||||
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
|
||||
OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
|
||||
# vuepress
|
||||
**Author**: Evan You
|
||||
**Repo**: https://github.com/vuejs/vuepress
|
||||
**License**: MIT
|
||||
**Description**: Minimalistic doc generator with Vue component based layout system
|
||||
## License Text
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2018-present, Yuxi (Evan) You
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
|
||||
|
47
nginx.conf
Normal file
@ -0,0 +1,47 @@
|
||||
|
||||
events {
|
||||
}
|
||||
http {
|
||||
include mime.types;
|
||||
sendfile on;
|
||||
server {
|
||||
root /usr/share/nginx/html;
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
|
||||
# --- Brotli
|
||||
brotli on;
|
||||
brotli_comp_level 6;
|
||||
brotli_static on;
|
||||
brotli_types application/atom+xml application/javascript application/json application/rss+xml application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype application/x-font-ttf application/x-javascript application/xhtml+xml application/xml font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml;
|
||||
# --- GZIP
|
||||
gzip on;
|
||||
gzip_disable "msie6";
|
||||
gzip_vary on;
|
||||
gzip_proxied any;
|
||||
gzip_comp_level 6;
|
||||
gzip_buffers 16 8k;
|
||||
gzip_http_version 1.1;
|
||||
gzip_types application/javascript
|
||||
application/rss+xml
|
||||
application/vnd.ms-fontobject
|
||||
application/x-font
|
||||
application/x-font-opentype
|
||||
application/x-font-otf
|
||||
application/x-font-truetype
|
||||
application/x-font-ttf
|
||||
application/x-javascript
|
||||
application/xhtml+xml
|
||||
application/xml
|
||||
font/opentype
|
||||
font/otf
|
||||
font/ttf
|
||||
image/svg+xml
|
||||
image/x-icon
|
||||
text/css
|
||||
text/javascript
|
||||
text/plain
|
||||
text/xml;
|
||||
}
|
||||
}
|
44
package.json
Normal file
@ -0,0 +1,44 @@
|
||||
{
|
||||
"name": "@odit/lfk-docs",
|
||||
"version": "0.0.1",
|
||||
"description": "The documentation for the LfK! 'Läufersystem'.",
|
||||
"main": "index.js",
|
||||
"author": {
|
||||
"name": "ODIT.Services",
|
||||
"email": "info@odit.services",
|
||||
"url": "https://odit.services"
|
||||
},
|
||||
"contributors": [
|
||||
{
|
||||
"name": "Philipp Dormann",
|
||||
"email": "philipp@philippdormann.de",
|
||||
"url": "https://philippdormann.de"
|
||||
},
|
||||
{
|
||||
"name": "Nicolai Ort",
|
||||
"email": "info@nicolai-ort.com",
|
||||
"url": "https://nicolai-ort.com"
|
||||
}
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git@git.odit.services:lfk/docs.git"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "vuepress dev src",
|
||||
"build": "vuepress build src",
|
||||
"licenses:export": "license-exporter --markdown"
|
||||
},
|
||||
"license": "CC-BY-NC-SA-4.0",
|
||||
"devDependencies": {
|
||||
"@odit/license-exporter": "0.0.12",
|
||||
"vuepress": "1.9.9"
|
||||
},
|
||||
"dependencies": {
|
||||
"vuepress-plugin-flexsearch": "0.3.0",
|
||||
"vuepress-theme-default-prefers-color-scheme": "2.0.0"
|
||||
},
|
||||
"volta": {
|
||||
"node": "16.15.1"
|
||||
}
|
||||
}
|
15
src/.vuepress/components/Foo/Bar.vue
Normal file
@ -0,0 +1,15 @@
|
||||
<template>
|
||||
<p class="demo">
|
||||
{{ msg }}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
msg: 'Hello this is <Foo-Bar>'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
3
src/.vuepress/components/OtherComponent.vue
Normal file
@ -0,0 +1,3 @@
|
||||
<template>
|
||||
<p class="demo">This is another component</p>
|
||||
</template>
|
15
src/.vuepress/components/demo-component.vue
Normal file
@ -0,0 +1,15 @@
|
||||
<template>
|
||||
<p class="demo">
|
||||
{{ msg }}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
msg: 'Hello this is <demo-component>'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
172
src/.vuepress/config.js
Normal file
@ -0,0 +1,172 @@
|
||||
const { description } = require('../../package')
|
||||
|
||||
module.exports = {
|
||||
locales: {
|
||||
'/': {
|
||||
lang: 'de-DE',
|
||||
title: 'LfK! Dokumentation',
|
||||
description: 'Dokumentation für das Lauf für Kaya! Läufersystem'
|
||||
},
|
||||
'/en/': {
|
||||
lang: 'en-US',
|
||||
title: 'LfK! Documentation',
|
||||
description: 'The official documentation for the LfK! "Läufersystem"'
|
||||
}
|
||||
},
|
||||
head: [
|
||||
['meta', { name: 'theme-color', content: '#3eaf7c' }],
|
||||
['meta', { name: 'apple-mobile-web-app-capable', content: 'yes' }],
|
||||
['meta', { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }]
|
||||
],
|
||||
theme: 'default-prefers-color-scheme',
|
||||
themeConfig: {
|
||||
repo: '',
|
||||
editLinks: false,
|
||||
docsDir: '',
|
||||
editLinkText: '',
|
||||
lastUpdated: false,
|
||||
locales: {
|
||||
'/': {
|
||||
selectText: 'Sprachen',
|
||||
label: 'Deutsch (German)',
|
||||
nav: [
|
||||
{
|
||||
text: 'Für Nutzer',
|
||||
link: '/users/',
|
||||
},
|
||||
{
|
||||
text: 'Für Admins',
|
||||
link: '/admins/'
|
||||
},
|
||||
{
|
||||
text: 'Über den Selfservice',
|
||||
link: '/selfservice/'
|
||||
},
|
||||
{
|
||||
text: 'Scannerstationen',
|
||||
link: '/scanstations/'
|
||||
},
|
||||
{
|
||||
text: 'Beamershow',
|
||||
link: '/beamershow/'
|
||||
},
|
||||
{
|
||||
text: 'Source Code',
|
||||
link: 'https://git.odit.services/lfk'
|
||||
}
|
||||
],
|
||||
sidebar: {
|
||||
'/users/': [
|
||||
{
|
||||
title: 'Nutzerdokumentation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
'accounts',
|
||||
'organizations',
|
||||
'teams',
|
||||
'runners',
|
||||
'runner_import',
|
||||
'donors',
|
||||
'donations',
|
||||
'cards',
|
||||
'sponsoring_contracts',
|
||||
'tracks',
|
||||
'scans',
|
||||
'scanstations'
|
||||
]
|
||||
}
|
||||
],
|
||||
'/admins/': [
|
||||
{
|
||||
title: 'Administrative Dokumentation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
'quickstart',
|
||||
'users',
|
||||
'usergroups'
|
||||
]
|
||||
}
|
||||
],
|
||||
'/selfservice/': [
|
||||
{
|
||||
title: 'Selfservice Dokumentation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
'org_selfservice'
|
||||
]
|
||||
}
|
||||
],
|
||||
'/scanstations/': [
|
||||
{
|
||||
title: 'Scannerstation Dokumentation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
'install',
|
||||
'config',
|
||||
'config_scanners',
|
||||
'hardware'
|
||||
]
|
||||
}
|
||||
],
|
||||
'/beamershow/': [
|
||||
{
|
||||
title: 'Beamershow Dokumentation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
'config'
|
||||
]
|
||||
}
|
||||
],
|
||||
}
|
||||
},
|
||||
'/en/': {
|
||||
selectText: 'Languages',
|
||||
label: 'English',
|
||||
nav: [
|
||||
{
|
||||
text: 'For Users',
|
||||
link: '/en/users/',
|
||||
},
|
||||
{
|
||||
text: 'For Admins',
|
||||
link: '/en/admins/'
|
||||
},
|
||||
{
|
||||
text: 'Source Code',
|
||||
link: 'https://git.odit.services/lfk'
|
||||
}
|
||||
],
|
||||
sidebar: {
|
||||
'/en/users/': [
|
||||
{
|
||||
title: 'User documentation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
''
|
||||
]
|
||||
}
|
||||
],
|
||||
'/en/admins/': [
|
||||
{
|
||||
title: 'Admin documentation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
''
|
||||
]
|
||||
}
|
||||
],
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
plugins: [
|
||||
'@vuepress/plugin-back-to-top',
|
||||
'@vuepress/plugin-medium-zoom',
|
||||
'flexsearch'
|
||||
]
|
||||
}
|
14
src/.vuepress/enhanceApp.js
Normal file
@ -0,0 +1,14 @@
|
||||
/**
|
||||
* Client app enhancement file.
|
||||
*
|
||||
* https://v1.vuepress.vuejs.org/guide/basic-config.html#app-level-enhancements
|
||||
*/
|
||||
|
||||
export default ({
|
||||
Vue, // the version of Vue being used in the VuePress app
|
||||
options, // the options for the root Vue instance
|
||||
router, // the router instance for the app
|
||||
siteData // site metadata
|
||||
}) => {
|
||||
// ...apply enhancements for the site.
|
||||
}
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 152 KiB After Width: | Height: | Size: 152 KiB |
Before Width: | Height: | Size: 65 KiB After Width: | Height: | Size: 65 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
BIN
src/.vuepress/public/images/service_interaction.png
Normal file
After Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
8
src/.vuepress/styles/index.styl
Normal file
@ -0,0 +1,8 @@
|
||||
/**
|
||||
* Custom Styles here.
|
||||
*
|
||||
* ref:https://v1.vuepress.vuejs.org/config/#index-styl
|
||||
*/
|
||||
|
||||
.home .hero img
|
||||
max-width 450px!important
|
10
src/.vuepress/styles/palette.styl
Normal file
@ -0,0 +1,10 @@
|
||||
/**
|
||||
* Custom palette here.
|
||||
*
|
||||
* ref:https://v1.vuepress.vuejs.org/zh/config/#palette-styl
|
||||
*/
|
||||
|
||||
$accentColor = #3eaf7c
|
||||
$textColor = #2c3e50
|
||||
$borderColor = #eaecef
|
||||
$codeBgColor = #282c34
|
26
src/admins/README.md
Normal file
@ -0,0 +1,26 @@
|
||||
# Admins
|
||||
|
||||
Dieser Teil der Dokumentation befasst sich mit der Installation, Konfiguration und Bedienung des Läufersystems für normale Admins.
|
||||
Solltest du an der Bedienung für normale Nutzer interessiert sein schau doch mal in den <router-link to="./users">Nutzerbereich</router-link>.
|
||||
|
||||
## Services
|
||||
> Eine kurze Übersicht über die verschiedenen Services des Systems und ihre Interaktion
|
||||
|
||||
* Backend: Beinhaltet die Hauptlogik und verwaltet die Daten (via Datenbankanbindung)
|
||||
* Mailer: Versendet auf Basis von HTML-Templates automatisiert Mails
|
||||
* Document-Server: Erstellt PDFs (Urkunden, Läuferkarten, Sponsoringerklärungen) aus HTML-Templates
|
||||
* Frontend: Verwaltungsoberfläche für die Admins und Benutzer:innen des Läufersystems
|
||||
* Selfservice: Portal in dem sich Bürger- und Firmenläufer:innen registrieren und ihre Daten einsehen können
|
||||
* Beamershow: Zeigt aktuelle Statistiken und Toplisten zum Event an
|
||||
* Scanclient: Software für die Scannerstationen
|
||||
* Docs: Diese Dokumentation
|
||||
|
||||

|
||||
|
||||
|
||||
## FAQ
|
||||
> Ein paar der meist gestellten Fragen vorab
|
||||
|
||||
### Warum sehe ich eine Seite nicht?
|
||||
Nutzer sehen nur die Seiten im System, für die sie Berechtigungen haben.
|
||||
Solltest du eine Seite nicht sehen bist du vermutlich nicht voll als Admin berechtigt.
|
19
src/admins/quickstart.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Schnellstart
|
||||
> Du willst das System schnell aufsetzen und testen? Dann bist du hier genau richtig!
|
||||
> Um das System für produktive Zwecke einzusetzen schau dir bitte die <router-link to="./installation">Installationsanleitung</router-link> an.
|
||||
|
||||
## Voraussetzungen
|
||||
Alle der folgenden Anleitungen gehen davon aus, dass du bereits Docker und Docker-Compose installiert hast.
|
||||
Die Installationsanleitungen dafür findest du hier:
|
||||
* [Docker](https://docs.docker.com/get-docker/)
|
||||
* [Docker-Compose](https://docs.docker.com/compose/install/)
|
||||
|
||||
## Das ganze System
|
||||
> Du willst das ganze System (backend, fronten, document-server) schnell aufsetzen.
|
||||
|
||||
1. Klone das lfk/deployment git repo von: https://git.odit.services/lfk/deployment (oder lade es herunter)
|
||||
2. Navigiere nach `docker-compose/full_stack`: `cd deployment/docker-compose/full_stack`
|
||||
3. Starte das System mit `docker-compose up`
|
||||
4. Nachdem alles gestartet ist ist kannst du das Frontend aufrufen: http://localhost:4010 (backend: http://localhost:4010/api/, document-server: http://localhost:4010/documents/)
|
||||
|
||||
Bei Bedarf können die Ports und andere Einstellungen im docker-compose.yml angepasst werden.
|
@ -1,9 +1,4 @@
|
||||
---
|
||||
title: Benutzergruppen verwalten
|
||||
weight: 4
|
||||
prev: /admin/quickstart
|
||||
next: /admin/usergroups
|
||||
---
|
||||
# Benutzergruppen
|
||||
|
||||
Als Admin kannst du Benutzergruppen anlegen und Benutzer:innen in diese Einsortieren.
|
||||
Die Benutzer:innen erben dadurch die Berechtigungen aller Gruppen, in denen sie sind.
|
||||
@ -11,40 +6,31 @@ Die Benutzer:innen erben dadurch die Berechtigungen aller Gruppen, in denen sie
|
||||
So kannst du z.B. alle Admins in die `ADMINS` Gruppe packen, anstatt jeder Benutzer:in langwierig alle Berechtigungen von Hand zuzuweisen.
|
||||
|
||||
## Anlegen
|
||||
|
||||
Um eine neue Benutzergruppe anzulegen öffne im Läufersystem die Seite `Benutzergruppen`.
|
||||
Über den Button `Neue Gruppe erstellen` kannst du eine neue Benutzergruppe erstellen.
|
||||
Dabei kannst du der Gruppe einen Namen und (optional) eine Beschreibung geben.
|
||||
|
||||
## Bearbeiten
|
||||
|
||||
Um eine Benutzergruppe zu bearbeiten kannst du in der Benutzergruppenübersicht den Button `Details` für die gewünschte Gruppe anklicken.
|
||||
In der Übersicht für diese Benutzergruppe kannst du nun den Namen und die Beschreibung anpassen und Berechtigungen einsehen oder bearbeiten.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
### Berechtigungen
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Für die Berechtigung einer Benutzergruppe gibt es eine extra Seite.
|
||||
{{< /callout >}}
|
||||
|
||||
> Für die Berechtigung einer Benutzergruppe gibt es eine extra Seite.
|
||||
Um die Berechtigungen einer Gruppe zu bearbeiten kannst du auf der Detailseite der Gruppe auf `Berechtigungen bearbeiten` klicken.
|
||||
Auf der Berechtigungsseite gibt es zwei Spalten: `Verfügbare`(Berechtigungen, die die Gruppe nicht hat) und `Gewährt`(Berechtigungen, die die Gruppe hat).
|
||||
Du kannst hier über die Buttons `+` und `-` die Berechtigungen erteilen oder wegnehmen.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
|
||||
Du kannst eine Benutzergruppe entweder aus der Benutzergruppenübersicht oder der Benutzergruppendetailansicht löschen.
|
||||
Dabei wird nur die Benutzergruppe samt Berechtigungen gelöscht, nicht ihre Benutzer:innen.
|
||||
> Du kannst eine Benutzergruppe entweder aus der Benutzergruppenübersicht oder der Benutzergruppendetailansicht löschen.
|
||||
> Dabei wird nur die Benutzergruppe samt Berechtigungen gelöscht, nicht ihre Benutzer:innen.
|
||||
|
||||
### In der Benutzergruppenübersicht
|
||||
|
||||
Klick bei der gewünschten Benutzergruppe auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Benutzergruppe wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Benutzergruppendetailansicht
|
||||
|
||||
Klick bei der gewünschten Benutzergruppe auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Gruppe löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Benutzergruppe wirklich löschen oder abbrechen willst.
|
||||
Daraufhin wirst du gefragt, ob du die Benutzergruppe wirklich löschen oder abbrechen willst.
|
@ -1,49 +1,35 @@
|
||||
---
|
||||
title: Benutzer:innen verwalten
|
||||
weight: 3
|
||||
prev: /admin/quickstart
|
||||
next: /admin/usergroups
|
||||
---
|
||||
# Benutzer:innen
|
||||
|
||||
Als Admin kannst du Benutzer:innen anlegen.
|
||||
Benutzer:innen können sich in der Läuferverwaltung und am Backend (API) anmelden und im Rahmen ihrer Berechtigungen damit Arbeiten.
|
||||
Benutzer:innen kannst du Berechtigungen direkt zuweisen oder sie beliebig vielen Gruppen zuweisen, von denen sie dann Berechtigungen erben.
|
||||
|
||||
## Anlegen
|
||||
|
||||
Um eine neue Benutzer:in anzulegen öffne im Läufersystem die Seite `Benutzer`.
|
||||
Über den Button `Benutzer anlegen` kannst du eine neue Benutzer:in erstellen.
|
||||
Dabei kannst du dem Kontakt eine(n) Namen, Benutzernamen, Passwort und E-Mail Adresse geben.
|
||||
|
||||
## Bearbeiten
|
||||
|
||||
Um eine Benutzer:in zu bearbeiten kannst du in der Benutzerübersicht den Button `Details` für die gewünschte Benutzer:in anklicken.
|
||||
In der Übersicht für diesen Kontakt kannst du nun den Namen, Benutzernamen, die E-Mail, Gruppen und Berechtigungen anpassen.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
### Berechtigungen
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Für die Berechtigung einer Benutzer:in gibt es eine extra Seite.
|
||||
{{< /callout >}}
|
||||
|
||||
> Für die Berechtigung einer Benutzer:in gibt es eine extra Seite.
|
||||
Um die Berechtigungen einer Benutzer:in zu bearbeiten kannst du auf der Detailseite der Benutzer:in auf `Berechtigungen bearbeiten` klicken.
|
||||
Auf der Berechtigungsseite gibt es drei Spalten: `Verfügbare`(Berechtigungen, die die Benutzer:in nicht direkt hat), `Direkt erteilte`(Berechtigungen, die die Benutzer:in direkt hat) und `geerbte`(Berechtigungen, die die Benutzer:in von ihren Benutzergruppen geerbt hat).
|
||||
Du kannst hier über die Buttons `+` und `-` die direkten Berechtigungen erteilen oder wegnehmen.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
|
||||
Du kannst eine Benutzer:in entweder aus der Benutzerübersicht oder der Benutzerdetailansicht löschen.
|
||||
Dabei wird nur die Benutzer:in samt Berechtigungen gelöscht.
|
||||
> Du kannst eine Benutzer:in entweder aus der Benutzerübersicht oder der Benutzerdetailansicht löschen.
|
||||
> Dabei wird nur die Benutzer:in samt Berechtigungen gelöscht.
|
||||
|
||||
### In der Benutzerübersicht
|
||||
|
||||
Klick bei der gewünschten Benutzer:in auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Benutzer:in wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Benutzerdetailansicht
|
||||
|
||||
Klick bei der gewünschten Benutzer:in auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Benutzer:in löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Benutzer:in wirklich löschen oder abbrechen willst.
|
@ -1,27 +1,17 @@
|
||||
---
|
||||
linkTitle: "Beamershow"
|
||||
title: Beamershow
|
||||
weight: 1
|
||||
prev: /
|
||||
next: /beamershow/config
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
# Beamershow
|
||||
|
||||
Die Beamershow zeigt live Statistiken zum aktuellen Event an.
|
||||
Wie der Name schon andeutet ist sie dafür gedacht mit einem Beamer vor Ort auf eine (Lein)Wand projeziert zu werden.
|
||||
|
||||
Sie sollte im Normalfall immer unter `<läufersystem>/beamershow` erreichbar sein, mehr dazu unter [Konfiguration](./config)
|
||||
Sie sollte im Normalfall immer unter `<läufersystem>/beamershow` erreichbar sein, mehr dazu unter <router-link to="./config">Konfiguration</router-link>
|
||||
|
||||
## Seiten/Informationen
|
||||
|
||||
> Die Beamershow umfasst folgende Seiten/Abschnitte
|
||||
|
||||
* Allgemeines
|
||||
* Anzahl an Läufer:innen
|
||||
* Bisher insgesamt erlaufene Kilometer
|
||||
* Aktuelle Spendengesamtsumme
|
||||
* Anzahl an Läufer:innen
|
||||
* Bisher insgesamt erlaufene Kilometer
|
||||
* Aktuelle Spendengesamtsumme
|
||||
* Top 10 Läufer nach Distanz
|
||||
* Top 10 Läufer nach schnellster Rundenzeit
|
||||
* Top 10 Organisationen nach Distanz
|
||||
* Top 10 Teams nach Distanz
|
||||
* Top 10 Teams nach Distanz
|
@ -1,18 +1,12 @@
|
||||
---
|
||||
title: Beamershow Konfig
|
||||
weight: 1
|
||||
prev: /beamershow
|
||||
---
|
||||
# Konfiguration
|
||||
> Wie man die Beamershow konfiguriert
|
||||
|
||||
## Start
|
||||
|
||||
Wenn du die Beamershow öffnest wirst du als erstes nach dem API Endpunkt gefragt - diese entspricht der URL des Läufersystems (z.B.: `https://lauf-fuer-kaya.de`).
|
||||
Wenn du die Beamershow öffnest wirst du als erstes nach dem API Endpunkt gefragt - diese entspricht der URL des Läufersystems (z.B.: `https://dev.lauf-fuer-kaya.de`).<br>
|
||||
Als nächstes musst du noch einen Client Token gefragt, den du von deinem Admin bekommst.
|
||||
|
||||
Sobald du den Token eingegeben hast kannst du auf den Button "Konfigurieren" klicken und die Beamershow wird gestartet.
|
||||
|
||||
## Konfiguration ändern
|
||||
|
||||
Tippe `cnf` auf einer beliebigen Seite der Beamershow.
|
||||
|
||||
Du wirst sofort von der Beamershow abbemeldet und kannst so einen neuen API Endpunkt und Client Token angeben.
|
||||
Tippe `cnf` auf einer beliebigen Seite der Beamershow.<br>
|
||||
Du wirst sofort von der Beamershow abbemeldet und kannst so einen neuen API Endpunkt und Client Token angeben.
|
3
src/en/admins/README.md
Normal file
@ -0,0 +1,3 @@
|
||||
# Admins
|
||||
|
||||
TODO:
|
15
src/en/index.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
home: true
|
||||
heroImage: /logo.png
|
||||
tagline: The documentation for the LfK! "Läufersystem".
|
||||
actionText: Quickstart for users →
|
||||
actionLink: ./users/
|
||||
# features:
|
||||
# - title: Feature 1 Title
|
||||
# details: Feature 1 Description
|
||||
# - title: Feature 2 Title
|
||||
# details: Feature 2 Description
|
||||
# - title: Feature 3 Title
|
||||
# details: Feature 3 Description
|
||||
footer: Made by ODIT.Services with ❤️
|
||||
---
|
@ -1,18 +1,11 @@
|
||||
---
|
||||
linkTitle: "Nutzerdokumentation"
|
||||
title: Einleitung
|
||||
cascade:
|
||||
type: docs
|
||||
---
|
||||
# Introduction
|
||||
|
||||
This part of the documentation describes the interaction with the system for normal users.
|
||||
If you're interested in installing, configuring or administrating the system take a look at the [admin section](../admin).
|
||||
If you're interested in installing, configuring or administrating the system take a look at the <router-link to="../admins">admins section</router-link>.
|
||||
|
||||
## FAQ
|
||||
|
||||
> A couple of frequently asked questiones.
|
||||
|
||||
### Why can't i see the page XY?
|
||||
|
||||
Users can only see pages if they have the right permissions.
|
||||
If you can't view a page that you need to, please contact your administrator.
|
18
src/index.md
Normal file
@ -0,0 +1,18 @@
|
||||
---
|
||||
home: true
|
||||
heroImage: /logo.png
|
||||
tagline: Die Dokumentation für das LfK! Läufersystem
|
||||
actionText: Schnellstart für Nutzer →
|
||||
actionLink: /users/
|
||||
# features:
|
||||
# - title: Feature 1 Title
|
||||
# details: Feature 1 Description
|
||||
# - title: Feature 2 Title
|
||||
# details: Feature 2 Description
|
||||
# - title: Feature 3 Title
|
||||
# details: Feature 3 Description
|
||||
---
|
||||
::: slot footer
|
||||
Made by [ODIT.Services](https://odit.services/?ref=lfk-docs) with ❤️ <br>
|
||||
Developed for [Lauf für Kaya](https://lauf-fuer-kaya.de) | [Imprint](https://lauf-fuer-kaya.de/impressum) | [Privacy](https://lauf-fuer-kaya.de/datenschutz)
|
||||
:::
|
13
src/scanstations/README.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Über die Scannerstationen
|
||||
|
||||
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.
|
||||
Wir schreiben grundsätzlich keine Hardware oder Software vor - stellen aber selbst eine Software bereit und empfehlen Hardware.
|
||||
|
||||
Die API für Scannerstationen im Läufersystem ist grundsätzlich so gestaltet, dass Scans live erfasst und validiert (Läufer, Track, Rundenzeit) werden.
|
||||
|
||||
## Bedienung
|
||||
> Die Bedienung nach der <router-link to="./config.html">Konfiguration</router-link>
|
||||
|
||||
Die Bedienung der Software als Helfer an der Scannerstation ist sehr einfach:
|
||||
1. Scannen
|
||||
2. Auf dem Bildschirm sehen, ob der Scan valide war
|
@ -1,48 +1,17 @@
|
||||
---
|
||||
title: Scannerstation Konfig
|
||||
weight: 3
|
||||
prev: /scanstation/install
|
||||
---
|
||||
# Konfiguration
|
||||
> Wie man die Scanclient Software konfiguriert
|
||||
|
||||
## Start
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### API Endpunkt
|
||||
|
||||
Wenn du die Scanclient Software öffnest wirst du als erstes nach einem API Endpunkt gefragt.
|
||||
Hier musst du die URL deines LfK-Backends eintragen (z.B.: `https://lauf-fuer-kaya.de`).
|
||||
Hier musst du die URL deines LfK-Backends eintragen (z.B.: `https://dev.lauf-fuer-kaya.de`).
|
||||
|
||||
### Client-Token
|
||||
Als nächstes musst du noch einen Client Token gefragt -> <router-link to="../users/scanstations.html">So kommst du an einen Client token</router-link><br>
|
||||
Solltest du dich beim API-Endpunkt vertippt haben kannst du hier auch `rst` eingeben, um diesen nochmal zu setzen.
|
||||
|
||||
Als nächstes musst du noch einen Client Token gefragt.
|
||||
Die Anlage ist unter [Token anlegen](../../user/scanstations) beschrieben.
|
||||
|
||||
### Bestätigen
|
||||
|
||||
Solltest du dich beim API-Endpunkt vertippt haben kannst du anstatt eines Client Token auch `rst` eingeben, um diesen nochmal zu setzen.
|
||||
Sobald du den Token eingegeben hast kannst du auf den Button "Konfigurieren" klicken und der Scanclient wird gestartet.
|
||||
|
||||
{{% /steps %}}
|
||||
|
||||
## Konfiguration ändern
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Config-Modus starten
|
||||
|
||||
Tippe `cnf` in das Läuferkarten-Feld und bestätige mit Enter.
|
||||
|
||||
### Config-Modus
|
||||
|
||||
Jetzt öffnet sich die Konfigurationsübersicht, in der alle Details zur Konfigurierten Scannerstation aufgelistet sind.
|
||||
|
||||
### Einstellungen speichern
|
||||
|
||||
Wenn du fertig bist kannst du über den Button "Back to Scanner" wieder in den Scan-Modus wechseln.
|
||||
|
||||
### Abmelden
|
||||
|
||||
Wenn du die Software vom Läufersystem abmelden oder den Token ändern willst klicke auf "Log out from this Client".
|
||||
|
||||
{{% /steps %}}
|
||||
Wenn du fertig bist kannst du über den Button "Back to Scanner" wieder in den Scan-Modus wechseln.
|
@ -1,54 +1,31 @@
|
||||
---
|
||||
title: Scanner Configuration
|
||||
weight: 32
|
||||
prev: /scanstation/config
|
||||
---
|
||||
|
||||
{{< callout type="warning" >}}
|
||||
This configuration has only been tested with GD4130-BK/WH USB scanners
|
||||
{{< /callout >}}
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Download as PDF: [Scanner Configuration.pdf](/files/scannerconfig.pdf)
|
||||
{{< /callout >}}
|
||||
|
||||
{{% steps %}}
|
||||
|
||||
### Restore Factory Settings
|
||||
|
||||

|
||||
|
||||
### 2. Activate Programming Mode
|
||||
|
||||

|
||||
|
||||
### 3. Scan only EAN-13 (optional)
|
||||
|
||||

|
||||

|
||||
|
||||
### 4. Verify EAN13 Check Digit but Do Not Transmit
|
||||
|
||||

|
||||
|
||||
### 5. Set Scanner to Always On (optional)
|
||||
|
||||

|
||||
|
||||
### 6. Exit Programming Mode
|
||||
|
||||

|
||||
|
||||
### 7. Turn Off Beep (optional)
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
### 8. Set Keyboard to German (optional)
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
{{% /steps %}}
|
||||
# Scannerkonfiguration
|
||||
> Achtung: Diese Konfiguratiuon wurde nur mit GD4130-BK/WH USB Scannern getestet
|
||||
> Download als PDF: [Scannerkonfiguration.pdf](/files/scannerconfig.pdf)
|
||||
|
||||
## 1. Werkseinstellungen wiederherstellen
|
||||

|
||||
|
||||
## 2. Programming Mode Aktivieren
|
||||

|
||||
|
||||
## 3. Nur EAN-13 scannen (optional)
|
||||

|
||||

|
||||
|
||||
## 4. EAN13 Check-Zahl überprüfen, aber nicht übertragen
|
||||

|
||||
|
||||
## 5. Scanner auf always on stellen (optional)
|
||||

|
||||
## 6. Programming Mode Verlassen
|
||||

|
||||
|
||||
## 7. Beep ausschalten (optional)
|
||||

|
||||

|
||||

|
||||
|
||||
## 8. Tastatur auf Deutsch stellen (optional)
|
||||

|
||||

|
||||

|
@ -1,19 +1,12 @@
|
||||
---
|
||||
title: Hardwareempfehlungen
|
||||
weight: 4
|
||||
prev: /scanstation/config
|
||||
---
|
||||
|
||||
Known-good Hardware, die wir für die Scannerstationen empfehlen können.
|
||||
|
||||
## Computer
|
||||
|
||||
* Raspberry Pi 3 oder neuer
|
||||
* Prozessor: Minimum: Intel Core 2 Duo
|
||||
* Arbeitsspeicher: Minimum 4GB
|
||||
|
||||
## Barcodescanner
|
||||
|
||||
* Datalogic Gryphon GD4130-BK/WH USB Scanner (1D)
|
||||
* Datalogic Gryphon GD4200 USB Scanner (1D)
|
||||
* Datalogic Gryphon GD4400 USB Scanner (2D)
|
||||
# Hardwareempfehlungen
|
||||
> Known-good Hardware, die wir für die Scannerstationen empfehlen können
|
||||
|
||||
## Computer
|
||||
* Raspberry Pi 3 oder neuer
|
||||
* Prozessor: Minimum: Intel Core 2 Duo
|
||||
* Arbeitsspeicher: Minimum 4GB
|
||||
|
||||
## Barcodescanner
|
||||
* Datalogic Gryphon GD4130-BK/WH USB Scanner (1D)
|
||||
* Datalogic Gryphon GD4200 USB Scanner (1D)
|
||||
* Datalogic Gryphon GD4400 USB Scanner (2D)
|
35
src/scanstations/install.md
Normal file
@ -0,0 +1,35 @@
|
||||
# Installation
|
||||
|
||||
Es gibt aktuell drei Varianten, um die Scanclient Software zu installieren/nutzen
|
||||
* Als Livesystem starten (empfohlen)
|
||||
* Für Windows herunterladen
|
||||
* Für Linux herunterladen
|
||||
|
||||
## Livesystem
|
||||
> Empfohlene Variante
|
||||
|
||||
1. Lade dir die aktuellste Version des Betriebssystems herunter: [Versionsübersicht](https://git.odit.services/lfk/scanclient-live/releases)
|
||||
* Den neusten (obersten) Release auswählen.
|
||||
* Unter "Downloads" die Datei lfk-scanclient-live_X.Y.Z_x64.zip anklicken
|
||||
2. Einen USB-Stick einstecken und als FAT32 formatieren (Achtung: Hierbei gehen alle Daten verloren, die auf dem Stick sind)
|
||||
3. Die ZIP-Datei auf den Stick kopieren
|
||||
4. Die ZIP Datei auf dem Stick entpacken -> Du solltest einen neuen Order `slax` erhalten
|
||||
5. Den Stick bootfähig machen
|
||||
* Windows: Die Datei `USBSTICK\slax\boot\bootinst.bat` als Administrator ausführen
|
||||
* Linux/Mac: Die Datei `USBSTICK/slax/boot/bootinst.sh` mit Root-Rechten (sudo) ausführen
|
||||
6. Den Stick in den Rechner deiner Wahl einstecken und von ihm Starten
|
||||
* Bei den meisten Rechner: Beim Hochfahren F12 drücken und dann den USB-Stick auswähren
|
||||
|
||||
## Windows
|
||||
1. Programm aus dem Git Repo herunterladen: [Versionsübersicht](https://git.odit.services/lfk/scanclient-electron/releases)
|
||||
* Den neusten (obersten) Release auswählen.
|
||||
* Unter "Downloads" die Datei @lfk-scanclient-electron-win32-x64.zip anklicken
|
||||
2. Die ZIP-Datei entpacken
|
||||
3. Die Datei `@lfk-scanclient-electron.exe` öffnen
|
||||
|
||||
## Linux
|
||||
1. Programm aus dem Git Repo herunterladen: [Versionsübersicht](https://git.odit.services/lfk/scanclient-electron/releases)
|
||||
* Den neusten (obersten) Release auswählen.
|
||||
* Unter "Downloads" die Datei @lfk-scanclient-electron-linux-x64.zip anklicken
|
||||
2. Die ZIP-Datei entpacken
|
||||
3. Die Datei `@lfk-scanclient-electron` öffnen
|