Helfertool

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen

Helfertool.org

Helfertool ist eine Software, die es erlaubt, die Freiwilligen oder Mitarbeiter für eine Veranstaltung zu verwalten. Sie können sich online für Jobs registrieren und die Verwaltungsoberfläche erlaubt es, die registrierten Personen zu verwalten. Für jeden Job können verschiedene Schichten mit einer Start- und Endzeit und einer begrenzten Anzahl von Helfern erstellt werden.

Sie ist in Python mit Django geschrieben.

Features lt Website:

  • Entscheiden Sie, ob die Registrierung für eine Stelle intern oder öffentlich sichtbar ist.
  • Generieren Sie Ausweise zur Identifizierung und Zugangskontrolle.
  • Verwaltung von Geschenken für Freiwillige: sie können für jede geleistete Schicht ein Geschenk erhalten, die Organisatoren können vermerken, ob ein Freiwilliger das Geschenk für jede einzelne Schicht erhalten hat.
  • Verwaltung von Geschenken für Freiwillige: sie können für jede geleistete Schicht ein Geschenk erhalten, die Organisatoren können vermerken, ob ein Freiwilliger das Geschenk für jede einzelne Schicht erhalten hat.

Mehr Infos auf https://www.helfertool.org

Installation

Zuerst das git repo clonen. Ggf. Versionsnummer auf die aktuelle Version anpassen.

git clone --single-branch -b v3.2.2 https://github.com/helfertool/helfertool/

Aktuell wird laut src/requirements.txt ein Django in Version 4.2 benötigt.

Aktuell wird dafür

Python 3.8, 3.9, 3.10, 3.11, and 3.12 (as of 4.2. 8)

unterstützt. Auf den debian bookworm Maschinen sollte daher das installierte python3 genügen

python3 --version
Python 3.11.2

Vom Helfertool Docker wird aktuell auch Version 3.11 eingesetzt, nachzusehen in deployment/container/etc/uwsgi.conf

Falls das auf deiner Maschine nicht der Fall ist siehe Python für die manuelle Installation einer aktuelleren Version.

Wir installieren zuerst die Dependencies, dafür legen wir uns ein venv an um diese nur lokal zu laden.

cd ~/helfertool
python3 -m venv venv # initalisierung des venv
source venv/bin/activate # aktivierung des venv
# installation der dependencies im venv 
venv/bin/pip install wheel -r src/requirements.txt -r src/requirements_prod.txt

Für den persönlichen Komfort habe ich folgende Zeilen in der ~/.profile hinterlegt.

source ~/helfertool/venv/bin/activate
export HELFERTOOL_CONFIG_FILE=$HOME/helfertool/src/helfertool.yaml


Konfiguration

Die Config Datei findet sich unter ~/helfertool/src/helfertool.yml

Dort muss insbesondere der Datenbankzugang hinterlegt werden.

Inbetriebnahme

cd ~/helfertool
venv/bin/python src/manage.py compress --force
venv/bin/python src/manage.py collectstatic --noinput

Der neue Erzeugte static ordner wird der htdocs-ssl ordner in der Entsprechenden Domain:

cd ~/doms/example.org/
rm -r htdocs-ssl
ln -s ~/helfertool/static htdocs-ssl

und die wsgi datei in app-ssl hinterlegen:

ln -s ~/helfertool/src/helfertool/wsgi.py ~/doms/example.com/app-ssl/passenger_wsgi.py

Die Datenbank wird initalisiert:

venv/bin/python src/manage.py migrate
venv/bin/python src/manage.py loaddata toolsettings