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

Commits on Aug 22, 2025
1cc84b7

✨ Add event-type filter to organisation events search

  • Accept new event_type param in controller and translate it to the corresponding EventTag name
  • Build the event list by intersecting the search query IDs with the IDs of events tagged with the selected type
  • Render a select box in the search form when the organisation has configured available event types
  • Persist new event_types field on Organisation to store the comma- separated list of allowed event type names
4eea583

🐛 Remove hidden carousel filter to show all carousels in stats view

ff76afb

🐛 Fix invalid date handling in /daily route
✨ Add graceful fallback to today when date param is malformed

9673433

💄 (carousels): display hidden carousels with reduced opacity instead of hiding them
✨ (carousels): add button indicator column to carousel list view

bb48ff2

🔥 Remove unused image asset (stephen-reid.jpg)


✨ Add "hidden" flag to carousels - Introduce new boolean field :hidden on Carousel model - Add checkbox to carousel build form to toggle visibility - Filter out hidden carousels from all public-facing queries - Update human-readable labels for admin UI

Commits on Aug 21, 2025
6290131

🐛 Fix donation display in orders table Only show donation revenue when both the application fee has been paid to Dandelion and the donation revenue is greater than zero, preventing empty or misleading donation rows from appearing.

91f266b

✨ Add donation-to-Dandelion column to orders table - Display optional "Donation to Dandelion" column when donation_to_dandelion flag is passed - Show formatted donation amount only when application_fee_paid_to_dandelion? is true - Enable column in stats/orders view by passing new local flag

0408001

🔒️ Restrict /geolocate endpoint to admins only
🗑️ Remove unused Substack newsletter views and email template
🗑️ Remove unused token distribution page and views
♻️ Move static legal pages to the bottom of the route list for clarity
♻️ Add before-hook to enforce admin-only access on all /stats routes

4a3e9ff

🐛 Fix missing leading # in theme_color parameter for stylesheet

3139d4d

✨ Add email to previous ticketholder when ticket is resold
📝 Create new template for previous ticketholder resale notification
♻️ Split resale notification into two methods: one for previous ticketholder, one for organiser

6ef7e6b

💄 (events/_questions.erb): style conditional headers based on next question type

a51fa74

✨ Improve search relevance with phrase boosting
♻️ Replace simple text search with compound query
✨ Add phrase match with 1.5× boost for better ranking
💬 Update search hint text to "Fuzzy search"

9d0eacc

✨ (helpers): add relevance scoring to MongoDB text search
♻️ (helpers): refactor search to use score-based filtering
🐛 (account_contribution): fix duplicate nil check for event

5c869e4

🐛 Fix nil handling for organisation theme_color - Remove default '#00B963' fallback in controller - Add fallback to '#00B963' in view when @organisation.theme_color is nil - Prevent nil entries in tickets email list with compact

e46f211

💄 Make email CSS theme-aware and centralise colour handling

  • Move all colour rules from email.css into inline
Commits on Aug 20, 2025
5fc9e4a

💄 (organisation.scss): add missing border-color to active outline-primary button

fabe8e6

💄 (organisation.scss): remove focus box-shadow from buttons and form controls

2b793db

✨ Add configurable suffix to location select options

Introduce a new near_select_suffix field on organisations that lets admins append a custom string (e.g. “, UK”) to every location value in the carousel filter. This avoids hard-coding country names and keeps the dropdown consistent with the organisation’s branding.

2645174

♻️ Refactor location filter from local_group_id to near param

  • Replace local_group_id with near in controller, views and JS
  • Allow near=online to show online events
  • Keep geographic filtering when near is a place name
  • Update carousel buttons and search form accordingly
cbf2d99

🐛 Fix misplaced search button in events search form

Move the submit button out of the carousel-only branch so it is always rendered when the form is shown, regardless of whether carousel buttons are present.