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

Commits on Aug 20, 2025
fd717c8

🐛 Preserve all query parameters when local-group filter changes
♿️ Improve UX by keeping search context after filtering

51155c5

🐛 Fix missing minimal param in local-group filter form

ba6eaf7

🐛 Fix carousel filter when empty array is passed Check that params[:carousel_ids] is not only present but also non-empty before applying the carousel filter.

cf6843f

🐛 Fix featured-events carousel visibility when local_group_id param is present

b54376f

💄 Change empty option label from empty string to "Anywhere" Improve clarity of the location filter by replacing the blank option with an explicit "Anywhere" label, making it clearer to users that selecting this option shows results from all locations.

85e9072

✨ Add "Online" filter for organisation events

Allow users to filter events by "Online" location in addition to physical local groups. The controller now recognises the special value online for the local_group_id parameter and delegates filtering to the existing Event.online scope.

The carousel buttons partial is updated to: - always render the buttons container so the new filter is visible - preserve the local_group_id parameter when switching carousels - include a select box that lists both physical local groups and the new "Online" option

The search form keeps the selected local_group_id (or "online") when toggling between advanced search and carousel views.

fb4692f

🎨 Move search_carousels partial inside conditional block Only render the carousel search UI when the parent block is shown, keeping the layout consistent with other search filters.

1109e5c

🐛 Fix carousel-related form rendering logic

Move hidden carousel_ids fields into the search form so they are always included when @carousel_buttons is true. Remove duplicate hidden-field generation from _search_carousels. Ensure search_local_groups and search_activities partials are only rendered when @carousel_buttons is false, matching intended UI.

1879fb7

🍱 Replace placeholder JPG with PNG for transparency support
🎨 Move placeholder styles from inline to SCSS
🐛 Fix duplicate "btn" class in view-option buttons

b2b4f00

💄 (events_search_form): move search button into carousel area when carousel buttons are shown

cb40975

💄 Add organisation-level background color theming
✨ Introduce new theme_background_color field to Organisation
🎨 Apply background color to minimal layout via inline style

3a8f687

🎨 Hide event-tags and activities filters when carousel mode is active
🐛 Remove redundant carousel check inside _search_event_tags partial

643d073

🎨 Fix indentation and hide event-tags filter when carousel buttons are shown

  • Remove extra indentation in both partials for cleaner markup
  • Add guard clause so the event-tags dropdown is only rendered when carousel buttons are not present, preventing UI overlap
ff10f21

♻️ Extract repeated filter dropdowns into partials

Move event tag, local group, activity and carousel selects into their own partials to reduce duplication and improve readability. Replace inline queries with a memoised @future_and_current_event_ids array so every partial can reuse the same list of event IDs.

21286f6

🐛 Fix members' events checkbox visibility logic Replace monthly_donors check with organisation_tiers check to correctly determine whether to display the "Members' events" filter.

75d2119

♻️ (events_search_form): refactor query logic to avoid N+1 and improve readability
✅ Replace .count > 0 with .exists? for boolean checks
✅ Cache future_and_current_events to reuse the same scope
✅ Remove redundant .order calls already present in scopes

93d67a6

🐛 Fix carousel-only link to preserve minimal param When switching to carousel-only view, the minimal=true parameter was being dropped, causing the full layout to re-appear. Now the minimal flag is retained in the carousel-only URL so the view stays minimal.

870668b

🐛 Fix carousel button order in organisations view

fcff257

🐛 Fix carousel filter disappearing when @carousel_buttons is true
✨ Persist selected carousel IDs as hidden fields when using button UI

5c80053

💄 (organisation.scss): update active/hover state of outline-primary buttons Use theme background and white text for pressed/active state to match design system and improve visual feedback.