feat: Web-Frontend – Sharing, iCal Import/Export, Ersteller & Privat-Flag

- Ersteller-Zeile im Event-Popup (nur wenn Ersteller != aktueller User).
- Privat-Toggle im Event-Editor (nur lokale Kalender) + Sichtbarkeits-
  Auswahl (hidden|busy) in den Einstellungen.
- Lokale Kalender in Settings & Sidebar: Teilen/Importieren/Exportieren-
  Aktionen (nur eigene; geteilte mit "geteilt von"-Badge, kein Loeschen).
- Share-Modal: Benutzerverzeichnis mit Suche, read/read_write, Freigaben
  entfernen.
- api.js: download()-Helper fuer iCal-Export (Blob).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-05-31 16:30:47 +02:00
parent 32268a18b2
commit 8d2a697f8b
5 changed files with 336 additions and 14 deletions

View File

@@ -1764,3 +1764,40 @@ a { color: var(--primary); text-decoration: none; }
}
}
/* ── Collaboration: sharing badges & user picker ───────────── */
.cal-badge {
display: inline-block;
font-size: 11px;
padding: 2px 8px;
border-radius: 999px;
background: var(--bg-surface);
color: var(--text-2);
border: 1px solid var(--border);
white-space: nowrap;
}
.cal-badge-shared {
background: rgba(66, 133, 244, 0.15);
color: var(--primary);
border-color: transparent;
}
.share-user-picker {
margin-top: 8px;
max-height: 220px;
overflow-y: auto;
border: 1px solid var(--border);
border-radius: 10px;
}
.share-user-item {
padding: 10px 14px;
cursor: pointer;
border-bottom: 1px solid var(--border);
}
.share-user-item:last-child { border-bottom: none; }
.share-user-item:hover { background: var(--bg-surface); }
.popup-creator {
margin-top: 6px;
font-size: 12px;
color: var(--text-2);
font-style: italic;
}