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

Commits on Jan 21, 2026
98d4f0e

🔥 Remove "open_to_hookups" preference from accounts

  • Drop checkbox from edit form
  • Remove field from AccountFields concern
  • Exclude from #open_to list
Commits on Jan 20, 2026
b00c753

✏️ Fix typo in prompt string: “test” → “a test event”

f245313

💄 (events/_orders.erb): wrap action links in nowrap spans to prevent line breaks inside link groups

3e60faa

🔒 Return 403 instead of 400 for authorization failures

df842b9

💬 Update confirmation prompt to use “your” instead of “this” for clearer user-facing language

e71a2c3

✨ Add ability for users to cancel zero-value orders - Introduce GET /orders/:id/destroy endpoint that soft-deletes orders with no monetary value after verifying ownership - Surface “Cancel RSVP” link in order list when order.value is nil/0 - Guard against refunds by setting prevent_refund before destroy

57660ae

🔒️ (rack_attack_throttle.rb): replace Fail2Ban filter with manual cache read/write to fix false-positive blocks

f956f12

♻️ Replace complex SQL-injection header patterns with simple invalid-char check
🩺 Reduce false positives by only blocking non-XMLHttpRequest values that contain unexpected characters

2f82c5d

🔒️ Block SQL-injection attempts in X-Requested-With header Detect and ban IPs sending crafted headers matching common SQLi patterns

2892579

🐛 Add “sexuality” to adult-word list so events tagged with it are hidden from homepage

3d412f5

♻️ Move adult-content hiding logic from before_validation to after_save

The check now runs only once the record is actually persisted, avoiding side-effects during validation and letting the attribute be set cleanly after the event is saved.

b3e7b77

♻️ (event.rb): move event_tag_names update out of callbacks into its own method
🔥 (event_callbacks.rb): remove redundant set(event_tag_names …) call to avoid double work

38a581f

🐛 Fix adult-content filter to also scan event tags Previously only the event name was checked for adult keywords; now both name and tags are inspected so events are correctly hidden from the homepage when any tagged term is explicit.

Commits on Jan 19, 2026
d72f57d

🐛 (events/_grid.erb): allow duplicate event names to be shown when explicitly requested via show_events_with_same_name param

ec85353

♻️ (searchable.rb): freeze APOSTROPHE_CHAR_CLASS constant to prevent accidental mutation

10168e2

♻️ (searchable.rb): refactor apostrophe handling to support all Unicode variants

Commits on Jan 18, 2026
ad06aa9

🚑️ (organisation.rb): comment out destructive destroy call to prevent accidental data loss during cleanup task

7ce07e3

✏️ Fix wording in auto top-up hint for clarity

6e2d0b1

🐛 Fix apostrophe handling in search to match both straight and curly quotes

6f5ed08

💬 Update hard-coded £100 to localised Money object in auto top-up hint