Konfiguration ============= GISELA kann über eine .env-Datei im Haupt-Verzeichnis konfiguriert werden. Datenbank --------- MariaDB und MySQL werden von GISELA unterstützt. Die Zugangsdaten zur Datenbank können in der .env-Datei eingetragen werden. Mehr Informationen zur Konfiguration sind in der `Laravel-Dokumentation `__ zu finden. .. code-block:: bash :caption: .env DB_CONNECTION="mariadb" DB_HOST="127.0.0.1" DB_PORT=3306 DB_DATABASE="gisela" DB_USERNAME="gisela" DB_PASSWORD="" E-Mail ------ Hauptsächlich wird der Versand von E-Mails per SMTP verwendet und getestet. Grundsätzlich sind aber auch andere Methoden des E-Mail-Versands möglich. Mehr Informationen dazu sind in der `Laravel-Dokumentation `__ zu finden. .. code-block:: bash :caption: .env MAIL_MAILER="smtp" MAIL_HOST="mail.gisela-inventory.org" MAIL_PORT=587 MAIL_USERNAME="gisela@gisela-inventory.org" MAIL_PASSWORD="" MAIL_FROM_ADDRESS="gisela@gisela-inventory.org" MAIL_FROM_NAME="${APP_NAME}" Benutzerverwaltung ------------------ Für die Benutzerverwaltung wird auf Keycloak als externen Identity Provider gesetzt. Die Authentifikation läuft dabei über `OpenID Connect `__ ab. Keycloak wird mittels `Laravel Socialite `__ und `Socialite Providers `__ angebunden. .. code-block:: bash :caption: .env KEYCLOAK_CLIENT_ID="gisela" KEYCLOAK_CLIENT_SECRET="" KEYCLOAK_REDIRECT_URI="${APP_URL}/auth/callback" KEYCLOAK_BASE_URL="" KEYCLOAK_REALM="" Gruppen ------- Über OpenID Connect werden von Keycloak die Gruppen übermittelt, denen ein:e Benutzer:in angehört. In der .env-Datei kann angegeben werden, welche Gruppen Benutzer:innen zu welchen Rollen in GISELA hinzufügen sollen. Dadurch kann beeinflusst werden, welche Berechtigungen ein:e Benutzer:in in GISELA hat. .. code-block:: bash :caption: .env GROUP_AB="ausleihe" GROUP_HV="ref-finanzen-hv" GROUP_KV="ref-finanzen-kv" GROUP_ADMIN="admin" Links ----- Es können Links gesetzt werden, um Verweise auf externe Dokumente oder Anwendungen zu ermöglichen, wie beispielsweise für * Ausleihebedingungen * Finanzverwaltungssoftware (z. B. `StuFiS `_) .. code-block:: bash :caption: .env LENDING_REGULATIONS_URL="https://ordnungen.gisela-inventory.org/ausleiheordnung.html" PROJECT_BASE_URL="https://finanzen.gisela-inventory.org/projekt/" RECEIPT_BASE_URL="https://finanzen.gisela-inventory.org/auslagen/" Karten ------ Für die Anzeige des genauen Standortes eines Lagerortes wird eine Karte mittels `Leaflet `_ eingebunden. Es kann konfiguriert werden, welcher Tile-Server genutzt und welche Hinweise (Copyright, Datenschutz, etc.) an der Karte angezeigt werden sollen. .. code-block:: bash :caption: .env MAP_TILES="https://tile.openstreetmap.org/{z}/{x}/{y}.png" MAP_NOTICE="© OpenStreetMap"