Commit Graph

13 Commits

Author SHA1 Message Date
admin ef12b275f5 espid2sensor: Logout-Button wie inaktive Tabs grau hinterlegen
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-07 14:10:51 +00:00
admin 782055c4fd espid2sensor: User-Formular und Meldung beim Verlassen des User-Tabs zurücksetzen
Nach dem Anlegen eines Users blieben Formularfelder und die Meldung
"User erfolgreich angelegt!" beim erneuten Öffnen des User-Tabs stehen.
Werden jetzt beim (Wieder-)Betreten des Tabs zurückgesetzt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-07 14:04:57 +00:00
admin ab74164608 espid2sensor: Logout-Button und Fix für dauerhafte "User gelöscht"-Meldung
Logout-Button rechts in der Tab-Zeile ergänzt. Die Bestätigungsmeldung
nach dem Löschen eines Users blieb bisher beim erneuten Öffnen des
User-Tabs stehen; sie wird jetzt beim (Wieder-)Betreten des Tabs
zurückgesetzt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-07 13:56:25 +00:00
admin 0c45cd9f46 espid2sensor: Version/Datum fehlten auf Login-Seite bei falschem Passwort
POST /login rendert bei Fehlermeldung wieder version/vdate/noUsers, so wie
GET /login das schon tut - vorher fielen diese Locals beim Fehlerfall weg
und der Footer war leer.
2026-08-07 08:20:19 +00:00
admin ddc503cb63 espid2sensor: Passwort-Reset-Modal statt Browser-prompt(), Absturz bei Nicht-Admin-Login behoben
- Ersetzt window.prompt() für den Passwort-Reset in der User-Liste durch
  ein eigenes, zum bestehenden Bestätigungs-Modal passendes Popup
  (showInputModal), analog zum vorhandenen showModal für Löschbestätigungen.
- Behebt ReferenceError beim Login als Nicht-Admin: userCancelBtn wurde als
  impliziter globaler Bezeichner referenziert statt über
  document.getElementById, existiert aber nur im admin-only User-Tab-HTML.
  Für Nicht-Admins riss das den kompletten Setup-Block (Tabs, Liste laden) ab.
2026-08-07 08:20:11 +00:00
admin 19c6facf71 espid2sensor: User-Liste mit Passwort-Reset und Löschen im User-Tab
Ersetzt das manuelle E-Mail-Eingabefeld für den Passwort-Reset durch
eine Liste aller angemeldeten User. Pro User stehen zwei Aktionen zur
Verfügung: Passwort zurücksetzen (nutzt die bestehende
/api/resetPassword-Route) und Löschen (neue DELETE /api/users/:id-Route,
admin-only, verhindert Löschen des eigenen Accounts). Neue GET
/api/users-Route liefert Email/Rolle aller User (admin-only).
2026-08-07 08:03:27 +00:00
admin 278f91ed3c espid2sensor: Bootstrap-Hinweis auf Login-Seite fett hervorheben 2026-08-07 08:03:16 +00:00
admin 7b3403d943 espid2sensor: Admin-Bootstrap via ADMIN_EMAIL/ADMIN_PASSWORD
Für extern verwaltete Deployments (Portainer, kein direkter Mongo-Zugriff)
wird beim Start automatisch ein Admin-User angelegt, falls die
user-Collection leer ist und ADMIN_EMAIL/ADMIN_PASSWORD gesetzt sind.
Login-Seite zeigt einen Hinweis, solange noch kein User existiert.

Version auf 1.5.0 angehoben.
2026-08-07 06:46:28 +00:00
admin cd4d7ba25d espid2sensor: Passwort ändern + Admin-Passwort-Reset
- POST /api/changePassword: jeder eingeloggte User kann sein eigenes
  Passwort ändern (erfordert aktuelles Passwort), neuer Profil-Tab
- POST /api/resetPassword: Admin kann das Passwort eines Users per
  Email zuruecksetzen, neue Karte im bestehenden User-Tab
- Login-Seite: Hinweis fuer "Passwort vergessen" (Kontakt zum Admin,
  da keine Mail-Infrastruktur im Projekt existiert)
- Bugfix beim Umsetzen: express-session's MemoryStore serialisiert
  Sessions per JSON, wodurch die ObjectId aus req.session.userId zu
  einem String wird - vor der Mongo-Query per ObjectId(...) casten

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 10:07:52 +00:00
admin ccaf6dd6f3 espid2sensor: Version auf 1.3.2 angehoben
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 07:52:51 +00:00
admin 4283f07291 espid2sensor/build_and_copy.sh entfernen
Ueberfluessig, seit deploy.sh direkt ueber docker build + push
arbeitet (wie bei den anderen Services) statt ueber das alte
scp-basierte Kopieren auf einen Zielhost.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 06:56:29 +00:00
admin b8bcd946d0 espid2sensor/deploy.sh an die anderen deploy.sh angleichen
REGISTRY per Env-Variable konfigurierbar (Default ghcr.io/dnms-org/laermkarte-sensor-community),
Build direkt ueber docker build -f Dockerfile_esp2sensor statt ueber das
alte scp-basierte build_and_copy.sh, einheitlicher Aufbau/Ausgabe wie bei
noise/sensorapi/readin/readarchive.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-06 06:55:44 +00:00
admin 0d10e17caf espid2sensor in Hauptstack aufnehmen, verschachteltes Git-Repo aufgeloest
espid2sensor lief bisher nur per eigenem Dev-Compose mit isolierter
Wegwerf-Mongo. Jetzt Teil von noisesensors/docker-compose.yml, Port 3004,
Zugriff auf die dort laufende mongodb-Instanz (sensor_data). DEV_AUTO_LOGIN
explizit aus, SESSION_SECRET ueber neue Env-Variable statt Code-Default.

Dockerfile_esp2sensor an das Muster der anderen Services angeglichen
(node:22-alpine, /opt/app, npm ci, tzdata/Europe-Berlin, deluser node).

espid2sensor/.git entfernt (war eigenes verschachteltes Repo) und der
komplette Verzeichnisinhalt ins laermsensor-stack-Repo uebernommen.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-05 14:14:02 +00:00