No description
  • PHP 78.9%
  • Blade 20.6%
  • Dockerfile 0.2%
  • Shell 0.2%
Find a file
Claude ad7914e502
All checks were successful
Tests / phpunit (push) Successful in 1m48s
Build & Push Docker Image / Trigger Portainer redeploy (push) Has been skipped
Build & Push Docker Image / build (push) Successful in 27s
Enable content blocks on the pinboard (Schwarzes Brett)
- BoardPost::bodyHtml(): renders content blocks; legacy plaintext stays
  safe (escaped + nl2br)
- SchwarzesBrett page: body input switched to Filament RichEditor with
  ContentBlocks::editor() (title/category/expiry stay lightweight inline)
- View renders bodyHtml() instead of raw text
- Tests: post with block, legacy plaintext still renders (6 total)
2026-08-04 07:46:56 +00:00
.forgejo/workflows Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
app Enable content blocks on the pinboard (Schwarzes Brett) 2026-08-04 07:46:56 +00:00
bootstrap Intranet als Filament-Panel: Pages Start/Beitraege/Kalender/Dokumente, Profil, Meine-Daten-Link 2026-07-15 05:08:02 +00:00
config Enable content blocks on the pinboard (Schwarzes Brett) 2026-08-04 07:46:56 +00:00
database Add protocol/timeline view for post categories 2026-08-04 07:29:10 +00:00
docker Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
docs Docs: ROADMAP fortgeschrieben (Stand v0.26.0); Phase 1 als abgeschlossen markiert, Features v0.18-v0.26 dokumentiert, Abschnitt 'Offen/naechste Ideen' mit Wissensbereich-Ausbau und suite-weiter Keycloak-Anmeldung ergaenzt 2026-07-15 12:40:00 +00:00
lang/vendor/backup Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
public Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
resources Enable content blocks on the pinboard (Schwarzes Brett) 2026-08-04 07:46:56 +00:00
routes Freigabe-Links: optionale Ansprechpartner und Downloads pro Link (v0.56.0) 2026-07-17 15:03:53 +00:00
storage Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
tests Enable content blocks on the pinboard (Schwarzes Brett) 2026-08-04 07:46:56 +00:00
.editorconfig Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
.env.example Benachrichtigungen bei neuen Beitraegen: Glocke + optionale E-Mail, Opt-out im Profil, Scheduler fuer terminierte Beitraege 2026-07-15 06:11:12 +00:00
.gitattributes Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
.gitignore Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
.npmrc Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
artisan Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
CHANGELOG.md Enable content blocks on the pinboard (Schwarzes Brett) 2026-08-04 07:46:56 +00:00
composer.json Web-Push-Benachrichtigungen bei neuen Beitraegen (v0.54.0) 2026-07-16 11:06:41 +00:00
composer.lock Web-Push-Benachrichtigungen bei neuen Beitraegen (v0.54.0) 2026-07-16 11:06:41 +00:00
docker-compose.build.yml Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
docker-compose.quickstart.yml Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
docker-compose.yml Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
Dockerfile Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
package.json Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
phpunit.xml Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00
README.md Dokumente: Karten-Design mit Thumbnails, Inline-Vorschau (Bild/Video/Audio/PDF) auf Detailseite, Ordner-Navigation, Emoji durch Outline-Icons ersetzt 2026-07-15 08:10:29 +00:00
vite.config.js Grundgeruest Entra (Intranet): Suite-Skelett, Konfiguration, RBAC, Modul Beitraege 2026-07-14 21:00:39 +00:00

Entra

Intranet fuer Mitglieder von Vereinen und Verbaenden. Entra buendelt interne Inhalte (Beitraege/News, spaeter Dokumente, Kalender und Gruppenbereiche) in einer eigenstaendigen Anwendung und ergaenzt damit die natec-Suite (Vereo, Eveni, Kurea, Persona). Mitgliederdaten bleiben in Vereo; Entra konsumiert sie perspektivisch per API und teilt sich die Identitaet ueber Keycloak (SSO).

Module (Stand 0.x)

  • Mitglieder-Intranet (/intranet) — eigenes Filament-Panel fuer alle angemeldeten Benutzer: Start (angeheftete + aktuelle Beitraege), Beitraege mit Detailseite, Kalender, Dokumente, Profilseite; Anmeldung per E-Mail/Passwort oder Keycloak (optional mit Auto-Provisionierung). Benutzermenue mit "Meine Daten" (Link ins Vereo-Portal, konfigurierbar) und "Verwaltung" (nur fuer Benutzer mit Rollen).
  • Beitraege — interne News/Ankuendigungen mit Entwurf/Veroeffentlichung, Anriss, Rich-Text-Inhalt und Anheften.
  • Dokumente — Ordner-basierte Ablage mit Karten-Ansicht, Thumbnails und Inline-Vorschau (Bild/Video/Audio/PDF). Sichtbarkeits-Schalter; Dateien liegen auf der Files-Disk (lokal/S3).
  • Kalender — Termine mit Ort, Beginn/Ende oder ganztaegig; im Intranet nach Tagen gruppiert mit deutschen Wochentagen.
  • Gruppen — Gremien/AGs mit Mitglieder-Zuordnung; Beitraege, Termine und Dokument-Ordner lassen sich auf eine Gruppe einschraenken ("Sichtbar fuer").
  • Meine Dateien — persoenliche Dokumente je Mitglied (Bescheinigungen, Zertifikate); nur die Empfaengerin/der Empfaenger sieht sie im Intranet.
  • Globale Suche — ein Suchfeld ueber Beitraege, Termine, Dokumente und Meine Dateien; respektiert Sichtbarkeit und Gruppen.
  • Benachrichtigungen — Glocke (und optional E-Mail) bei neuen Beitraegen, respektiert Gruppen-Sichtbarkeit; Opt-out je Mitglied im Profil.
  • Reaktionen & Kommentare — Daumen/Herz und Kommentare auf Beitraegen; je Beitrag abschaltbar, Kommentare in der Verwaltung moderierbar.
  • Umfragen — optionale informelle Umfrage je Beitrag; Ergebnis als Balken nach der eigenen Stimme (rechtsverbindliche Abstimmungen bleiben in Vereo).
  • Gruppen-Raeume — je Gremium eine Seite mit dessen Beitraegen, Terminen, Dokumenten und Mitgliedern; erreichbar ueber "Meine Gruppen".
  • Mitgliederverzeichnis — freiwilliges Opt-in mit feldweiser Freigabe (E-Mail/Telefon/Kurzbeschreibung); nur zugestimmte Mitglieder sind sichtbar.
  • Wissensdatenbank — Artikel in Kategorien (Rich-Text), gruppen-sichtbar und in die globale Suche eingebunden.
  • Onboarding — Willkommens-Checkliste fuer neue Mitglieder auf der Startseite; abhakbar, ausblendbar und selbst-erledigend.
  • Beitragsstatistik — anonymer Aufrufzaehler je Beitrag (einmal pro Sitzung), sichtbar in der Verwaltung.
  • PWA — installierbar auf Homescreen/Desktop, gebrandete App-Icons, eigenes App-Fenster und Offline-Grundgeruest.
  • Konfiguration — Branding, Allgemein, E-Mail, SSO (Keycloak), Dateispeicher (lokal/S3), Datensicherung, Benutzermenue, Audit- und Mail-Log.
  • Benutzer & Rollen — RBAC (spatie/laravel-permission), Rollen super_admin und redaktion; entra:ensure-rbac legt Rollen/Berechtigungen idempotent an.

Geplant

  • Siehe docs/ROADMAP.md
  • Mitgliederverzeichnis (Opt-in) mit Live-Daten aus Vereo

Stack

Laravel 13, Filament v5, PostgreSQL 16, FrankenPHP, Docker Compose (Portainer). Details zum Betrieb: docker-compose.yml (Registry-Image) bzw. docker-compose.build.yml (lokaler Build). Der Entrypoint erzeugt beim ersten Start APP_KEY und optional den initialen Admin (ADMIN_EMAIL/ADMIN_PASSWORD).

Entwicklung

composer install
cp .env.example .env && php artisan key:generate
php artisan migrate --seed
php artisan serve

Tests: php artisan test (SQLite in-memory). Code-Stil: vendor/bin/pint --dirty.