-
375170e275
join form: show leader@ as a direct email alternative
main
thethreemagi
2026-09-12 14:37:53 -04:00
-
8e8e74ac4b
whoami returns enough to attribute and scope, and CAPS gains finance
Claude
2026-09-10 07:01:49 -04:00
-
77dd250436
footer sign-in link; sign-in, invite and reset land on the console
thethreemagi
2026-09-04 20:39:45 -04:00
-
752fb08d73
API.md: every admin route tested over HTTP and approved
thethreemagi
2026-09-04 20:27:19 -04:00
-
d1dfa6df90
API.md ships in the image; GET /api/docs/approved serves it behind api:docs
thethreemagi
2026-09-04 20:26:45 -04:00
-
38bedaea88
API.md: every admin route driven over HTTP and approved; tests/http_drive.py
thethreemagi
2026-09-04 20:24:31 -04:00
-
b84fc7f064
fb_posts: edit and repost through the publisher's signed reschedule
thethreemagi
2026-09-04 19:57:40 -04:00
-
ea22ed53e7
fb_posts: past its publish time, a scheduled post reads as published
thethreemagi
2026-09-04 19:53:08 -04:00
-
55e4c67b9a
facebook posts: fb_posts table, ingest with hash-verified images, gated image, cancel
thethreemagi
2026-09-04 19:46:44 -04:00
-
7f04d57665
family link: which accounts belong to a household, and GET /api/admin/family
thethreemagi
2026-09-04 19:19:34 -04:00
-
504538567f
roster: households, scouts, a per-year checklist, lead import
thethreemagi
2026-09-04 18:56:30 -04:00
-
59559ad909
lead claims: outreach v1, decided by Mike
thethreemagi
2026-09-04 18:34:01 -04:00
-
aaa77be14d
people management, account self-service, password reset by link
thethreemagi
2026-09-04 18:18:39 -04:00
-
7287f0b515
seeded events are the site's; every write lands in the action log
thethreemagi
2026-09-04 18:10:03 -04:00
-
e52cc60fcf
P4: calendar write-back to Radicale, site-owned UIDs only
thethreemagi
2026-09-04 17:56:55 -04:00
-
c458b8e64d
client IP is the last X-Forwarded-For hop, not the first
thethreemagi
2026-09-04 17:48:15 -04:00
-
69b177d519
the LAN rule moves from nginx into the app, as a setting for keys only
thethreemagi
2026-09-04 17:45:17 -04:00
-
4b5b2a3667
P3: API keys, bearer auth on the admin API, whoami, generated /api/docs
thethreemagi
2026-09-04 17:31:05 -04:00
-
0b337f1f19
meeting words come from the units table; the constants are now defaults
thethreemagi
2026-09-04 16:48:06 -04:00
-
5c7a8dd785
login: honour next on both exits, same-origin only
thethreemagi
2026-09-04 16:28:58 -04:00
-
32e1c67a6f
P2: nearby units CRUD, unit meeting times, site settings - the first admin writes
thethreemagi
2026-09-04 14:10:29 -04:00
-
8c8dab12e3
P1: gate members documents per unit, session auth on the admin API
thethreemagi
2026-09-04 12:09:19 -04:00
-
8ddcccf293
compose: forward ADMIN_BOOTSTRAP_EMAIL and SITE_BASE_URL to the container
thethreemagi
2026-09-04 11:30:33 -04:00
-
bed93072cb
P0: identity layer - units, people, roles, invites, sessions
thethreemagi
2026-09-04 11:29:32 -04:00
-
d6e594b1b6
Fix the booth hours and season, and give the pack rhythm list its own heading
Mike Wichers
2026-09-04 10:34:52 -04:00
-
2a7366786e
Link find-a-unit from the FAQ, the footer, and the tail of the unit pages
Mike Wichers
2026-09-04 10:29:17 -04:00
-
f50b9d45e7
Credit and link the district unit list, and say to contact the unit first
Mike Wichers
2026-09-04 10:20:33 -04:00
-
29afdd453d
Tone the serves chip by openness, so co-ed Exploring reads as open
Mike Wichers
2026-09-04 10:13:15 -04:00
-
9a98c17913
Add /find-a-unit: a courtesy directory of other Continental District units
Mike Wichers
2026-09-04 09:27:31 -04:00
-
706eaf7739
Add nearby_units: the courtesy directory of other Continental District units
Mike Wichers
2026-09-04 09:12:06 -04:00
-
eeb2ce6244
Copy sweep: pull the seasonal surface into named values
claude
2026-09-01 19:35:13 -04:00
-
f0acb50190
Announcements: stick with the nav, and stop cutting the message
claude
2026-09-01 19:26:09 -04:00
-
e02125392a
Announcements: a site-wide notice with a start and an end
claude
2026-09-01 19:22:04 -04:00
-
985253422d
harden: run unprivileged, read-only rootfs, no capabilities
thethreemagi
2026-09-01 13:38:47 -04:00
-
2d7784bcbd
compose: cap container logs at 5x10MB
thethreemagi
2026-09-01 13:37:15 -04:00
-
7221981389
compose: bind 8132 to localhost only
thethreemagi
2026-09-01 13:35:53 -04:00
-
77ad373885
join: honeypot field + server-side validation on POST /join
thethreemagi
2026-09-01 13:17:08 -04:00
-
17c4df796a
Add unlisted visibility: served by link, off the index, noindex
Mike Wichers
2026-08-30 09:21:26 -04:00
-
1ecdb32139
Add a document shelf at /documents, served through the app
Mike Wichers
2026-08-30 09:02:29 -04:00
-
27f1a2104b
calendar: consume the scout-calendar feed instead of local events.json
Claude
2026-08-29 11:33:43 -04:00
-
7d2c241126
Give the join confirmation its own page instead of a banner below the fold
thethreemagi
2026-08-27 07:47:15 -04:00
-
96caac5648
Make a never-attempted mirror visible, and stop replay restamping the date
Mike Wichers
2026-08-26 21:39:56 -04:00
-
781f991fbe
Replace the generic records table with a lean join_leads table
Mike Wichers
2026-08-26 20:55:58 -04:00
-
391e1bcb21
Drop the committed __pycache__ and add a .gitignore
Mike Wichers
2026-08-26 19:45:43 -04:00
-
be2d81b3ab
Lead pipeline: local SQLite store as source of truth
Mike Wichers
2026-08-26 19:38:33 -04:00
-
5331e38d62
Calendar: replace placeholder troop events with the Band feed
claude
2026-08-24 20:05:00 -04:00
-
18b0a85aca
Troop meetings move to 7:30 PM
claude
2026-08-24 19:56:48 -04:00
-
08bc249abb
footer: Facebook badge icons + short labels; head: Open Graph tags and meta description
claude
2026-08-24 19:14:45 -04:00
-
e319b24585
footer: Facebook links to new GreenLane usernames
claude
2026-08-24 19:02:11 -04:00
-
dd04d3be72
footer: Follow column with Pack/Troop 73 Facebook links
claude
2026-08-24 18:54:36 -04:00
-
2eec0a12ae
Copy pass: join headline, who-can-join FAQ, Eagle card, Farmers Market naming; ntfy title to 'New 73 lead'
claude
2026-08-24 18:44:35 -04:00
-
f80243381e
README: self-contained lead pipeline + decom notes
claude
2026-08-24 13:54:53 -04:00
-
5e3eeb9243
self-contained lead pipeline (direct sheet+ntfy, +Comments col); fix joinbtn specificity + facts flex shrink-wrap
claude
2026-08-24 13:53:57 -04:00
-
27fcdd3d2b
fix: f-string brace crash from inline source JS
claude
2026-08-24 13:36:34 -04:00
-
f3c483a58e
join form mirrors scouting73-form (children textarea, interested_in, source w/ schools) + forwards to shared sheet pipeline; firefox joinbtn fix
claude
2026-08-24 13:34:13 -04:00
-
1f9e214d29
port 8132 (8131 taken by triviapoc)
claude
2026-08-24 13:17:59 -04:00
-
83beebf35c
scout-website: greenlanescouts73.org initial deploy (from scoutpoc redesign)
claude
2026-08-24 13:15:13 -04:00