FREIZEIT
FREIZEIT
Wofür ist das?
FREIZEIT ist das umfangreichste Plugin in Allesda und unterstützt die komplette Organisation von Freizeiten / Camps:
- Events (eine Freizeit / ein Camp im Kalender)
- Teilnehmer (Personen, ggf. mit Custom-Feldern, Import aus CSV)
- Listen (z.B. Anwesenheitsliste, Workshop-Listen, Themenlisten)
- Packlisten mit Kisten und Items (was muss eingepackt werden)
- Einkaufslisten (was muss noch besorgt werden)
- Zelte mit Kartenansicht und Belegung
- ein eigener Kalender mit Kategorien und Drag-&-Drop
- ein Shopping-Modul, ein Schema-Service, einfache User-/Account-Hilfen
Sie wechseln über das Menü und einen Event-Selector zwischen den Events – die meisten Funktionen beziehen sich immer auf das aktuell gewählte Event.
Schritt-für-Schritt nach Bereich
A) Events
1. Freizeit → Events (/freizeit/events).
2. Neu: /freizeit/events/new → speichern (POST /freizeit/events/save).
3. Bearbeiten: /freizeit/events/{id}/edit.
4. Aktivieren: POST /freizeit/events/{id}/activate – wählt das Event als aktuell.
5. Löschen: POST /freizeit/events/{id}/delete.
B) Kalender
1. Freizeit → Kalender (/freizeit/kalender).
2. Drag&Drop, Kategorien anlegen, Termin verschieben:
GET /freizeit/kalender/api/eventsPOST /freizeit/kalender/api/eventsPOST /freizeit/kalender/api/events/{id}POST /freizeit/kalender/api/events/{id}/movePOST /freizeit/kalender/api/events/{id}/delete- Kategorien:
/freizeit/kalender/api/categories(GET, POST,/{id},/{id}/delete)
3. Teilnehmer pro Event abrufen:
GET /freizeit/kalender/api/events/{id}/participantsGET /freizeit/kalender/api/events/{id}/participant-names
C) Teilnehmer
1. Freizeit → Teilnehmer (/freizeit/teilnehmer).
2. Neu: /freizeit/teilnehmer/new → POST /freizeit/teilnehmer.
3. Bearbeiten: /freizeit/teilnehmer/{id}/edit → POST /freizeit/teilnehmer/{id}.
4. Detail: /freizeit/teilnehmer/{id}.
5. Löschen: POST /freizeit/teilnehmer/{id}/delete.
6. CSV-Import in vier Schritten:
1. GET /freizeit/teilnehmer/import – Startseite
2. POST /freizeit/teilnehmer/import/upload – Datei hochladen
3. GET /freizeit/teilnehmer/import/mapping – Spalten zuordnen
4. POST /freizeit/teilnehmer/import/execute – Import ausführen
5. ggf. GET /freizeit/teilnehmer/import/duplicates und POST .../confirm zur Duplikatbehandlung.
#### Custom-Felder & Pflichtfelder (Admin)
POST /settings/admin/freizeit/teilnehmer/custom-fields/addPOST /settings/admin/freizeit/teilnehmer/custom-fields/deletePOST /settings/admin/freizeit/teilnehmer/required-fieldsPOST /settings/admin/freizeit/teilnehmer/table-fields– Spalten in der Tabelle
D) Listen
1. Freizeit → Listen (/freizeit/listen).
2. Liste öffnen: /freizeit/listen/{id}.
3. Teilnehmer hinzufügen / entfernen:
POST /freizeit/listen/{id}/addPOST /freizeit/listen/{id}/remove
#### Listen verwalten (Admin)
GET /settings/admin/freizeit/listenPOST /settings/admin/freizeit/listen/create– Liste anlegenPOST /settings/admin/freizeit/listen/rename– umbenennenPOST /settings/admin/freizeit/listen/delete– löschen
E) Packlisten & Kisten
1. Freizeit → Packlisten (/freizeit/packlisten).
2. Packliste anlegen: POST /freizeit/packlisten/create.
3. Detail einer Packliste: /freizeit/packlisten/{id}.
4. Kisten anlegen / umbenennen / löschen:
POST /freizeit/packlisten/{id}/kisten/createPOST /freizeit/packlisten/{packlistId}/kisten/{boxId}/renamePOST /freizeit/packlisten/{packlistId}/kisten/{boxId}/delete
5. Items in der Kiste:
POST /freizeit/packlisten/{packlistId}/kisten/{boxId}/items/createPOST /freizeit/packlisten/{packlistId}/kisten/{boxId}/items/{itemId}/updatePOST /freizeit/packlisten/{packlistId}/kisten/{boxId}/items/{itemId}/delete
6. Abhaken & Drucken:
POST /freizeit/packlisten/{packlistId}/kisten/{boxId}/checkGET /freizeit/packlisten/{packlistId}/kisten/{boxId}/printGET /freizeit/packlisten/{packlistId}/kisten/{boxId}/items/json(Daten z.B. für Etikettendruck)
#### Vorlagen verwalten (Admin)
GET /settings/admin/freizeit/packlisten– Vorlagenliste- Anlegen / Umbenennen / Archivieren / Löschen / Item-Pflege analog zu oben unter
/settings/admin/freizeit/packlisten/...
F) Einkaufslisten
1. Freizeit → Einkaufslisten (/freizeit/einkaufslisten).
2. Liste anlegen: POST /freizeit/einkaufslisten/create.
3. Liste öffnen: /freizeit/einkaufslisten/{id}.
4. Items:
- anlegen, ändern, abhaken, löschen – auch als AJAX (
-ajax-Endpunkte) für reaktives UI - alles erledigte aufräumen:
POST /freizeit/einkaufslisten/{id}/clear-checked
G) Zelte (Belegungsplanung)
1. Freizeit → Zelte (/freizeit/zelte).
2. Detail eines Zeltes: /freizeit/zelte/{id}.
3. Modus / Belegung pflegen:
POST /freizeit/zelte/{id}/modePOST /freizeit/zelte/{id}/assign-user/unassign-userPOST /freizeit/zelte/{id}/genderPOST /freizeit/zelte/{id}/assign/unassign
4. Karte / Layout:
POST /freizeit/zelte/map/upload– Karte hochladenPOST /freizeit/zelte/map/deletePOST /freizeit/zelte/map/positionPOST /freizeit/zelte/map/resetPOST /freizeit/zelte/map/propertiesPOST /freizeit/zelte/map/create
#### Zelte-Stammdaten (Admin)
GET /settings/admin/freizeit/zeltePOST /settings/admin/freizeit/zelte/createPOST /settings/admin/freizeit/zelte/updatePOST /settings/admin/freizeit/zelte/delete
Häufige Fragen / Probleme
„Funktion ist nicht da“
- Ein Event muss aktiv sein (Event-Selector). Viele Daten sind eventbezogen.
„Import findet keine Spalten“
- CSV mit korrekter Kopfzeile? UTF-8?
- Im Mapping-Schritt manuell zuordnen.
„Packliste lässt sich nicht drucken“
- Liste muss Items haben.
- Browser-Druckdialog vs. PDF-Druck testen.
„Zelt-Belegung passt nicht“
- Geschlechtsmodus (gender) und Zuweisungen prüfen.
- Bei Konflikten ggf. Belegung zurücksetzen und neu vergeben.
Technische URLs (Kurzreferenz, Auszug)
Events: /freizeit/events…
Kalender: /freizeit/kalender…
Teilnehmer: /freizeit/teilnehmer…
Listen: /freizeit/listen… + Admin /settings/admin/freizeit/listen…
Packlisten: /freizeit/packlisten… + Admin /settings/admin/freizeit/packlisten…
Einkaufslisten: /freizeit/einkaufslisten…
Zelte: /freizeit/zelte… + Admin /settings/admin/freizeit/zelte…
Allgemeine Admin-Seite: /settings/admin/freizeit
(Jeweils GET für Anzeige, POST für Aktion. Vollständige Liste siehe Quellcode der *Controller.java Dateien.)
Hinweise
- FREIZEIT ist das größte Plugin und hat viele Unter-Module. Es lohnt sich, Schritt für Schritt zu konfigurieren (zuerst Events anlegen, dann Teilnehmer, dann Listen / Packlisten / Zelte).
- Mehrere Module wirken zusammen: Listen können sich auf Teilnehmer beziehen, Zelte auf Teilnehmer, Packlisten auf Events.
- Die Custom-Felder bei Teilnehmern sind sehr mächtig – legen Sie sie früh an, sonst sind importierte Daten unstrukturiert.