test: P1-Coverage für Scheduler-Idempotenz, Bradford-Fensterrand, FZA-Faktor+Kappung, Cross-Company-RLS
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015Ahyx6D3r7G1EuAc42nezn
This commit is contained in:
@@ -3349,3 +3349,552 @@ Keine Commits in dieser Session.
|
||||
- frontend/src/pages/KioskStampPage.tsx | 279 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
|
||||
|
||||
---
|
||||
## 2026-09-02 15:07 – 15:08 (1m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- b8073fa docs(devlog): Sessions vom 2026-08-05 bis 2026-09-02 nachtragen
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 545 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 15:09 – 15:09 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 545 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 15:09 – 15:10 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 545 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 15:11 – 15:11 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 545 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:20 – 22:20 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 545 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:21 – 22:23 (1m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 545 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:27 – 22:28 (1m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- 52ecd9e chore(routers): toten Router absence.py entfernen
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/routers/absence.py | 159 ---------------------------------------------------------------------------------------
|
||||
|
||||
---
|
||||
## 2026-09-02 22:28 – 22:29 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- c733ddf fix(redis): gepoolten async-Redis-Client statt Connect/Close pro Request
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/kiosk_security.py | 5 ++---
|
||||
- backend/app/core/redis.py | 30 ++++++++++++++++++++++++++++--
|
||||
- backend/app/main.py | 2 ++
|
||||
- backend/app/routers/auth.py | 32 ++++++++++++++------------------
|
||||
- frontend/src/api/client.ts | 6 ++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:32 – 22:37 (5m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/kiosk_security.py | 5 ++---
|
||||
- backend/app/core/redis.py | 30 ++++++++++++++++++++++++++++--
|
||||
- backend/app/main.py | 2 ++
|
||||
- backend/app/routers/auth.py | 32 ++++++++++++++------------------
|
||||
- frontend/src/api/client.ts | 6 ++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:38 – 22:38 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/kiosk_security.py | 5 ++---
|
||||
- backend/app/core/redis.py | 30 ++++++++++++++++++++++++++++--
|
||||
- backend/app/main.py | 2 ++
|
||||
- backend/app/routers/auth.py | 32 ++++++++++++++------------------
|
||||
- frontend/src/api/client.ts | 6 ++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:38 – 22:41 (2m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/kiosk_security.py | 5 ++---
|
||||
- backend/app/core/redis.py | 30 ++++++++++++++++++++++++++++--
|
||||
- backend/app/main.py | 2 ++
|
||||
- backend/app/routers/auth.py | 32 ++++++++++++++------------------
|
||||
- frontend/src/api/client.ts | 6 ++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:41 – 22:41 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/kiosk_security.py | 5 ++---
|
||||
- backend/app/core/redis.py | 30 ++++++++++++++++++++++++++++--
|
||||
- backend/app/main.py | 2 ++
|
||||
- backend/app/routers/auth.py | 32 ++++++++++++++------------------
|
||||
- frontend/src/api/client.ts | 6 ++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:42 – 22:42 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/kiosk_security.py | 5 ++---
|
||||
- backend/app/core/redis.py | 30 ++++++++++++++++++++++++++++--
|
||||
- backend/app/main.py | 2 ++
|
||||
- backend/app/routers/auth.py | 32 ++++++++++++++------------------
|
||||
- frontend/src/api/client.ts | 6 ++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:42 – 22:46 (3m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/kiosk_security.py | 5 ++---
|
||||
- backend/app/core/redis.py | 30 ++++++++++++++++++++++++++++--
|
||||
- backend/app/main.py | 2 ++
|
||||
- backend/app/routers/auth.py | 32 ++++++++++++++------------------
|
||||
- frontend/src/api/client.ts | 6 ++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:46 – 22:47 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- ad0bc62 ci(frontend): Build-Job als Gate im Security-Workflow ergänzen
|
||||
|
||||
### Geänderte Dateien
|
||||
- .gitea/workflows/security.yml | 23 +++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 22:47 – 22:49 (2m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- 538cbb0 test(coverage): pytest-cov einbauen (term-missing Report)
|
||||
|
||||
### Geänderte Dateien
|
||||
- .gitignore | 3 +++
|
||||
- backend/pytest.ini | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-02 22:53 – 22:53 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- .gitignore | 3 +++
|
||||
- backend/pytest.ini | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-02 22:54 – 22:54 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- .gitignore | 3 +++
|
||||
- backend/pytest.ini | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-02 23:03 – 23:03 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- .gitignore | 3 +++
|
||||
- backend/pytest.ini | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-02 23:03 – 23:04 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- .gitignore | 3 +++
|
||||
- backend/pytest.ini | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-02 23:05 – 23:05 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- c1572c3 docs(api): 7 fehlende Router nachgezogen
|
||||
|
||||
### Geänderte Dateien
|
||||
- docs/api.md | 427 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 23:07 – 23:08 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- docs/api.md | 427 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 23:09 – 23:09 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- docs/api.md | 427 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-02 23:09 – 23:13 (3m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- aba0b53 fix(docs): StaticFiles-Mount-Pfad korrigieren (static statt app/static)
|
||||
- 4e30c55 fix(docs): Swagger-Assets nach backend/static/ verschoben (nginx-Alias)
|
||||
- 9f9dfb5 fix(docs): Swagger/ReDoc-Assets lokal statt von cdn.jsdelivr.net
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/main.py | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-02 23:15 – 23:17 (1m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/main.py | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-02 23:17 – 23:17 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- b7bec79 fix(setup): nginx-Template im Installer auf Prod-Stand bringen
|
||||
|
||||
### Geänderte Dateien
|
||||
- setup_server.sh | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:17 – 23:17 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- setup_server.sh | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:19 – 23:19 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- setup_server.sh | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:22 – 23:22 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- setup_server.sh | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:24 – 23:24 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- setup_server.sh | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:25 – 23:25 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- setup_server.sh | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:35 – 23:35 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/tests/test_coverage_gaps.py | 5 +++--
|
||||
|
||||
---
|
||||
## 2026-09-02 23:49 – 23:55 (5m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- ac496a5 fix(absences): POST /absences/ reicht warnings jetzt an den Client durch
|
||||
- 3cf396b fix(tests): Testdaten für Jahreswechsel-Regressionstest korrigieren
|
||||
- 548738c fix(absences): Feiertage über Jahreswechsel korrekt aus working_days rausrechnen
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/routers/absences.py | 10 ++++++++--
|
||||
- backend/tests/test_coverage_gaps.py | 44 ++++++++++++++++++++++++++++++++++++++------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:55 – 23:55 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/routers/absences.py | 10 ++++++++--
|
||||
- backend/tests/test_coverage_gaps.py | 44 ++++++++++++++++++++++++++++++++++++++------
|
||||
|
||||
---
|
||||
## 2026-09-02 23:56 – 00:01 (5m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** nexarch
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/routers/absences.py | 10 ++++++++--
|
||||
- backend/tests/test_coverage_gaps.py | 44 ++++++++++++++++++++++++++++++++++++++------
|
||||
|
||||
---
|
||||
## 2026-09-03 00:02 – 00:02 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/routers/absences.py | 10 ++++++++--
|
||||
- backend/tests/test_coverage_gaps.py | 44 ++++++++++++++++++++++++++++++++++++++------
|
||||
|
||||
---
|
||||
## 2026-09-03 00:03 – 00:03 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- 5ba5a99 docs: README erstellt, Debian statt Ubuntu korrigiert
|
||||
|
||||
### Geänderte Dateien
|
||||
- README.md | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
- setup_server.sh | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-03 00:03 – 00:03 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- README.md | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
- setup_server.sh | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-03 00:04 – 00:04 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- README.md | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
- setup_server.sh | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-03 00:04 – 00:04 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- README.md | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
- setup_server.sh | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-03 00:05 – 00:05 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- README.md | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
- setup_server.sh | 2 +-
|
||||
|
||||
---
|
||||
## 2026-09-03 00:06 – 00:09 (2m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/routers/auth.py | 29 +++++----
|
||||
- backend/app/services/auth_service.py | 210 ++++++++++++++++++++++++++++++++---------------------------------
|
||||
- backend/app/services/kiosk_auth_service.py | 191 ++++++++++++++++++++++++++++-------------------------------
|
||||
- backend/app/services/kiosk_session_service.py | 26 +++-----
|
||||
- backend/app/services/public_stamp_session_service.py | 16 ++---
|
||||
|
||||
---
|
||||
## 2026-09-03 00:12 – 00:14 (2m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
- 107cba9 fix(redis): INCR+EXPIRE atomar via Pipeline (MULTI/EXEC)
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/routers/auth.py | 8 ++++++--
|
||||
- backend/app/services/auth_service.py | 8 ++++++--
|
||||
- backend/app/services/kiosk_auth_service.py | 8 ++++++--
|
||||
|
||||
---
|
||||
## 2026-09-03 01:59 – 02:00 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** asb-material
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/redis.py | 14 +++++++++++++-
|
||||
- backend/app/main.py | 11 +++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-03 02:04 – 02:05 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** timemaster
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- backend/app/core/redis.py | 14 +++++++++++++-
|
||||
- backend/app/main.py | 11 +++++++++++
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user