summaryrefslogtreecommitdiff
path: root/web/templates/settings.html
diff options
context:
space:
mode:
Diffstat (limited to 'web/templates/settings.html')
-rw-r--r--web/templates/settings.html26
1 files changed, 26 insertions, 0 deletions
diff --git a/web/templates/settings.html b/web/templates/settings.html
index 8a72287..1156ef5 100644
--- a/web/templates/settings.html
+++ b/web/templates/settings.html
@@ -215,6 +215,32 @@
</div>
</div>
+ <!-- Calendar feeds (.ics) -->
+ <div class="mb-8 p-4 rounded-xl border border-white/10 bg-white/5">
+ <h3 class="text-sm font-semibold uppercase tracking-wider text-slate-500 mb-1">Calendar Feeds (.ics)</h3>
+ <p class="text-xs text-white/40 mb-4">
+ Subscribed calendars fetched directly by doot. Google Calendar is read
+ through a service account, which cannot see calendars you subscribe to
+ in your own account &mdash; so published schedules go here instead.
+ </p>
+
+ {{template "ics-feed-list" .}}
+
+ <form class="flex flex-wrap gap-2 mt-4"
+ hx-post="/settings/ics-feeds"
+ hx-target="#ics-feed-list"
+ hx-swap="outerHTML"
+ hx-on::after-request="if(event.detail.successful) this.reset()">
+ <input type="text" name="name" placeholder="Name (e.g. Seahawks)" required
+ class="flex-1 min-w-32 bg-input border border-white/20 rounded-lg px-3 py-2 text-sm text-white placeholder-white/40">
+ <input type="text" name="url" placeholder="https://... .ics or webcal://..." required
+ class="flex-[2] min-w-48 bg-input border border-white/20 rounded-lg px-3 py-2 text-sm text-white placeholder-white/40">
+ <button type="submit" class="bg-white/20 hover:bg-white/30 text-white px-4 py-2 rounded-lg text-sm font-medium transition-colors">
+ Add Feed
+ </button>
+ </form>
+ </div>
+
{{template "sync-log" .SyncLog}}
<div id="sources-container" class="grid gap-8 mt-8">