Sprint 13: WebCal-Abo / Kalender-Integration
- GET /api/webcal/token: erzeugt personl. Kalender-Token (einmalig)
- GET /api/webcal/{token}.ics: iCal-Feed mit Health-Erinnerungen,
eigenen Events, Gassi-Treffen (erstellt + beigetreten), angenommenen Sittings
- RRULE für wiederkehrende Health-Einträge (intervall_tage)
- Migration: users.calendar_token (TEXT UNIQUE)
- Settings: "Kalender abonnieren" öffnet webcal://-Link + Kopier-Button
- api.js: API.webcal.getToken() / resetToken()
- SW-Cache: by-v104, APP_VER: 80
This commit is contained in:
parent
b58789373c
commit
a4f74b6c64
8 changed files with 362 additions and 8 deletions
|
|
@ -22,8 +22,8 @@
|
|||
|
||||
<!-- CSS: Reihenfolge ist wichtig — ?v= zwingt Browser zur Neuladung -->
|
||||
<link rel="stylesheet" href="/css/design-system.css">
|
||||
<link rel="stylesheet" href="/css/layout.css?v=79">
|
||||
<link rel="stylesheet" href="/css/components.css?v=79">
|
||||
<link rel="stylesheet" href="/css/layout.css?v=80">
|
||||
<link rel="stylesheet" href="/css/components.css?v=80">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
|
|
@ -269,9 +269,9 @@
|
|||
<div id="modal-container"></div>
|
||||
|
||||
<!-- JS: Reihenfolge ist wichtig — erst Basis, dann Features -->
|
||||
<script src="/js/api.js?v=79"></script>
|
||||
<script src="/js/ui.js?v=79"></script>
|
||||
<script src="/js/app.js?v=79"></script>
|
||||
<script src="/js/api.js?v=80"></script>
|
||||
<script src="/js/ui.js?v=80"></script>
|
||||
<script src="/js/app.js?v=80"></script>
|
||||
|
||||
<!-- Feature-Seiten werden lazy geladen -->
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue