diff options
| author | Peter Stone <thepeterstone@gmail.com> | 2026-08-07 10:39:28 +0000 |
|---|---|---|
| committer | Peter Stone <thepeterstone@gmail.com> | 2026-08-07 10:39:28 +0000 |
| commit | eadd17df2946a1219fdf02f2ee0a0ac19734e56d (patch) | |
| tree | e0460d1cdd9c17fd47ce7cce2fe7845378d8011e /internal/handlers/settings.go | |
| parent | 06450fe69ade2928deb9274bb67b7ba60d394b4f (diff) | |
Wire the Tasks tab into nav; fold in buckets/projects/labels and recurrence
The Tasks tab (/tabs/tasks) existed server-side and was tested, but
nothing in the nav linked to it -- it was pure dead weight in the other
direction. Wiring it up as the natural home for everything that was
either misplaced in Settings or missing a web UI entirely:
- Maintenance Buckets, Projects, and Labels moved out of Settings and
into the Tasks tab (restyled from Settings' opaque slate cards to the
glass/backdrop-blur look already used by the tab's chain/atom cards --
they're now embedded in index.html's page shell, not a standalone
page, so the shared bg-card/bg-input classes from that shell apply).
Settings keeps only what's actually settings: Passkeys, Trusted
Agents, Data Sources.
- Added a Recurrence section to the task-detail modal (freq/interval/
weekday form, posting to a new POST /tasks/recurrence -- the HTMX
counterpart to the widget API's HandleWidgetTaskRecurrence). Native
task recurrence previously had zero web UI at all, only reachable via
the Android widget's RecurrenceEditDialog.
Also fixed a real bug found while touching this code: HandleGetTaskDetail's
source switch only had a case for "trello" -- opening any native ("doot")
task's detail modal, which is most tasks in this tab, showed a blank
title and description. Factored both call sites (initial GET and the
re-render after a recurrence edit) through one loadTaskDetailData helper
and added the missing "doot" case. Also fixed task-detail.html's styling,
which was still using pre-dark-theme classes (text-gray-900 etc.) --
functionally invisible text on the modal's dark background.
Verified with a throwaway local server (real templates + real DB, not
the MockRenderer the unit tests use) seeded with a recurring task,
a bucket, a project, and a label -- confirmed all five touched routes
render 200 with the expected content, including the populated
Buckets/Projects/Labels sections and a real weekly-recurrence form
with the correct weekdays pre-checked. Caught and fixed a copy bug
this way too ("every 2 weeklys" -> "every 2 weeks"). Not committed;
deleted after use.
go build ./..., go vet ./..., and go test ./... all clean.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EZ7ikw2ukGJFTHE3bJS7zL
Diffstat (limited to 'internal/handlers/settings.go')
| -rw-r--r-- | internal/handlers/settings.go | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/internal/handlers/settings.go b/internal/handlers/settings.go index 5ba3724..9ab832c 100644 --- a/internal/handlers/settings.go +++ b/internal/handlers/settings.go @@ -14,9 +14,6 @@ func (h *Handler) HandleSettingsPage(w http.ResponseWriter, r *http.Request) { configs, _ := h.store.GetSourceConfigs() syncLog, _ := h.store.GetRecentSyncLog(20) agents, _ := h.store.GetAllAgents() - buckets, _ := BuildBucketSummaries(h.store) - projects, _ := h.store.GetProjects() - labels, _ := h.store.GetLabelColors() // Group configs by source bySource := make(map[string][]models.SourceConfig) @@ -29,9 +26,6 @@ func (h *Handler) HandleSettingsPage(w http.ResponseWriter, r *http.Request) { Sources []string SyncLog []store.SyncLogEntry Agents []models.Agent - Buckets []models.BucketSummary - Projects []models.Project - Labels []models.LabelColor CSRFToken string WebAuthnEnabled bool }{ @@ -39,9 +33,6 @@ func (h *Handler) HandleSettingsPage(w http.ResponseWriter, r *http.Request) { Sources: []string{"trello", "gcal", "gtasks"}, SyncLog: syncLog, Agents: agents, - Buckets: buckets, - Projects: projects, - Labels: labels, CSRFToken: auth.GetCSRFTokenFromContext(r.Context()), WebAuthnEnabled: h.WebAuthnEnabled, } |
