Dandelion is a fair source project. View the code on Github

Commits on Jul 29, 2026
98fb4a2

♻️ Move geo helpers into lib/geo

177baf2

♻️ Move payment methods under lib/payment_methods

b26e4fc

♻️ Move currency and token helpers into lib/money

8a1ff96

♻️ Move monkey patches and extensions into lib/patches

6dbf1ae

♻️ Move Stripe subscription sync into an Account concern

Commits on Jul 28, 2026
d691b1f

🐛 Fix scheduled send status to rely on delayed_job instead of will_send_at

Clear orphaned will_send_at when saving without scheduling, and update views to check delayed_job presence for displaying the scheduled send time.

472f14e

🐛 Only submit will_send_at when scheduling send later

Prevents orphaned will_send_at values that crash the edit page when no delayed job exists. Fixes DANDELION-37.

a596624

✨ Add ability to hide fields from activity application form

Allow activity admins to hide image, location, date of birth, and gender fields from the application form via new boolean attributes on Activity.

Update the application form preview to reflect these settings in real-time by extending initQuestionsPreview with extraParams and refreshOn options.

Why: Some activities may not need to collect sensitive or optional information like gender or date of birth, giving admins more flexibility over what applicants are asked to provide.

Commits on Jul 27, 2026
e1a90f5

⬆️ Bump activate-tools to 0.0.33

d4be0de

🔒 Set SameSite=Lax on the session cookie

Prevents the session cookie being sent on cross-site POSTs, while still allowing top-level GET navigations such as OAuth callbacks and email links.

e288019

🔧 Support data-method="post" on links

Split the confirm dialog and POST override into separate click handlers so links can opt into POST explicitly, rather than relying solely on the /destroy$/ path convention. Pagelet triggers honour data-method too.

41e03d1

✏️ (events.md, build.erb): change "suggested donation" to "suggested contribution" to use more accurate terminology for the 1% ticket sales contribution

6fd53a9

🔥 Remove email subject label text replacement code

The code that replaced 'email subject' with 'email' in labels for _email_title fields has been removed from both the events_build.js file and the organisations/build.erb view, as it is no longer needed.

c22dff9

Hide responses for anonymous private feedback

Responding is meaningless when feedback is anonymous and not publicly visible, so block the UI and POST.

3f93514

🎥 Click Create a gathering in content during video narration

Sidebar is minified when CREATE_VIDEO is set, so the link there is not visible.

f25485d

🎥 Stabilize and speed up narrated videos

Wait for page transitions before capture and simplify FFmpeg audio handling so generated walkthroughs render cleanly and faster.

23e6698

🎥 Capture scrolled video narration frames

Ensure generated walkthroughs preserve the active viewport and pause between the final event creation steps.

e5961f8

🗂️ Split /events/my into Upcoming, Starred and Past tabs

Starred events get their own tab so the upcoming and past lists only show events you're actually attending or running, and the "Attended" badge now counts tickets with completed payment only.

c055418

Link own attended-events tag to /events/my

Commits on Jul 26, 2026
ee27dda

🔐 Verify WhatsApp webhook signatures with X-Hub-Signature-256