Dandelion is a fair source project. View the code on Github
Commits on Aug 31, 2026
| 0f1b5a3 |
Align the comment reaction picker with the word/emoji input. |
| fc4d56b |
Don't list new gatherings publicly by default. |
| 6de682f |
Remove leftover sexuality and dating preference fields from accounts. |
Commits on Aug 30, 2026
| 1a6b920 |
Split booking and evergreen tests out of the events suite. |
| a2fffd0 |
Fold satellite test files into their parent domain files. |
| 95ea9f8 |
Fix event tests that assumed donor amounts and persisted organisations. |
| 34e0731 |
Share test setup helpers and default factory accounts to the organisation owner. |
| 3e1750f |
Require Mailgun SPF and From alignment before trusting inbound comment senders. |
| dc1fbe8 |
Only follow same-origin or BASE_URI referers when redirecting back. |
| eb0039c |
404 the attendees pagelet when the event hides attendees. |
| ceb6089 |
Allow only real YouTube ids on thumbnail fetches. |
| 0738292 |
Extract ticket restriction messages into a purchase_gate partial. |
| 0690d85 |
Enforce ticket access rules on purchase, not only in the UI. |
| 9a90b6a |
Remove trivial tests and cases already covered by larger ones. |
| 4f492cc |
Fix ajax search XSS test after name sanitization. Account names strip HTML on save, so set the payload after create and drop the ' |
| 852f2c3 |
Prevent buyers from earning affiliate credit on their own orders. |
| 1a1ec62 |
Enforce discount code maximum uses when creating an order. The limit was only checked in the purchase view, so a reused discount_code_id could apply the code indefinitely. |
| 7b14aa9 |
Stop authorizing inbound comments from spoofable MIME From headers. |
| 952a417 |
Block javascript: post-payment redirects to prevent stored XSS. |
| f1736ec |
Escape search autocomplete labels to prevent stored XSS. User-controlled names were interpolated into HTML and rendered with jQuery .html(); return plain text and build icons as trusted DOM nodes instead. |