Compare commits
18 Commits
e22fb71daa
...
0.0.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
810be2c0cd
|
|||
|
ab6ce62649
|
|||
|
112e7dbe7a
|
|||
|
0032df1862
|
|||
|
8fbd031e46
|
|||
|
5ecba1d65c
|
|||
|
3c0738f11f
|
|||
|
7338080c32
|
|||
|
ca8373e383
|
|||
|
3cad9e2a56
|
|||
|
c6bcf572cf
|
|||
|
e03f3dd205
|
|||
|
3e13e1a5f1
|
|||
|
16bf581c60
|
|||
|
f3ebeba9a7
|
|||
|
96eb208937
|
|||
|
f44dfbfbb9
|
|||
|
49f2a1715b
|
29
.gitea/workflows/latest.yaml
Normal file
@@ -0,0 +1,29 @@
|
||||
name: Build latest image
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
build-container:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Login to registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: registry.odit.services
|
||||
username: ${{ vars.REGISTRY_USERNAME }}
|
||||
password: ${{ secrets.REGISTRY_PASSWORD }}
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
push: true
|
||||
tags: |
|
||||
${{ vars.REGISTRY }}/lfk/docs:latest
|
||||
platforms: linux/amd64,linux/arm64
|
||||
27
.gitea/workflows/release.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
name: Build release images
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "*.*.*"
|
||||
|
||||
jobs:
|
||||
build-container:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Login to registry
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: registry.odit.services
|
||||
username: ${{ vars.REGISTRY_USERNAME }}
|
||||
password: ${{ secrets.REGISTRY_PASSWORD }}
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
push: true
|
||||
tags: |
|
||||
${{ vars.REGISTRY }}/lfk/docs:${{ github.ref_name }}
|
||||
platforms: linux/amd64,linux/arm64
|
||||
@@ -1,7 +1,8 @@
|
||||
FROM hugomods/hugo:exts as build
|
||||
FROM hugomods/hugo:exts AS build
|
||||
WORKDIR /app
|
||||
|
||||
COPY . /app/
|
||||
COPY .git /app/.git
|
||||
RUN hugo
|
||||
|
||||
FROM hugomods/hugo:nginx
|
||||
|
||||
11
assets/css/custom.css
Normal file
@@ -0,0 +1,11 @@
|
||||
@font-face {
|
||||
font-family: "Athiti";
|
||||
src: url("/fonts/athiti.ttf");
|
||||
}
|
||||
html,
|
||||
:host {
|
||||
font-family: "Athiti";
|
||||
}
|
||||
.content {
|
||||
font-family: "Athiti";
|
||||
}
|
||||
41
config.yaml
@@ -58,7 +58,7 @@ menu:
|
||||
pageRef: /selfservice
|
||||
weight: 3
|
||||
- identifier: scanstation
|
||||
name: Scanerstationen
|
||||
name: Scannerstationen
|
||||
pageRef: /scanstation
|
||||
weight: 4
|
||||
- identifier: beamershow
|
||||
@@ -70,30 +70,23 @@ menu:
|
||||
weight: 6
|
||||
params:
|
||||
type: search
|
||||
|
||||
# sidebar:
|
||||
# - identifier: more
|
||||
# name: Mehr
|
||||
# params:
|
||||
# type: separator
|
||||
# weight: 2
|
||||
# - identifier: source
|
||||
# name: "Source Code"
|
||||
# url: "https://git.odit.services/lfk"
|
||||
- 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.png
|
||||
dark: logo.png
|
||||
# width: 40
|
||||
# height: 20
|
||||
# link: /
|
||||
width: wide
|
||||
path: logo.svg
|
||||
dark: logo.svg
|
||||
link: /
|
||||
width: normal
|
||||
page:
|
||||
width: normal
|
||||
theme:
|
||||
@@ -101,22 +94,22 @@ params:
|
||||
displayToggle: true
|
||||
footer:
|
||||
enable: true
|
||||
displayCopyright: false
|
||||
displayCopyright: true
|
||||
displayPoweredBy: false
|
||||
width: normal
|
||||
search:
|
||||
enable: true
|
||||
type: flexsearch
|
||||
|
||||
flexsearch:
|
||||
# index page by: content | summary | heading | title
|
||||
index: content
|
||||
# full | forward | reverse | strict
|
||||
# https://github.com/nextapps-de/flexsearch/#tokenizer-prefix-search
|
||||
tokenize: forward
|
||||
highlight:
|
||||
copy:
|
||||
enable: true
|
||||
display: hover
|
||||
comments:
|
||||
enable: false
|
||||
enable: false
|
||||
editURL:
|
||||
enable: true
|
||||
base: "https://git.odit.services/lfk/docs/_edit/main/content"
|
||||
|
||||
|
||||
@@ -21,5 +21,38 @@ layout: hextra-home
|
||||
</div>
|
||||
|
||||
<div class="hx-mb-6">
|
||||
{{< hextra/hero-button text="Schnellstart für Nutzer 👉" link="user" >}}
|
||||
</div>
|
||||
{{< 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 >}}
|
||||
@@ -10,16 +10,49 @@ layout: hextra-home
|
||||
|
||||
<div class="hx-mt-6 hx-mb-6">
|
||||
{{< hextra/hero-headline >}}
|
||||
Documentation of the LfK! Runner System.
|
||||
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.
|
||||
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/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 >}}
|
||||
@@ -9,7 +9,7 @@ cascade:
|
||||
---
|
||||
|
||||
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).
|
||||
Solltest du an der Bedienung für normale Nutzer interessiert sein schau doch mal in den [Nutzerbereich](../../user).
|
||||
|
||||
## Services
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ cascade:
|
||||
---
|
||||
|
||||
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).
|
||||
If you are interested in the operation for regular users, take a look at the [User Area](../../user).
|
||||
|
||||
## Services
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ Hier musst du die URL deines LfK-Backends eintragen (z.B.: `https://lauf-fuer-ka
|
||||
### Client-Token
|
||||
|
||||
Als nächstes musst du noch einen Client Token gefragt.
|
||||
Die Anlage ist unter [Token anlegen](/user/scanstation) beschrieben.
|
||||
Die Anlage ist unter [Token anlegen](../../user/scanstations) beschrieben.
|
||||
|
||||
### Bestätigen
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ Here you need to enter the URL of your LfK backend (e.g., `https://lauf-fuer-kay
|
||||
### Client Token
|
||||
|
||||
Next, you will be asked for a Client Token.
|
||||
The setup is described under [Create Token](/user/scanstation).
|
||||
The setup is described under [Create Token](../../user/scanstations).
|
||||
|
||||
### Confirm
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ cascade:
|
||||
type: docs
|
||||
---
|
||||
Dieser Teil der Dokumentation befasst sich mit der Bedienung des Läufersystems für normale Nutzer:innen.
|
||||
Solltest du an der Installation oder Konfiguration interessiert sein schau doch mal in den [Admin](/admins) Bereich.
|
||||
Solltest du an der Installation oder Konfiguration interessiert sein schau doch mal in den [Admin](../admin) Bereich.
|
||||
|
||||
## FAQ
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ cascade:
|
||||
---
|
||||
|
||||
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 [admin section](../admin).
|
||||
|
||||
## FAQ
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ weight: 3
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Solltest du dich für den Selfservice für Orgs interessieren findest du die Dokumentation zu [hier](/selfservice/orgs).
|
||||
Solltest du dich für den Selfservice für Orgs interessieren findest du die Dokumentation zu [hier](../../selfservice/orgs).
|
||||
{{< /callout >}}
|
||||
|
||||
Läuferorganisationen sind das Herzstück des Gruppensystems für Läufer.
|
||||
|
||||
@@ -4,7 +4,7 @@ weight: 3
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
If you are interested in the self-service for organizations, you can find the documentation [here](/selfservice/orgs).
|
||||
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.
|
||||
|
||||
@@ -4,7 +4,7 @@ weight: 13
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Die Doku zur Nutzung der [Scannerstationen gibt es hier](/scanstation)
|
||||
Die Doku zur Nutzung der [Scannerstationen gibt es hier](../../scanstation)
|
||||
{{< /callout >}}
|
||||
|
||||
Scannerstationen sind erstellen Scans für Läuferkarten auf [Tracks](../tracks).
|
||||
|
||||
@@ -4,7 +4,7 @@ weight: 13
|
||||
---
|
||||
|
||||
{{< callout type="info" >}}
|
||||
The documentation for using the [scanner stations can be found here](/scanstation)
|
||||
The documentation for using the [scanner stations can be found here](../../scanstation)
|
||||
{{< /callout >}}
|
||||
|
||||
Scanner stations create scans for runner cards on [Tracks](../tracks).
|
||||
|
||||
@@ -5,7 +5,7 @@ weight: 2
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Administratoren können Nutzer:innen im System anlegen und verwalten.
|
||||
Mehr Informationen dazu findest du im [Admin](/admin) Bereich.
|
||||
Mehr Informationen dazu findest du im [Admin](../../admin) Bereich.
|
||||
{{< /callout >}}
|
||||
|
||||
## Passwort vergessen
|
||||
@@ -23,7 +23,8 @@ Deine E-Mail Adresse eingeben.
|
||||
|
||||
### E-Mail bestätigen
|
||||
|
||||
Du bekommst eine Mail, du sie hast auf den Link in der Mail klicken
|
||||
Du bekommst eine Mail.
|
||||
In dieser klickst du einfach auf den Link.
|
||||
|
||||
### Neues Passwort setzen
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ weight: 2
|
||||
|
||||
{{< callout type="info" >}}
|
||||
Administrators can create and manage users in the system.
|
||||
You can find more information in the [Admin](/admin) section.
|
||||
You can find more information in the [Admin](../../admin) section.
|
||||
{{< /callout >}}
|
||||
|
||||
## Forgot Password
|
||||
|
||||
3
data/icons.yaml
Normal file
2
i18n/de.yaml
Normal file
@@ -0,0 +1,2 @@
|
||||
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,6 +1,8 @@
|
||||
user: User
|
||||
admin: Administrators
|
||||
selfservice: Selfservice
|
||||
scanstation: Scaning Stations
|
||||
scanstation: Scanning Stations
|
||||
beamershow: Beamer Show
|
||||
search: Search
|
||||
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,4 +0,0 @@
|
||||
<div style="text-align: center; width: 100%;"></div>
|
||||
Made by <a href="https://odit.services/?ref=lfk-docs" target="_blank" rel="noreferrer">ODIT.Services</a> with ❤️ <br>
|
||||
Developed for <a href="https://lauf-fuer-kaya.de" target="_blank" rel="noreferrer">Lauf für Kaya</a> | <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>
|
||||
</div>
|
||||
49
layouts/partials/footer.html
Normal file
@@ -0,0 +1,49 @@
|
||||
{{- $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 -}}
|
||||
@@ -1,33 +0,0 @@
|
||||
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
|
||||
@@ -1,14 +0,0 @@
|
||||
---
|
||||
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
|
||||
@@ -1,58 +0,0 @@
|
||||
---
|
||||
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
|
||||
@@ -1,12 +0,0 @@
|
||||
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
|
||||
@@ -1,17 +0,0 @@
|
||||
---
|
||||
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
|
||||
@@ -1,7 +0,0 @@
|
||||
namespace: lfk
|
||||
resources:
|
||||
- deployment.yaml
|
||||
- service.yaml
|
||||
- ingress.yaml
|
||||
- cert.yaml
|
||||
- dns.yaml
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
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
|
||||
@@ -1,140 +0,0 @@
|
||||
# ---> 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
|
||||
142
legacy/.gitignore
vendored
@@ -1,142 +0,0 @@
|
||||
# ---> 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
|
||||
@@ -1,12 +0,0 @@
|
||||
pids
|
||||
logs
|
||||
node_modules
|
||||
npm-debug.log
|
||||
coverage/
|
||||
run
|
||||
dist
|
||||
.DS_Store
|
||||
.nyc_output
|
||||
.basement
|
||||
config.local.js
|
||||
basement_dist
|
||||
@@ -1,20 +0,0 @@
|
||||
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
|
||||
@@ -1,14 +0,0 @@
|
||||
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
|
||||
@@ -1,34 +0,0 @@
|
||||
# @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
|
||||
@@ -1,6 +0,0 @@
|
||||
version: "3.3"
|
||||
services:
|
||||
httpd:
|
||||
build: .
|
||||
ports:
|
||||
- 8080:80
|
||||
@@ -1,113 +0,0 @@
|
||||
# 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.
|
||||
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
|
||||
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;
|
||||
}
|
||||
}
|
||||
@@ -1,44 +0,0 @@
|
||||
{
|
||||
"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"
|
||||
}
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
<template>
|
||||
<p class="demo">
|
||||
{{ msg }}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
msg: 'Hello this is <Foo-Bar>'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -1,3 +0,0 @@
|
||||
<template>
|
||||
<p class="demo">This is another component</p>
|
||||
</template>
|
||||
@@ -1,15 +0,0 @@
|
||||
<template>
|
||||
<p class="demo">
|
||||
{{ msg }}
|
||||
</p>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
msg: 'Hello this is <demo-component>'
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -1,172 +0,0 @@
|
||||
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'
|
||||
]
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
/**
|
||||
* 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.
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
Vorname;Mittelname;Nachname;Klasse
|
||||
Lorem ;Impum;dolor;1A
|
||||
sit;;amet;1A
|
||||
consetetur;sadipscing;elitr;1A
|
||||
Max;;Mustermann;1A
|
||||
Maxime;;Mustermann;2A
|
||||
Peter;Emanuel ;Lustig;2A
|
||||
Robert;;Schmidtt;2A
|
||||
Guten;;Morgen;2A
|
||||
Wunderschönen;Guten;Morgen;3A
|
||||
Tolle;;Ümläütä;3A
|
||||
|
@@ -1,11 +0,0 @@
|
||||
Vorname;Nachname;Klasse
|
||||
Lorem ;dolor;1A
|
||||
sit;amet;1A
|
||||
consetetur;elitr;1A
|
||||
Max;Mustermann;1A
|
||||
Maxime;Mustermann;2A
|
||||
Peter;Lustig;2A
|
||||
Robert;Schmidtt;2A
|
||||
Guten;Morgen;2A
|
||||
Wunderschönen;Morgen;3A
|
||||
Tolle;Ümläütä;3A
|
||||
|
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 152 KiB |
|
Before Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 77 KiB |
|
Before Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 31 KiB |
@@ -1,8 +0,0 @@
|
||||
/**
|
||||
* Custom Styles here.
|
||||
*
|
||||
* ref:https://v1.vuepress.vuejs.org/config/#index-styl
|
||||
*/
|
||||
|
||||
.home .hero img
|
||||
max-width 450px!important
|
||||
@@ -1,10 +0,0 @@
|
||||
/**
|
||||
* Custom palette here.
|
||||
*
|
||||
* ref:https://v1.vuepress.vuejs.org/zh/config/#palette-styl
|
||||
*/
|
||||
|
||||
$accentColor = #3eaf7c
|
||||
$textColor = #2c3e50
|
||||
$borderColor = #eaecef
|
||||
$codeBgColor = #282c34
|
||||
@@ -1,26 +0,0 @@
|
||||
# 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.
|
||||
@@ -1,19 +0,0 @@
|
||||
# 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,36 +0,0 @@
|
||||
# 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.
|
||||
|
||||
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
|
||||
> 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.
|
||||
|
||||
### 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.
|
||||
@@ -1,35 +0,0 @@
|
||||
# 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
|
||||
> 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.
|
||||
|
||||
### 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,17 +0,0 @@
|
||||
# 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 <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
|
||||
* Top 10 Läufer nach Distanz
|
||||
* Top 10 Läufer nach schnellster Rundenzeit
|
||||
* Top 10 Organisationen nach Distanz
|
||||
* Top 10 Teams nach Distanz
|
||||
@@ -1,12 +0,0 @@
|
||||
# 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://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.<br>
|
||||
Du wirst sofort von der Beamershow abbemeldet und kannst so einen neuen API Endpunkt und Client Token angeben.
|
||||
@@ -1,3 +0,0 @@
|
||||
# Admins
|
||||
|
||||
TODO:
|
||||
@@ -1,15 +0,0 @@
|
||||
---
|
||||
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,11 +0,0 @@
|
||||
# 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 <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.
|
||||
@@ -1,18 +0,0 @@
|
||||
---
|
||||
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)
|
||||
:::
|
||||
@@ -1,13 +0,0 @@
|
||||
# Ü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,17 +0,0 @@
|
||||
# Konfiguration
|
||||
> Wie man die Scanclient Software konfiguriert
|
||||
|
||||
## Start
|
||||
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://dev.lauf-fuer-kaya.de`).
|
||||
|
||||
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.
|
||||
|
||||
Sobald du den Token eingegeben hast kannst du auf den Button "Konfigurieren" klicken und der Scanclient wird gestartet.
|
||||
|
||||
## Konfiguration ändern
|
||||
Tippe `cnf` in das Läuferkarten-Feld und bestätige mit Enter.
|
||||
Jetzt öffnet sich die Konfigurationsübersicht, in der alle Details zur Konfigurierten Scannerstation aufgelistet sind.
|
||||
Wenn du die Software vom Läufersystem abmelden oder den Token ändern willst klicke auf "Log out from this Client".
|
||||
Wenn du fertig bist kannst du über den Button "Back to Scanner" wieder in den Scan-Modus wechseln.
|
||||
@@ -1,31 +0,0 @@
|
||||
# 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,12 +0,0 @@
|
||||
# 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)
|
||||
@@ -1,35 +0,0 @@
|
||||
# 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
|
||||
@@ -1,13 +0,0 @@
|
||||
# Über den Selfservice
|
||||
|
||||
Der Selfservice bietet Läufer:innen sich selbst für den Lauf zu registrieren und ihre eigenen Daten einzusehen.
|
||||
Genauer gibt es folgende Funktionen:
|
||||
* Registrierung für Bürgerläufer
|
||||
* Registrierung für Firmenläufer
|
||||
* Einsehen der eigenen Daten
|
||||
* Stammdaten: Vorname, Mittelname, Nachname, E-Mail Adresse, Telefonnummer
|
||||
* Rundenzeiten
|
||||
* Herunterladen der eigenen Läuferurkunde
|
||||
* Restloses löschen der eigenen Daten aus dem System
|
||||
|
||||
Achtung: Damit der Selfservice für Bürgerläufer funktioniert, muss die automatisch generierte Bürgerlauf-Organisation existieren!
|
||||
@@ -1,12 +0,0 @@
|
||||
# Selfservice für Organisationen
|
||||
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
|
||||
> Achtung: 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.
|
||||
|
||||
1. Rufe im Läufersystem die Seite `Organisationen auf`
|
||||
2. Klicke für die gewünschte Organisation auf den Button `Details`
|
||||
3. Setze einen Haken bei `Selfservice Registrierung`, falls dieser noch nicht gesetzt ist und klicke auf `Änderungen speichern`
|
||||
4. Kopiere den Registrierungslink für die Organisation
|
||||
@@ -1,11 +0,0 @@
|
||||
# Einleitung
|
||||
|
||||
Dieser Teil der Dokumentation befasst sich mit der Bedienung des Läufersystems für normale Nutzer:innen.
|
||||
Solltest du an der Installation oder Konfiguration interessiert sein schau doch mal in den <router-link to="../admins">Admin</router-link> Bereich.
|
||||
|
||||
## 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, die du brauchst melde dich bitte bei deinem Admin.
|
||||
@@ -1,22 +0,0 @@
|
||||
# Nutzerkonten
|
||||
|
||||
## Registrieren
|
||||
> Aktuell können nur Admins neue Benutzer:innen hinzufügen - bitte kontaktiere deinen Admin.
|
||||
|
||||
## Passwort vergessen
|
||||
> Kein Problem!
|
||||
|
||||
1. Die Login Seite des Systems aufrufen
|
||||
2. Auf `Passwort vergessen?` klicken
|
||||
3. Deine E-Mail Adresse eingeben
|
||||
4. Du bekommst eine Mail, du sie hast auf den Link in der Mail klicken
|
||||
5. Das neue Passwort setzen
|
||||
6. Wieder normal anmelden
|
||||
|
||||
## Einstellungen ändern
|
||||
> Du möchtest deinen Namen, E-Mail oder Passwort ändern
|
||||
|
||||
1. Melde dich im Läufersystem an
|
||||
2. Gehe auf die Seite `Einstellungen`
|
||||
3. Pass deine Nutzereinstellungen an
|
||||
4. Klicke auf `Speichern`
|
||||
@@ -1,61 +0,0 @@
|
||||
# Läuferkarten
|
||||
|
||||
Läuferkarten dienen dazu <router-link to="./scans">Trackscans</router-link> für <router-link to="./runners">Läufer:innen</router-link> durch <router-link to="./scanstations">Scannerstationen</router-link> zu erzeugen
|
||||
Läuferkarten können entweder fest zu einer Läufer:in gehören, oder als Blankokarten genutzt werden, die frei beliebigen Läufer:innen zugewiesen werden können.
|
||||
## Anlegen
|
||||
Du kannst Läuferkarten entweder manuell anlegen oder automatisch von System generieren lassen.
|
||||
Auch Blankokarten kannst du beliebig viele vom System generieren lassen.
|
||||
|
||||
### Manuel anlegen
|
||||
Um eine neue Läuferkarte anzulegen öffne im Läufersystem die Seite `Läuferkarten`.
|
||||
Über den Button `Karte erstellen` kannst du eine neue Läuferkarte erstellen.
|
||||
Hier kannst du eine Läuferin auswählen (musst es aber nicht).
|
||||
Sobald du alles angegeben hast kannst du mit dem Button `Erstellen` die Läuferkarte anlegen.
|
||||
|
||||
### Blankokarten generieren
|
||||
Um neue Blankokarten anzulegen öffne im Läufersystem die Seite `Läuferkarten`.
|
||||
Über den Button `Blankokarten erstellen` kannst du neue Blankokarten erstellen.
|
||||
Hier kannst du auswählen, wie viele Karten generiert werden sollen.
|
||||
Sobald du alles angegeben hast kannst du mit dem Button `Erstellen` die Blankokarten generieren.
|
||||
|
||||
### Für Läufer:innen
|
||||
|
||||
In der Läuferübersicht kannst du beliebig viele Läufer:innen auswählen (oder alle über den Button `Alle Auswählen`).
|
||||
Daraufhin erscheint über der Läuferliste der Button `Läuferkarten generieren`.
|
||||
Sobald du ihn anklickst kannst du die Sprache für die Läuferkarten PDFs auswählen.
|
||||
Daraufhin werden die Läuferkarten angelegt, die PDFs generiert und heruntergeladen.
|
||||
|
||||
### Für Teams
|
||||
|
||||
#### Für Teams in der Teamübersicht
|
||||
In der Teamübersicht kannst du beliebig viele Teams auswählen (oder alle über den Button `Alle Auswählen`).
|
||||
Daraufhin erscheint über der Teamliste der Button `Läuferkarten generieren`.
|
||||
Sobald du ihn anklickst kannst du die Sprache für die Läuferkarten PDFs auswählen.
|
||||
Daraufhin werden die Läuferkarten für alle Läufer:innen der Teams angelegt, die PDFs generiert und heruntergeladen.
|
||||
|
||||
#### Für einzelne Teams in der Teamdetailansicht
|
||||
Um Läuferkarten für alle Läufer:innen eines einzelne Teams zu generieren kannst du in der Teamübersicht den Button `Details` für das gewünschte Team anklicken.
|
||||
Dann kannst du auf der Detailansicht einfach den Button `Läuferkarten generieren` anklicken und die gewünschte Sprache auswählen - daraufhin werden die Läuferkarten generiert und heruntergeladen.
|
||||
|
||||
### Für Organisationen
|
||||
|
||||
#### Für Organisationen in der Organisationsübersicht
|
||||
In der Organisationsübersicht kannst du beliebig viele Organisationen auswählen (oder alle über den Button `Alle Auswählen`).
|
||||
Daraufhin erscheint über der Organisationsliste der Button `Läuferkarten generieren`.
|
||||
Sobald du ihn anklickst kannst du die Sprache für die Läuferkarten PDFs auswählen.
|
||||
Daraufhin werden die Läuferkarten für alle Läufer:innen der Organisation (inkl. Teams) angelegt, die PDFs generiert und heruntergeladen.
|
||||
|
||||
#### Für einzelne Organisationen in der Teamdetailansicht
|
||||
Um Läuferkarten für alle Läufer:innen einer einzelnen Organisation (inklusive ihrer Teams) zu generieren kannst du in der Organisationsübersicht den Button `Details` für die gewünschte Organisation anklicken.
|
||||
Dann kannst du auf der Detailansicht einfach den Button `Läuferkarten generieren` anklicken und die gewünschte Sprache auswählen - daraufhin werden die Läuferkarten generiert und heruntergeladen.
|
||||
|
||||
## Bearbeiten
|
||||
Um eine Läuferkarte zu bearbeiten öffne im Läufersystem die Seite `Läuferkarten`.
|
||||
In der Läuferkartenübersicht kannst du den Button `Details` für die gewünschte Läuferkarte anklicken.
|
||||
Nun kannst du die Karte einer anderen Läufer:in zuordnen oder sie deaktivieren.
|
||||
Sobald du alles angepasst hast kannst du mit dem Button `Änderungen speichern` die Änderungen übernehmen.
|
||||
|
||||
## Löschen
|
||||
Um eine Läuferkarte zu bearbeiten öffne im Läufersystem die Seite `Läuferkarten`.
|
||||
In der Läuferkartenübersicht kannst du den Button `Löschen` für die gewünschte Läuferkarte anklicken.
|
||||
Daraufhin wirst du gefragt, ob du die Karte wirklich löschen oder abbrechen willst.
|
||||
@@ -1,30 +0,0 @@
|
||||
# Kontakte
|
||||
|
||||
Kontakte dienen dem Customer Relation Management (CRM) und können beliebig vielen <router-link to="./teams">Teams</router-link> und <router-link to="./organizations">Organisationen</router-link> zugeordnet werden.
|
||||
Achtung: Ein(e) Team/Organisation kann immer nur einen Kontakt haben.
|
||||
|
||||
Aktuell dienen die Kontakte nur der Dokumentation, in Zukunft solle es aber auch möglich sein einem Kontakt per Knopfdruck die Urkunden für all seine Teams/Orgs per Mail zu schicken.
|
||||
|
||||
## Anlegen
|
||||
Um einen neuen Kontakt anzulegen öffne im Läufersystem die Seite `Kontakt`.
|
||||
Über den Button `Kontakt erstellen` kannst du einen neuen Kontakt erstellen.
|
||||
Dabei kannst du dem Kontakt eine(n) Namen, Telefonnummer und E-Mail Adresse geben und sie beliebig vielen Gruppen (Teams/Organisationen) zuweisen.
|
||||
Ebenfalls kannst du auswählen, ob du eine Adresse für den Kontakt festlegen willst (wenn nicht mach einfach den Haken bei Adresse weg).
|
||||
|
||||
## Bearbeiten
|
||||
Um einen Kontakt zu bearbeiten kannst du in der Kontaktübersicht den Button `Details` für den gewünschten Kontakt anklicken.
|
||||
In der Übersicht für diesen Kontakt kannst du nun den Namen, die Telefonnummer, die E-Mail Adresse und die Adresse anpassen.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
> Du kannst einen Kontakt entweder aus der Kontaktübersicht oder der Kontaktdetailansicht löschen.
|
||||
> Dabei wird nur der Kontakt gelöscht, keine verbundenen Orgs oder Teams.
|
||||
|
||||
### In der Kontaktübersicht
|
||||
Klick bei dem gewünschten Kontakt auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du den Kontakt wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Kontaktdetailansicht
|
||||
Klick bei dem gewünschten Kontakt auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Kontakt löschen`.
|
||||
Daraufhin wirst du gefragt, ob du den Kontakt wirklich löschen oder abbrechen willst.
|
||||
@@ -1,55 +0,0 @@
|
||||
# Sponsorings
|
||||
|
||||
Sponsorings können entweder Festbetragsspenden oder Kilometerspenden sein.
|
||||
Kilometerspenden verbinden <router-link to="./runners">Läufer:innen</router-link> mit <router-link to="./donors">Sponsor:innen</router-link>, die einen festen Betrag pro zurückgelegtem Kilometer der Läufer:in spenden.
|
||||
|
||||
## Anlegen
|
||||
Um ein neues Sponsoring anzulegen öffne im Läufersystem die Seite `Sponsorings`.
|
||||
Über den Button `Sponsoring erstellen` kannst du ein neues Sponsoring anlegen.
|
||||
|
||||
Als erstes kannst du auswählen, ob du ein (Kilometer)Sponsoring oder eine Festbetragsspende erstellen möchtest.
|
||||
Dann musst du die Sponsor:in auswählen.
|
||||
|
||||
### Sponsoring (Kilometerspende)
|
||||
Für Kilometerspenden musst du nun eine Läufer:in auswählen und angeben, wie viele Euro die Sponsor:in pro gelaufenem Kilometer der Läufer:in spenden möchte.
|
||||
Sobald du alles angegeben hast kannst du mit dem Button `Erstellen` das Sponsoring anlegen.
|
||||
|
||||
### Festbetragsspende
|
||||
Für Festbetragsspenden musst du nun den Spendenbetrag in Euro angeben.
|
||||
Sobald du alles angegeben hast kannst du mit dem Button `Erstellen` die Festbetragsspende anlegen.
|
||||
|
||||
## Bearbeiten
|
||||
Um ein Sponsoring zu bearbeiten kannst du in der Sponsoringübersicht den Button `Details` für das gewünschte Sponsoring anklicken.
|
||||
Hier siehst du den Gesamtbetrag (bei Kilometerspenden hochgerechnet) des Sponsoring und kannst die Sponsor:in ändern.
|
||||
|
||||
### Sponsoring (Kilometerspende)
|
||||
Für Kilometerspenden kannst du zusätzlich die Läufer:in und den Spendenbetrag pro gelaufenem Kilometer anpassen.
|
||||
Sobald du alles angepasst hast kannst du mit dem Button `Änderungen speichern` die Änderungen übernehmen.
|
||||
|
||||
### Festbetragsspende
|
||||
Für Festbetragsspenden kannst du zusätzlich den Spendenbetrag anpassen.
|
||||
Sobald du alles angepasst hast kannst du mit dem Button `Änderungen speichern` die Änderungen übernehmen.
|
||||
|
||||
## Zahlung eingeben
|
||||
### In der Sponsoringübersicht
|
||||
Um eine Zahlung einzugeben kannst du in der Sponsoringübersicht den Button `Zahlung eingeben` für das gewünschte Sponsoring anklicken.
|
||||
|
||||
Daraufhin öffnet sich ein Dialog, in dem du den bezahlten Betrag für das Sponsoring eingeben kannst.
|
||||
Wenn das Sponsoring auf den Cent genau bezahlt wurde kannst du dir das eintippen über den Button `MAX` sparen.
|
||||
|
||||
Wenn du deine Änderungen vorgenommen hast kannst du diese über den Button `Änderungen speichern` übernehmen.
|
||||
|
||||
### Im Sponsoringdetail
|
||||
> Siehe Sponsoring bearbeiten
|
||||
|
||||
## Löschen
|
||||
> Du kannst ein Sponsoring entweder aus der Sponsoringübersicht oder der Sponsoringdetailansicht löschen.
|
||||
|
||||
### In der Sponsoringübersicht
|
||||
Klick bei dem gewünschten Sponsoring auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du das Sponsoring wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Sponsoringdetailansicht
|
||||
Klick bei dem gewünschten Sponsoring auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Sponsoring löschen`.
|
||||
Daraufhin wirst du gefragt, ob du das Sponsoring wirklich löschen oder abbrechen willst.
|
||||
@@ -1,44 +0,0 @@
|
||||
# Sponsor:innen
|
||||
|
||||
Sponsor:innen sind die Spender, die mit einen Festbetrag oder eine Kilometerspende den Lauf für Kaya! unterstützen.
|
||||
Zusammen mit den <router-link to="./donations">Sponsorings</router-link> bilden sie das Herzstück des Spendenmanagement und der Spendenverrechnung.
|
||||
|
||||
## Sponsorübersicht
|
||||
> Eine kurze Übersicht über die Funktionen der Sponsorübersicht.
|
||||
|
||||
In der Sponsorübersicht werden alle im System registrierten Sponsor:innen aufgelistet.
|
||||
Von hier aus kannst du einzelne Sponsor:innen hinzufügen, bearbeiten oder löschen.
|
||||
|
||||
Zusätzlich zum Namen und Kontaktinformationen werden hier auch alle Sponsorings (Festbetragsspenden, Kilometerspenden) der Sponsor:in aufgelistet (und verlinkt).
|
||||
Auch der Spendengesamtbetrag aller Sponsorings der Sponsor:in wird hier gelistet.
|
||||
|
||||
Ebenso gibt es eine Suchfunktion mit Hilfe derer du nach Sponsornamen und -IDs suchen kannst.
|
||||
|
||||
## Anlegen
|
||||
Um eine neue Sponsor:in anzulegen öffne im Läufersystem die Seite `Sponsor:innen`.
|
||||
Über den Button `Sponsor:in hinzufügen` kannst du eine neue Sponsor:in anlegen.
|
||||
Dabei musst du einen Vornamen und Nachnamen festlegen.
|
||||
Zusätzlich kannst du einen Mittelnamen(2. Vornamen), eine Telefonnummer und eine E-Mail Adresse angeben.
|
||||
Sollte die Sponsor:in eine Spendenquittung benötigen kannst du einen Haken bei `Spendenquittung benötigt` setzen und die Adresse der Sponsor:in eintragen.
|
||||
Sobald du alles eingetragen hast kannst du mit dem Button `Erstellen` die Sponsor:in anlegen.
|
||||
|
||||
## Bearbeiten
|
||||
Um eine Sponsor:in zu bearbeiten kannst du in der Sponsorübersicht den Button `Details` für die gewünschte Sponsor:in anklicken.
|
||||
In der Übersicht für die Läufer:in kannst du nun den Vornamen, Mittelnamen, Nachnamen, sowie die Telefonnummer, E-Mail Adresse und Adresse(Spendenquittung benötigt) bearbeiten.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
> Du kannst eine Sponsor:in entweder aus der Sponsorübersicht oder der Sponsorendetailansicht löschen.
|
||||
|
||||
### In der Sponsorübersicht
|
||||
Klick bei der gewünschten Sponsor:in auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Sponsor:in wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Sponsorendetailansicht
|
||||
Klick bei der gewünschten Sponsor:in auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Sponsor:in löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Sponsor:in wirklich löschen oder abbrechen willst.
|
||||
|
||||
### Sponsor:in mit Sponsorings
|
||||
Sollte die Sponsor:in noch Sponsorings haben geht nach dem Bestätigen der Löschung nochmal eine Warnung auf.
|
||||
Hier musst du nochmal die Löschung inklusive aller Sponsorings bestätigen, alternativ kannst du auch Abbrechen.
|
||||
@@ -1,36 +0,0 @@
|
||||
# Organisationen
|
||||
> Solltest du dich für den Selfservice für Orgs interessieren findest du die Dokumentation zu <router-link to="../selfservice/org_selfservice">hier</router-link>
|
||||
|
||||
Läuferorganisationen sind das Herzstück des Gruppensystems für Läufer.
|
||||
Eine Organisation kann eine Firma, Schule, Kindergarten, Verein oder ähnliches sein.
|
||||
|
||||
Läufer:innen können direkt einer Organisation zugeordnet werden.
|
||||
Um die Läufer:innen einer Organisation (z.B.: Schule) weiter zu sortieren können einer Organisation mehrere Teams (z.B.: Klassen) zugeordnet werden.
|
||||
Einer/m Organisation/Team kann ein Kontakt zugeordnet werden, mehr dazu findest du <router-link to="./contacts">hier</router-link>.
|
||||
Mehr zu Teams findest du <router-link to="./teams">hier</router-link>
|
||||
|
||||
## Anlegen
|
||||
Um eine neue Organisation anzulegen öffne im Läufersystem die Seite `Orgs`.
|
||||
Über den Button `Organisation erstellen` kannst du eine neue Organisation erstellen.
|
||||
Dabei kannst du der Organisation einen Namen geben.
|
||||
|
||||
## Bearbeiten
|
||||
Um eine Organisation zu bearbeiten kannst du in der Organisationsübersicht den Button `Details` für die gewünschte Organisation anklicken.
|
||||
In der Übersicht für diese Organisation kannst du nun den Namen der Organisation und den zugewiesenen Kontakt ändern.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
> Du kannst eine Organisation entweder aus der Organisationsübersicht oder der Organisationsdetailansicht löschen.
|
||||
|
||||
### In der Organisationsübersicht
|
||||
Klick bei der gewünschten Organisation auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Organisation wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Organisationsdetailansicht
|
||||
Klick bei der gewünschten Organisation auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Organisation löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Organisation wirklich löschen oder abbrechen willst.
|
||||
|
||||
### Organisation mit Teams und Läufer
|
||||
Sollte die Organisation noch Teams und/oder Läufer haben geht nach dem Bestätigen der Löschung nochmal eine Warnung auf.
|
||||
Hier musst du nochmal die Löschung inklusive aller Läufer und Teams bestätigen, alternativ kannst du auch Abbrechen.
|
||||
@@ -1,109 +0,0 @@
|
||||
# Läuferimport
|
||||
|
||||
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)
|
||||
|
||||
```
|
||||
Vorname; Mittelname; Nachname; Team;
|
||||
Peter; ; Tester; 1A
|
||||
Manuel; Steffen; Regenwald; 1A
|
||||
Toller; ; Typ; 2A
|
||||
```
|
||||
|
||||
**Ohne Mittelname**
|
||||
> [Beispieldatei herunterladen](/files/class_without_middlename.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. <br>
|
||||
> 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
|
||||
1. Öffne im Läufersystem die Seite `Orgs`
|
||||
2. Klicke oben auf `Läufer importieren`
|
||||
3. Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst
|
||||
4. Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
5. Wähle oben die Organisation aus, in die die Läufer:innen importiert werden sollen
|
||||
6. Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen
|
||||
7. Die Läufer werden nun in die Organisation importiert
|
||||
|
||||
### Aus der Organisationsdetailansicht
|
||||
1. Öffne im Läufersystem die Seite `Orgs`
|
||||
2. Klicke bei der gewünschten Organisation auf den `Details` Button
|
||||
3. Klicke oben auf `Läufer importieren`
|
||||
4. Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst
|
||||
5. Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
6. Wähle oben die Organisation aus, in die die Läufer:innen importiert werden sollen
|
||||
7. Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen
|
||||
8. Die Läufer werden nun in die Organisation importiert
|
||||
|
||||
### Aus der Läuferübersicht
|
||||
1. Öffne im Läufersystem die Seite `Läufer`
|
||||
2. Klicke oben auf `Läufer importieren`
|
||||
3. Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst
|
||||
4. Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
5. Wähle oben die Organisation (Hat kein `>` im Namen) aus, in die die Läufer:innen importiert werden sollen
|
||||
6. Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen
|
||||
7. Die Läufer werden nun in die Organisation importiert
|
||||
|
||||
## 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
|
||||
1. Öffne im Läufersystem die Seite `Teams`
|
||||
2. Klicke bei de, gewünschten Team auf den `Details` Button
|
||||
3. Klicke oben auf `Läufer importieren`
|
||||
4. Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst
|
||||
5. Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
6. Wähle oben das Team aus, in die die Läufer:innen importiert werden sollen
|
||||
7. Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen
|
||||
8. Die Läufer werden nun in das Team importiert
|
||||
|
||||
### Aus der Läuferübersicht
|
||||
1. Öffne im Läufersystem die Seite `Läufer`
|
||||
2. Klicke oben auf `Läufer importieren`
|
||||
3. Klicke auf `Datei auswählen` und wähle die Datei aus, aus der du Läufer:innen importieren willst
|
||||
4. Dir wird eine Übersicht aller Läufer:innen angezeigt, die in der Datei gefunden wurden - überprüfe alle Läufer:innen auf Korrektheit
|
||||
5. Wähle oben das Team (Hat ein `>` im Namen) aus, in die die Läufer:innen importiert werden sollen
|
||||
6. Klicke unten auf `Läufer importieren`, um die Läufer:innen zu importieren oder `Abbrechen`, um den Import abzubrechen
|
||||
7. Die Läufer werden nun in das Team importiert
|
||||
@@ -1,54 +0,0 @@
|
||||
# Läufer:innen
|
||||
|
||||
Läufer sind das Herzstück des Läufersystems.
|
||||
Über sie werden Strecken erfasst und Spenden berechnet.
|
||||
|
||||
Läufer können einem <router-link to="./teams">Team</router-link> oder einer <router-link to="./organizations">Organisation</router-link> zugeordnet werden.
|
||||
|
||||
## Läuferübersicht
|
||||
> Eine kurze Übersicht über die Funktionen der Läuferübersicht.
|
||||
|
||||
In der Läuferübersicht werden alle im System registrierten Läufer:innen aufgelistet.
|
||||
Von hier aus kannst du einzelne Läufer:innen hinzufügen, bearbeiten oder löschen.
|
||||
|
||||
Um die Suche nach einzelnen Läufer:innen zu erleichtern gibt es einen Filter nach Teams und Organisationen.
|
||||
Wenn du mehrere Teams/Organisationen in den Filter packst werden dir alle Läufer:innen angezeigt, die in einem/r der Teams/Organisationen registriert sind angezeigt.
|
||||
|
||||
Ebenso gibt es eine Suchfunktion mit Hilfe derer du nach Läufernamen, -IDs und Gruppen (Teams/Organisationen) suchen kannst.
|
||||
Du eine ID eingibst wird dir nur die Läufer:in mit genau der ID angezeigt, solltest du alle Läufer:innen sehen wollen, deren IDs mit deiner Eingabe beginnen stelle ein `*` ans Ende der ID.
|
||||
|
||||
Beispiele:
|
||||
* `Peter` -> Alle Läufer:innen mit Peter im Namen
|
||||
* `Gymnasium` -> Alle Läufer:innen, die in einer Gruppe mit dem Namen Gymnasium sind
|
||||
* `421` -> Die Läufer:in mit der ID 421
|
||||
* `42*` -> Alle Läufer:innen, deren ID mit 42 beginnt
|
||||
|
||||
## Aktionen
|
||||
|
||||
### Anlegen
|
||||
> Achtung: Um eine Läufer:in anzulegen musst du vorher eine Organisation und/oder ein Team anlegen.
|
||||
|
||||
Um eine neue Läufer:in anzulegen öffne im Läufersystem die Seite `Läufer`.
|
||||
Über den Button `Läufer:in hinzufügen` kannst du eine neue Läufer:in anlegen.
|
||||
Dabei musst du einen Vornamen, Nachnamen und die Gruppe (Team/Organisation) festlegen.
|
||||
Zusätzlich kannst du einen Mittelnamen(2. Vornamen), eine Telefonnummer und eine E-Mail Adresse angeben.
|
||||
|
||||
### Bearbeiten
|
||||
Um eine Läufer:in zu bearbeiten kannst du in der Läuferübersicht den Button `Details` für die gewünschte Läufer:in anklicken.
|
||||
In der Übersicht für die Läufer:in kannst du nun den Vornamen, Mittelnamen, Nachnamen, sowie die Telefonnummer, E-Mail Adresse und Gruppe bearbeiten.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
### Löschen
|
||||
> Du kannst eine Läufer:in entweder aus der Läuferübersicht oder der Läuferdetailansicht löschen.
|
||||
|
||||
### In der Läuferübersicht
|
||||
Klick bei der gewünschten Läufer:in auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Läufer:in wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Läuferdetailansicht
|
||||
Klick bei der gewünschten Läufer:in auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Läufer:in löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Läufer:in wirklich löschen oder abbrechen willst.
|
||||
|
||||
## Import
|
||||
> Die Importanleitung findest du <router-link to="./runner_import">hier</router-link>
|
||||
@@ -1,42 +0,0 @@
|
||||
# Scans
|
||||
|
||||
Scans sind das Herzstück der Kilometerzählung - sie verbinden <router-link to="./runners">Läufer:innen</router-link> mit zurückgeleter Distantz.
|
||||
Es gibt zwei Arten von Scans im System: "Festdistanzscans" und "Trackscans"
|
||||
|
||||
Festdistanzscans können nur von Benutzer:innen im Läufersystem angelegt werden und weisen einer Läufer:in eine feste Distanz zu.
|
||||
Dies ist besonders nützlich, wenn Läufer:innen Karten auf halber Strecke verloren haben oder aus anderen Gründen einen Distanzbonus bekommen.
|
||||
|
||||
Trackscans hingegen können nur dadurch erzeugt werden, dass eine Scannerstation den Code der Karte einer Läufer:in scannen und so einen neuen Scan anlegen.
|
||||
Die Trackscans sind immer Fest mit einer Läufer:in und einem <router-link to="./tracks">Track</router-link> verbunden, von dem die Distanz abgeleitet wird.
|
||||
|
||||
## Anlegen
|
||||
> Du kannst im Läufersystem nur Festdistanzscans anlegen.
|
||||
|
||||
Um einen neue Scan anzulegen öffne im Läufersystem die Seite `Scans`.
|
||||
Über den Button `Scan erstellen` kannst du einen neuen Scan erstellen.
|
||||
Dabei musst du dem Scan eine Läufer:in und eine Distanz in Metern zuweisen.
|
||||
Sobald du alles angegeben hast kannst du über den Button `Erstellen` den Scan anlegen.
|
||||
|
||||
## Bearbeiten
|
||||
Um einen Scan zu bearbeiten kannst du in der Scansübersicht den Button `Details` für den gewünschten Scananklicken.
|
||||
|
||||
### Festdistanzscans
|
||||
Bei Festdistanzscans kannst du in der Scandetailansicht die Gültigkeit, Läufer:in und Distanz anpassen.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
### Trackscans
|
||||
Bei Trackscans kannst du in der Scandetailansicht nur die Gültigkeit anpassen - alle anderen Werte sind fest im System hinterlegt.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
> Du kannst einen Scan entweder aus der Scansübersicht oder der Scandetailansicht löschen.
|
||||
> Wir empfehlen grundsätzlich Scans lieber zu deaktiveren, als zu löschen, um menschlichen Fehlern vorzubeugen.
|
||||
|
||||
### In der Scansübersicht
|
||||
Klick bei dem gewünschten Scan auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du den Scan wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Scandetailansicht
|
||||
Klick bei dem gewünschten Scannerstation auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Scan löschen`.
|
||||
Daraufhin wirst du gefragt, ob du den Scannerstation wirklich löschen oder abbrechen willst.
|
||||
@@ -1,44 +0,0 @@
|
||||
# Scannerstationen
|
||||
> Die Doku zur Nutzung der <router-link to="../scanstations">Scannerstationen gibt es hier</router-link>
|
||||
|
||||
Scannerstationen sind erstellen Scans für Läuferkarten auf <router-link to="./tracks">Tracks</router-link>.
|
||||
Die Scannerstationen sind in realen Welt üblicherweise Laptops mit Barcode-Scannern und einer speziellen Software.
|
||||
|
||||
Die Scannerstationen im Läufersystem dienen dazu die "realen" Scannerstationen anzumelden und einem Track zuzuweisen.
|
||||
Dieser Teil der Dokumentation befasst sich nur mit den Scannerstationen im Läufersystem!
|
||||
|
||||
## Anlegen
|
||||
> Bevor du eine Scannerstation anlegen kannst musst du erst einen <router-link to="./tracks">Track</router-link> anlegen, zu dem sie gehört.
|
||||
> Du bekommst beim Erstellen einer Scanenrstation einen Token (Code/Key) für diese - bewahre ihn gut auf!
|
||||
|
||||
Um eine neue Scannerstation anzulegen öffne im Läufersystem die Seite `Scannerstationen`.
|
||||
Über den Button `Station erstellen` kannst du eine neue Scanerstation erstellen.
|
||||
Dabei musst du die Station einem Track zuweisen und kannst du der Station eine Beschreibung geben und sie deaktiveren.
|
||||
Wenn du fertig bist kannst du einfach auf den Button `Erstellen` klicken.
|
||||
|
||||
Nachdem die Scannerstation im System erstellt wurde bekommst du ihren Token angezeigt.
|
||||
Dieser Token wird nur einmal angezeigt und kann nicht geändert werden - bewahre ihn also gut auf!
|
||||
Du kannst auf den Token oder den kopieren Button klicken, um den Token in deine Zwischenablage zu kopieren.
|
||||
Wenn du den Token sicher gespeichert hast kannst du den Dialog über den Button `Ja, ich habe den Token kopiert` schließen.
|
||||
|
||||
## Bearbeiten
|
||||
Um eine Scannerstation zu bearbeiten kannst du in der Scannerstationsübersicht den Button `Details` für die gewünschte Scannerstation anklicken.
|
||||
In der Übersicht für diese Scannerstation kannst du nun den Track und die Beschreibung der Scannerstation ändern und sie (de)aktivieren.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
> Du kannst eine Scannerstation entweder aus der Scannerstationsübersicht oder der Scannerstationsdetailansicht löschen.
|
||||
|
||||
### In der Scannerstationsübersicht
|
||||
Klick bei der gewünschten Scannerstation auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Scannerstation wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Scannerstationsdetailansicht
|
||||
Klick bei der gewünschten Scannerstation auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Station löschen`.
|
||||
Daraufhin wirst du gefragt, ob du die Scannerstation wirklich löschen oder abbrechen willst.
|
||||
|
||||
### Scannerstation mit Scans
|
||||
> Achtung: Wir empfehlen Stationen mit Scans nie zu löschen sondern einfach zu deaktivieren!
|
||||
Sollte die Scannerstation noch assoziierte Scans haben geht nach dem Bestätigen der Löschung nochmal eine Warnung auf.
|
||||
Hier musst du nochmal die Löschung inklusive aller Scans bestätigen, alternativ kannst du auch Abbrechen.
|
||||
@@ -1,38 +0,0 @@
|
||||
# Sponsoring-Erklärungen
|
||||
|
||||
Das System kann für beliebige <router-link to="./runners">Läufer:innen</router-link>, <router-link to="./teams">Teams</router-link> oder ganze <router-link to="./organizations">Organisationen</router-link> Sponsoring-Erklärungen generieren.
|
||||
Die Sponsoring-Erklärungen sind dabei aktuell auf Deutsch und Englisch verfügbar.
|
||||
Die Texte auf dem Sponsoring-Erklärungen und die Anzahl von Erklärungen/Läufer:in können deine Admins anpassen.
|
||||
|
||||
## Für Läufer:innen
|
||||
|
||||
### Für Läufer:innen in der Läuferübersicht
|
||||
In der Läuferübersicht kannst du beliebig viele Läufer:innen auswählen (oder alle über den Button `Alle Auswählen`).
|
||||
Daraufhin erscheint über der Läuferliste der Button `Sponsoringvertrag generieren`.
|
||||
Sobald du ihn anklickst werden die Sponsoring-Erklärungen generiert und heruntergeladen.
|
||||
|
||||
### Für einzelne Läufer:in in der Läuferdetailansicht
|
||||
Um eine Sponsoring-Erklärung für eine einzelne Läufer:in zu generieren kannst du in der Läuferübersicht den Button `Details` für die gewünschte Läufer:in anklicken.
|
||||
Dann kannst du auf der Detailansicht einfach den Button `Sponsoringvertrag generieren` anklicken - daraufhin wird die Sponsoring-Erklärung generiert und heruntergeladen.
|
||||
|
||||
## Für Teams
|
||||
|
||||
### Für Teams in der Teamübersicht
|
||||
In der Teamübersicht kannst du beliebig viele Teams auswählen (oder alle über den Button `Alle Auswählen`).
|
||||
Daraufhin erscheint über der Teamliste der Button `Sponsoringverträge generieren`.
|
||||
Sobald du ihn anklickst werden die Sponsoring-Erklärungen für alle Läufer:innen der Teams generiert und heruntergeladen.
|
||||
|
||||
### Für einzelne Teams in der Teamdetailansicht
|
||||
Um Sponsoring-Erklärungen für alle Läufer:innen eines einzelne Teams zu generieren kannst du in der Teamübersicht den Button `Details` für das gewünschte Team anklicken.
|
||||
Dann kannst du auf der Detailansicht einfach den Button `Sponsoringverträge generieren` anklicken - daraufhin werden die Sponsoring-Erklärungen generiert und heruntergeladen.
|
||||
|
||||
## Für Organisationen
|
||||
|
||||
### Für Organisationen in der Organisationsübersicht
|
||||
In der Organisationsübersicht kannst du beliebig viele Organisationen auswählen (oder alle über den Button `Alle Auswählen`).
|
||||
Daraufhin erscheint über der Organisationsliste der Button `Sponsoringverträge generieren`.
|
||||
Sobald du ihn anklickst werden die Sponsoring-Erklärungen für alle Läufer:innen der Organisationen (inklusive ihrer Teams) generiert und heruntergeladen.
|
||||
|
||||
### Für einzelne Organisationen in der Teamdetailansicht
|
||||
Um Sponsoring-Erklärungen für alle Läufer:innen einer einzelnen Organisation (inklusive ihrer Teams) zu generieren kannst du in der Organisationsübersicht den Button `Details` für die gewünschte Organisation anklicken.
|
||||
Dann kannst du auf der Detailansicht einfach den Button `Sponsoringverträge generieren` anklicken - daraufhin werden die Sponsoring-Erklärungen generiert und heruntergeladen.
|
||||
@@ -1,35 +0,0 @@
|
||||
# Teams
|
||||
|
||||
Läuferteams sind die Untergruppen des Gruppensystems für Läufer:innen.
|
||||
Ein Team kann eine Klasse, Abteilung, Gruppe oder ähnliches sein.
|
||||
|
||||
Läufer:innen können einem Team zugeordnet werden, das wiederum zu einer Organisation gehört (mehr zu Organisationen findest du <router-link to="./organizations">hier</router-link>).
|
||||
Einer/m Organisation/Team kann ein Kontakt zugeordnet werden, mehr dazu findest du <router-link to="./contacts">hier</router-link>.
|
||||
|
||||
## Anlegen
|
||||
> Achtung: Um ein Team anzulegen musst du vorher die Mutter-Organisation für das Team anlegen.
|
||||
|
||||
Um ein neues Team anzulegen öffne im Läufersystem die Seite `Teams`.
|
||||
Über den Button `Team erstellen` kannst du ein neues Team erstellen.
|
||||
Dabei kannst du dem Team einen Namen geben und auswählen, zu welcher Organisation das Team gehört.
|
||||
|
||||
## Bearbeiten
|
||||
Um ein Team zu bearbeiten kannst du in der Teamübersicht den Button `Details` für das gewünschte Team anklicken.
|
||||
In der Übersicht für dieses Team kannst du nun den Namen, die Mutter-Organisation und den Kontakt des Teams ändern.
|
||||
Wenn du fertig bist klick einfach auf `Änderungen speichern`.
|
||||
|
||||
## Löschen
|
||||
> Du kannst ein Team entweder aus der Teamübersicht oder der Teamdetailansicht löschen.
|
||||
|
||||
### In der Teamübersicht
|
||||
Klick bei dem gewünschten Team auf den Button `Löschen`.
|
||||
Daraufhin wirst du gefragt, ob du das Team wirklich löschen oder abbrechen willst.
|
||||
|
||||
### In der Teamdetailansicht
|
||||
Klick bei dem gewünschten Team auf den Button `Details`.
|
||||
Oben auf der Seite gibt es jetzt den Knopf `Team löschen`.
|
||||
Daraufhin wirst du gefragt, ob du das Team wirklich löschen oder abbrechen willst.
|
||||
|
||||
### Teams mit Läufern
|
||||
Sollte das Team noch Läufer haben geht nach dem Bestätigen der Löschung nochmal eine Warnung auf.
|
||||
Hier musst du nochmal die Löschung inklusive aller Läufer bestätigen, alternativ kannst du auch Abbrechen.
|
||||
@@ -1,19 +0,0 @@
|
||||
# Tracks
|
||||
|
||||
Die Tracks sind im System hinterlegte Laufstrecken, auf basis derer die Distanzen für Scans berechnet werden.
|
||||
Sie haben einen Namen, eine Distanz (in Metern) und eine minimale Rundenzeit (Schnellere Runden werdena utomatisch als Betrug gekennzeichnet).
|
||||
Beim Lauf für Kaya! gab es in der Vergangenheit immer die zwei Tracks "kleine Runde" (400m) und "große Runde" (1000m).
|
||||
|
||||
## Anlegen
|
||||
Um einen neuen Track anzulegen öffne im Läufersystem die Seite `Tracks`.
|
||||
Über den Button `Track erstellen` kannst du einen neuen Track erstellen.
|
||||
Dabei musst du den Namen des Tracks und seine Länge in Metern angeben - optional kannst du noch eine minimale Rundenzeit in Sekunden angeben.
|
||||
|
||||
## Bearbeiten
|
||||
Um einen Track zu bearbeiten kannst du in der Trackübersicht den Button `Bearbeiten` für den gewünschten Track anklicken.
|
||||
Daraufhin kannst du die Werte der Spalte des Tracks bearbeiten.
|
||||
Wenn du fertig bist klick einfach auf `Speichern`.
|
||||
|
||||
## Löschen
|
||||
Um einen Track zu bearbeiten kannst du in der Trackübersicht den Button `Löschen` für den gewünschten Track anklicken.
|
||||
Daraufhin hast du die möglichkeit den Löschvorgang abzubrechen oder mit einem Klick auf `Bestätigen` den Track entgültig zu löschen.
|
||||
BIN
static/fonts/athiti.ttf
Normal file
64
static/logo.svg
Normal file
@@ -0,0 +1,64 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="217.844" height="387.915" data-name="Gruppe 194">
|
||||
<path fill="#020202" d="M199.473 204.037c-5.467-2.565-10.96-5-16.54-7.269l9.471 7.344Z" data-name="Pfad 1"/>
|
||||
<path fill="#08b09e" d="m168.766 8.086 4.43 15.226a21.193 21.193 0 0 0-4.43-15.226Z" data-name="Pfad 2"/>
|
||||
<path fill="#42210b" d="M154.894 269.844c-.651 1.089-1.251 2.177-1.964 3.253s-1.251 2.052-1.927 3.065h25.085a377.997 377.997 0 0 0 6.919-6.556Z" data-name="Pfad 3"/>
|
||||
<path fill="#42210b" d="M116.941 259.399c1.063-1.9 2.189-3.753 3.34-5.618l5.442-88.492 19.217-65.058 25.235-.45a53.01 53.01 0 0 0 .463-7.019l-26.211.5-13.9-42.225a13.387 13.387 0 0 1-4.366 3.566 14.74 14.74 0 0 1-1.251.626l13.538 43.414-19.317 64.207-5.755 92.095-3.128 13.074a32.529 32.529 0 0 0 6.693-8.62Z" data-name="Pfad 4"/>
|
||||
<path fill="#42210b" d="M182.307 98.856q.163.35.3.713l16.577-.3a17.515 17.515 0 0 0 .9-6.656v-.387l-19.1.363a12.686 12.686 0 0 0 1.323 6.267Z" data-name="Pfad 5"/>
|
||||
<path fill="#08b09e" d="M173.912 112.84a8.394 8.394 0 0 1 .475-4.929c.263-.938.488-1.877.688-2.8l-20.643.225-8.107 26.379h30.277c1.727-2.127 3.328-4.379 5-6.568s3.14-4.554 4.629-6.894l7.407-13.362-12.3.138a22.52 22.52 0 0 1-7.426 7.811Z" data-name="Pfad 6"/>
|
||||
<path fill="#e82524" d="M137.926 144.297h24.6l.363-.926a7.757 7.757 0 0 1 2.5-3.278 31.117 31.117 0 0 0 4.254-3.828l-28.876.075Z" data-name="Pfad 7"/>
|
||||
<path fill="#bdbec0" d="m133.74 156.265 5.793 5.1 16.877-.576c1.164-3.753 2.4-7.507 3.753-11.172l-24.484.388Z" data-name="Pfad 8"/>
|
||||
<path fill="#491033" d="m136.205 165.566-6.143-5.217-3.253 11.01 6.731 4.992Z" data-name="Pfad 9"/>
|
||||
<path fill="#491033" d="M153.43 172.118c.663-2.352 1.326-4.7 2.027-7.044l-10.9.363Z" data-name="Pfad 10"/>
|
||||
<path fill="#ffce06" d="m138.864 179.931 22.095 16.265 4.629-5.455a132.757 132.757 0 0 0-13.362-3.541c-1.251-.263-2.064-.513-1.589-2.2.776-2.79 1.539-5.58 2.315-8.37l-11.46-8.758Z" data-name="Pfad 11"/>
|
||||
<path fill="#08b09e" d="m183.95 213.069 28.863-.413a74.811 74.811 0 0 0-8.307-4.779c-2.5-1.251-5.08-2.5-7.619-3.628l-7.069.075-9.471-7.344c-2.828-1.126-5.68-2.2-8.558-3.19l-5.317 6.981Z" data-name="Pfad 12"/>
|
||||
<path fill="#491033" d="m123.716 74.132-3.753-13.237-22.025-10.334a17.316 17.316 0 0 0-1.764.963 18.153 18.153 0 0 1-7.507 2.5 12.9 12.9 0 0 0-1.852.225l.225 2.39Z" data-name="Pfad 13"/>
|
||||
<path fill="#e82524" d="M116.65 48.897a18.679 18.679 0 0 1-5.2-.1 23.259 23.259 0 0 0-8.282.163l15.775 7.507Z" data-name="Pfad 14"/>
|
||||
<path fill="#bdbec0" d="m80.773 57.405-3.366-1.752a103.014 103.014 0 0 0-12.924 4.592l17.853 8.758Z" data-name="Pfad 15"/>
|
||||
<path fill="#ffce06" d="m57.498 92.446.5-.813a8.232 8.232 0 0 1 7.369-4l6.781-.1-17.4-7.794-5-7.757a12.686 12.686 0 0 0-6.969 5.955l7.657 11.4Z" data-name="Pfad 16"/>
|
||||
<path fill="#491033" d="M49.063 105.251c1.927-3.04 3.916-6.055 5.855-9.1l-7.307-3.29-7.118-10.818c-1.539 3.653-3.128 7.306-4.654 10.972l6.143 9.208Z" data-name="Pfad 17"/>
|
||||
<path fill="#491033" d="m79.213 87.016 3.353-.075-1.251-9.545-20.868-9.91c-2.315 1-4.617 2-6.944 2.965l4.2 6.518Z" data-name="Pfad 18"/>
|
||||
<path fill="#08b09e" d="M96.502 92.441a2.925 2.925 0 0 0 .1.926l21.794 7.235.851-10.434-31.153-10.876.425 8.608 2.94-.075c3.328-.113 4.717 1.277 5.043 4.616Z" data-name="Pfad 19"/>
|
||||
<path fill="#e82524" d="m88.113 75.354 30.215 10.3.576-4L87.062 65.27Z" data-name="Pfad 20"/>
|
||||
<path fill="#e82524" d="m102.556 101.215-5.818-2.39c.413 4.091.851 8.195 1.251 12.286Z" data-name="Pfad 21"/>
|
||||
<path fill="#08b09e" d="m115.488 132.374.863-10.347-16.014-6.568-1.089 2.5c.275 2.5.538 5 .813 7.582Z" data-name="Pfad 22"/>
|
||||
<path fill="#bdbec0" d="m117.242 104.828-10.434-3.29-5 10.009 14.855 6.431Z" data-name="Pfad 23"/>
|
||||
<path fill="#e82524" d="m121.865 109.718-2 35.156 10.432-35.444Z" data-name="Pfad 24"/>
|
||||
<path fill="#ffce06" d="m131.748 97.659-3.715-13.572-3.428-.288-1.852 19.44h6.994Z" data-name="Pfad 25"/>
|
||||
<path fill="#08b09e" d="M127.458 11.564a20.581 20.581 0 0 0-1.076 4.1l2.5 1.038Z" data-name="Pfad 26"/>
|
||||
<path fill="#491033" d="m168.074 39.076-39.61-19.843a27.247 27.247 0 0 0 .263 3.578c.576 3.941 2.039 7.594 3.1 11.385.075.263.138.5.188.751l31.278 13.862Z" data-name="Pfad 27"/>
|
||||
<path fill="#08b09e" d="m170.83 36.31 2.5-6.256c-.876-.851-1.939-1.6-1.251-3.34a13.666 13.666 0 0 0 .838-3.366l-4.429-15.226a11.26 11.26 0 0 0-2.327-2.127 36.87 36.87 0 0 0-9.258-4.567l9.358 33Z" data-name="Pfad 28"/>
|
||||
<path fill="#e82524" d="M146.408 25.214 139.002 1.28a17.365 17.365 0 0 0-8.432 6.431l2.94 10.4Z" data-name="Pfad 29"/>
|
||||
<path fill="#bdbec0" d="M162.018 31.832 152.234.467l-.738-.15a23.658 23.658 0 0 0-8.207.088l8.12 26.418Z" data-name="Pfad 30"/>
|
||||
<path fill="#ffce06" d="M175.274 38.675c-.15-1.251-.588-2.3.125-2.853 1.877-1.464 1.576-2.427.813-3.278l-2.5 5.542Z" data-name="Pfad 31"/>
|
||||
<path fill="#bdbec0" d="m167.529 49.572 4.016 2.189a4.353 4.353 0 0 0 .726-2.74c0-2.64 1.251-4.892 2.164-7.281l-2.427-1.351Z" data-name="Pfad 32"/>
|
||||
<path fill="#e82524" d="m130.299 38.062-.763-.35.663 2.114a8.991 8.991 0 0 0 .1-1.764Z" data-name="Pfad 33"/>
|
||||
<path fill="#e82524" d="m155.702 62.646 2.853-5.392c-.776 0-1.814.075-1.877-.926a2.252 2.252 0 0 1 2.152-2.3l1.5-.125 1.251-2.39-29.45-13.451a9.01 9.01 0 0 1-.1 1.764l3.516 11.2Z" data-name="Pfad 34"/>
|
||||
<path fill="#ffce06" d="m154.311 71.056-17.503-10.01 6.293 18.817 7.62.213Z" data-name="Pfad 35"/>
|
||||
<path fill="#08b09e" d="m163.487 58.105-3.19 6.506 9.759 4.454a137.614 137.614 0 0 0-.713-3.09c-.939-3.779-2.665-6.531-5.856-7.87Z" data-name="Pfad 36"/>
|
||||
<path fill="#08b09e" d="m165.617 53.714 1.251-.088a6.148 6.148 0 0 0 .963-.125l-1.663-.926Z" data-name="Pfad 37"/>
|
||||
<path fill="#08b09e" d="M183.484 73.768c-2.139.325-1.251 2.139-1.251 3.4a9.29 9.29 0 0 0 .1 1.664l2.2 1.013 1.639-3.853c-.511-1.19-1.124-2.462-2.688-2.224Z" data-name="Pfad 38"/>
|
||||
<path fill="#bdbec0" d="m159.131 73.454-4.016 7.507h15.964a74.964 74.964 0 0 0-.375-2.277Z" data-name="Pfad 39"/>
|
||||
<path fill="#491033" d="m145.65 84.341 1.539 5.4 24.5-.175a72.299 72.299 0 0 0-.4-5Z" data-name="Pfad 40"/>
|
||||
<path fill="#491033" d="m181.882 86.887 1.5-2.427h-.888a8.563 8.563 0 0 1-.413 1.827c-.061.2-.136.4-.199.6Z" data-name="Pfad 41"/>
|
||||
<path fill="#bdbec0" d="m186.748 84.259-2.139 4.6 11.11.063Z" data-name="Pfad 42"/>
|
||||
<path fill="#e82524" d="M197.246 84.831c-1.251-1.6-2.84-2.627-4.216-2.39a11.444 11.444 0 0 1-2.052.2l5.88 2.978Z" data-name="Pfad 43"/>
|
||||
<path fill="#e82524" d="m89.707 276.258-1.33 13.24 3.441-.063a15.893 15.893 0 0 1 3.028-.8 21.525 21.525 0 0 0 6.005-1.914l2.265-10.459Z" data-name="Pfad 44"/>
|
||||
<path fill="#08b09e" d="m70.537 277.707-3.553 30.652a163.916 163.916 0 0 0 15.139-12.511c.4-.375.813-.738 1.251-1.1l1.551-17.228Z" data-name="Pfad 45"/>
|
||||
<path fill="#ffce06" d="m62.692 308.743 2.64-30.815h-4.879a39.863 39.863 0 0 0-8.52 6.956l-2.5 23.108Z" data-name="Pfad 46"/>
|
||||
<path fill="#bdbec0" d="M44.378 289.054a14.4 14.4 0 0 0-.8 1.251 133.156 133.156 0 0 1-14.914 18.129h14Z" data-name="Pfad 47"/>
|
||||
<path fill="#bdbec0" d="m9.559 370.887 4.466-.075a30.167 30.167 0 0 1 5-12.211H9.134Z" data-name="Pfad 48"/>
|
||||
<path fill="#491033" d="m9.372 382.51 5 .063a46.8 46.8 0 0 0-.45-4.942 22.155 22.155 0 0 1-.175-3.666H9.422Z" data-name="Pfad 49"/>
|
||||
<path fill="#08b09e" d="M9.309 387.915a3.235 3.235 0 0 0 .963-.163 5.992 5.992 0 0 0 3.491-2.315l-4.394-.062Z" data-name="Pfad 50"/>
|
||||
<path fill="#bdbec0" d="M135.739 291.685a5.37 5.37 0 0 1-2.39.626c-2.74 0-8.282 6.481-9.9 10.6l.125 3.878c.313.7.651 1.414 1 2.1l11.6-.388Z" data-name="Pfad 51"/>
|
||||
<path fill="#ffce06" d="m155.535 308.695-.838-27.062-7.819-.225a49.384 49.384 0 0 1-6.731 7.819l.6 19.468Z" data-name="Pfad 52"/>
|
||||
<path fill="#e82524" d="m159.148 279.801.363 13.887c.7-.938 1.576-1.8 2.339-2.69a78.417 78.417 0 0 1 7.282-7.819c1-.876 1.989-1.777 2.99-2.678v-.42Z" data-name="Pfad 53"/>
|
||||
<path fill="#e82524" d="M127.487 318.391a10.342 10.342 0 0 0 1.539 1.6 121.452 121.452 0 0 1 16.089 16.677 24.013 24.013 0 0 0 9.609 7.081l-.125-25.36Z" data-name="Pfad 54"/>
|
||||
<path fill="#08b09e" d="M168.474 345.802c2.064 0 3.966-.738 4.542-2.8l.075-.325-.138-4.129a4.507 4.507 0 0 0-1.526-1.7c-6.031-4.116-8.433-10.722-11.523-16.827l.113 24.81a31.725 31.725 0 0 0 8.457.971Z" data-name="Pfad 55"/>
|
||||
<path fill="#ffce06" d="m10.485 341.736-.1-14.025c-.663.1-1.339.163-2.039.213-3.616.225-6.13.763-7.744 1.889l.425 11.786Z" data-name="Pfad 56"/>
|
||||
<path fill="#491033" d="M23.66 320.643a21.27 21.27 0 0 1-10.422 6.506l.1 17.265-12.236-.288.15 11.8h19.87a22.144 22.144 0 0 1 5.392-4.454c1.777-1.038 2.415-2.3.338-3.266-2.5-1.151-1.251-2.189-.3-3.353a85.079 85.079 0 0 1 15.77-15.965c5-3.666 10.009-7.169 15.013-10.784l-31.278-.1a78.716 78.716 0 0 0-2.397 2.639Z" data-name="Pfad 57"/>
|
||||
<path fill="#e82524" d="M.289 359.202c-1.251 9.121 1.739 17.053 5.605 24.86l.475-24.634Z" data-name="Pfad 58"/>
|
||||
<path fill="#e82524" d="m131.737 181.775-4.454 76.768c4.779-7.269 9.671-14.45 13.212-22.445a4.817 4.817 0 0 1 5.818-3.015 43.155 43.155 0 0 0 15.914-.751c5.355-1.126 10.8-.513 16.352-.388a35.119 35.119 0 0 0-9.8 13.562 165.39 165.39 0 0 1-8.758 17.578l29.551-.288c6.406-6.318 12.7-12.761 19.067-19.1a36.284 36.284 0 0 0 8.6-13.825 15.189 15.189 0 0 0-1.339-11.66l-34.206.375Z" data-name="Pfad 59"/>
|
||||
<path fill="#08b09e" d="M17.967 137.785c-4.016 5.755-7.819 11.173-3.753 18.479a17.09 17.09 0 0 0 8.5 7.319c2.665 1.151 3.628-1.6 5-3.078a3.756 3.756 0 0 1 .938-.638c6.043-3.19 8.27-8.4 5.4-14.388-2.027-4.241-1.251-8.032-.188-12.173a81.036 81.036 0 0 1 9.859-21.494l-7.069-2.828-10.73 5.78c-.7 2.5-1.251 5-1.752 7.619a38.872 38.872 0 0 1-6.205 15.402Z" data-name="Pfad 60"/>
|
||||
<path fill="#08b09e" d="m108.988 169.945 5.705-16.5-2.127-10.522-13.65-5.455c.35 3.5.7 7.006 1.026 10.522.963 10.6.563 21.194-4.254 30.978-4.579 9.3-4.679 18.867-2.69 28.688a13.186 13.186 0 0 1-.863 8.17c-4.016 9.208-5.6 18.942-6.393 28.9-.6 7.769-2.8 14.863-10.609 18.767-2.139 1.064-4.154 2.352-6.256 3.541l33.893-.275Z" data-name="Pfad 61"/>
|
||||
<path fill="#491033" d="M30.403 99.662a134.805 134.805 0 0 0-3.078 8.52l6.493-3.453Z" data-name="Pfad 62"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 9.8 KiB |