Files
schalli 42daa87e5e feat(calendar): add domain field and test-connection button to Exchange sources
- Prisma: domain String? added to CalendarSource model (db push applied)
- DTOs: domain in CreateCalendarSourceDto, UpdateCalendarSourceDto, new TestCalendarSourceConfigDto
- Service: domain in SOURCE_SAFE_SELECT, addSource, updateSource; new testConnectionFromConfig method
- Controller: POST /calendar/sources/test-config (before :id routes to avoid collision)
- ExchangeProvider: domain in all source interfaces; passed as 3rd arg to EWS WebCredentials
- Frontend: domain in CalendarSource/CreateSourcePayload/UpdateSourcePayload; testSourceConfig API fn
- Form: domain field (Exchange-only), "Test connection" button with idle/loading/success/error states
- i18n: de+en keys for formFieldDomain, formFieldDomainHint, formTestConnection, formTesting, formTestSuccess, formTestFailed

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 13:15:13 +02:00

24 lines
949 B
Markdown

---
slug: calendar-domain-test-button
created: "2026-07-01"
status: in-progress
---
# Calendar: Domain-Feld + Test-Button
Füge Domain-Feld (Exchange) und "Verbindung testen"-Button zur Kalenderquellen-Form hinzu.
## Tasks
- [ ] T1: Prisma schema — `domain String?` zu CalendarSource
- [ ] T2: Migration ausführen
- [ ] T3: Create + Update DTOs — `domain?: string` hinzufügen
- [ ] T4: TestCalendarSourceConfigDto erstellen
- [ ] T5: CalendarService — domain in SOURCE_SAFE_SELECT, addSource, updateSource; `testConnectionFromConfig` Methode
- [ ] T6: CalendarController — `POST /calendar/sources/test-config` Endpoint
- [ ] T7: ExchangeProvider — domain in Interface + EWS WebCredentials
- [ ] T8: calendar-api.ts (Frontend) — domain in Types + `testSourceConfig` Funktion
- [ ] T9: calendar-source-form.tsx — Domain-Feld + Test-Button mit Statusanzeige
- [ ] T10: i18n de.json + en.json — neue Translations
- [ ] T11: Commit