people MFC-Noris Mitgliederverwaltung
Interne Web-Anwendung zur Verwaltung der Vereinsmitglieder des Modellflugclub Noris e.V.
person Mitgliederbereich Alle Mitglieder
Jedes Mitglied kann sich mit seinen Zugangsdaten anmelden und hat Zugriff auf einen persönlichen Bereich.
Startseite
- Persönliche Begrüßung mit aktuellem Datum
- Statistik-Kacheln: geleistete Arbeitsstunden, Pflichtstunden, Mitgliedsstatus
- Schneller Überblick über den eigenen Stand
Profil
Erreichbar über das Profilbild in der Topbar.
- Profilbild hochladen: Klick auf den Avatar öffnet die Dateiauswahl. Bilder werden automatisch auf max. 512×512px komprimiert und als JPEG gespeichert. Funktioniert auch mit großen Tablet- oder Handyfotos.
- Persönliche Daten bearbeiten: Vorname, Nachname, E-Mail, Telefon, Mobil, Geburtstag, Adresse
- Passwort ändern: Gilt für alle MFC-Noris Anwendungen (zentrale Benutzerverwaltung)
- Anzeige: Mitgliedsnummer, Rolle, Mitglied seit (nur lesen)
Meine Arbeitsdienste
- Jahresauswahl mit Statistik-Kacheln (Stunden, Pflichtstunden, Differenz)
- Tabelle aller eigenen Arbeitseinsätze (Datum, Beschreibung, Stunden)
- Dienst beantragen: Formular mit Datum, Stunden und Beschreibung. Der 1. und 2. Vorstand werden per E-Mail benachrichtigt und können den Dienst direkt über einen Link genehmigen oder ablehnen.
- Korrektur anfragen: Für jeden bestehenden Eintrag kann eine Korrektur beantragt werden. Nach Genehmigung wird der bestehende Eintrag aktualisiert.
- Status offener Anfragen wird unter der Tabelle angezeigt
Rasenmähen
- Kalenderwochen-basierte Übersicht (April bis Oktober)
- Eintragen in freie Slots (max. 2 Mitglieder pro KW)
- Quittierung: Uhrzeit von/bis eintragen, Stunden werden automatisch berechnet
- Vergessene Check-outs werden wöchentlich (Montag 08:00) automatisch erkannt — Mitglied und Vorstand werden per E-Mail benachrichtigt
admin_panel_settings Verwaltung Admin / Vorstand
Mitglieder mit der Rolle admin oder vorstand sehen zusätzlich den Bereich „Verwaltung" in der Sidebar.
Mitgliederliste
- Durchsuchbare Tabelle aller Mitglieder mit Filtern (Status, Rolle)
- Mitglieder anlegen, bearbeiten und löschen
- Benutzerkonto verwalten (Benutzername, Passwort, Rolle)
- Kategorien zuweisen (z.B. Vollmitglied, Jugend, Ehrenmitglied)
- Vorstand-Funktionen zuweisen (1./2. Vorstand, Kassier, etc.)
Arbeitsdienste
- Jahresauswertung: Übersicht aller Mitglieder mit Soll/Ist-Vergleich der Arbeitsstunden
- Alle Einträge: Vollständige Liste aller Arbeitsdienst-Einträge mit Bearbeiten/Löschen
- QR-Dienste: Tagesbasierte Arbeitsdienste mit QR-Code erstellen. Mitglieder scannen den Code am Flugplatz und checken sich per Smartphone ein/aus.
- Rasenmähen: Saison generieren (KW 14–43), Einträge verwalten, vergessene Check-outs nachtragen
- Anfragen: Offene Dienst-Anfragen und Korrekturwünsche der Mitglieder genehmigen oder ablehnen
Abrechnung
- Übersicht: Statistik-Karten (Anzahl gesamt/bezahlt/offen, Summen), Jahresauswahl
- Generieren: Jahresabrechnung für alle aktiven Mitglieder automatisch berechnen (Grundbeitrag + LVB + Nachzahlung für fehlende Arbeitsstunden)
- Abrechnungen: Tabelle mit Zahlungsstatus, Zahlungsart, IBAN (letzte 4), Notizen
- Mailversand: Abrechnungen per E-Mail an Mitglieder senden (Einzel- oder Massenversand), Versandstatus wird gespeichert
- Beitragssätze: Pro Kategorie konfigurierbar (Grundbeitrag, LVB-Anteil), globale Pflichtstunden und Preis pro Fehlstunde
Statistiken
- Mitglieder gesamt
- Aktive Mitglieder
- Geleistete Arbeitsstunden im laufenden Jahr
qr_code_scanner QR-Code Check-in System
Eigenständige mobile Seite für Arbeitsdienste am Flugplatz.
- Admin erstellt im Verwaltungsbereich einen QR-Dienst für einen bestimmten Tag
- Der generierte QR-Code wird am Flugplatz ausgehängt
- Mitglieder scannen den Code mit dem Smartphone
- Login mit den persönlichen Zugangsdaten (Token wird im Browser gespeichert)
- Check-in per Knopfdruck, Check-out nach getaner Arbeit
- Stunden werden automatisch berechnet (gerundet auf 0,5h) und als Arbeitsdienst eingetragen
- Vergessene Check-outs werden im Verwaltungsbereich angezeigt und können nachgetragen werden
security Berechtigungssystem
Die Zugriffsrechte werden zentral im Dashboard konfiguriert (Anwendungen → Members).
| Bereich | Beschreibung |
| Mitgliederliste | Mitglieder anzeigen, bearbeiten, anlegen, löschen |
| Arbeitsdienste | Arbeitsstunden verwalten |
| Abrechnung | Jahresabrechnung generieren, bearbeiten, versenden |
| QR-Dienste | QR-Dienste planen, Check-outs nachtragen |
Jeder Bereich kann pro Rolle und Vorstand-Funktion auf Lesen oder Lesen + Schreiben gesetzt werden. Berechtigungen werden sowohl im Backend (HTTP 403) als auch im Frontend (Buttons ausgeblendet) durchgesetzt.
email E-Mail-Benachrichtigungen
- Dienst-Anfrage: Mitglied beantragt einen Arbeitsdienst → E-Mail an 1. und 2. Vorstand mit Genehmigen/Ablehnen-Buttons
- Genehmigung/Ablehnung: Vorstand entscheidet → Bestätigungs-E-Mail an das Mitglied
- Vergessener Rasenmäh-Checkout: Automatische wöchentliche Prüfung → E-Mail an Mitglied und Vorstand
- Jahresabrechnung: Rechnungs-E-Mails an ausgewählte Mitglieder
Die SMTP-Konfiguration wird zentral im Dashboard verwaltet (Einstellungen → E-Mail).
build Technische Details
| Komponente | Technologie |
| Frontend | HTML + CSS + Vanilla JavaScript (SPA) |
| Backend | Node.js + Express |
| Datenbank | PostgreSQL (Schemas: members + shared + dashboard) |
| Auth | JWT-Token (8h), bcrypt |
| Webserver | nginx Reverse Proxy (Port 3004) |
| Profilbilder | multer + Canvas-Komprimierung |
| E-Mail | nodemailer (SMTP aus Dashboard) |
| QR-Codes | qrcodejs (CDN) |