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

Commits on Feb 08, 2026
7efdad1

🎨 (asns.erb): remove hard-coded "AS" prefix from ASN display to rely on data already containing it

86dee83

♻️ (refundable, order, ticket): normalize keyword argument order in refund methods

7e09dab

🌐 Generalise refund emails/templates to mention GoCardless alongside Stripe

a8354c5

🐛 Fix contribution check when explicitly waived

74b5425

🐛 Fix refund action visibility by using refundable? helper

Replace raw session_id checks with the new refundable? concern method in both orders and tickets tables so buttons only appear when an item can actually be refunded.

37dec53

🐛 (webhooks.rb): use safe hash dig to extract payment_request id to prevent nil errors when key is missing

d5febe3

🐛 Switch GoCardless integration from billing-request to payment flow

  • Replace gocardless_billing_request_id with gocardless_payment_request_id and add gocardless_payment_id to both Order and Ticket
  • Listen for payments/confirmed webhook instead of billing_requests/fulfilled
  • Extract reusable Refundable concern so Order and Ticket can refund via Stripe or GoCardless without duplicating logic
  • Update views and helpers to use the new field names
95b09a7

♻️ (stats.rb): reduce ASN stats look-back window from 7 to 3 days to speed up the query

Commits on Feb 07, 2026
fe4fccd

🎨 (stats/asns.erb): reorder table columns to show Baseline before ASN and add Multiplier column

988ba79

♻️ Remove redundant index: true from all belongs_to_without_parent_validation calls

6f863d5

♻️ Extract magic number 7 into days variable for clarity
💄 Add explicit “Count” column and left-align baseline in ASN stats table

6cc7ec2

⚡️ Improve event query performance by excluding heavy fields

Replaced plain Event.find / find_by with scoped variants that skip loading the large embedding (and other heavy) fields unless explicitly needed. This reduces memory usage and speeds up every public event page hit while keeping admin/edit endpoints equally fast.

03f8075

♻️ (events): move without_heavy_fields scope to specific content-type branches

3a4b04e

🐛 Fix secondary sort order inside recommendation cache

b0eaed5

♻️ (account.rb): replace has_signed_in filter with last_active.gt

7bb4f37

🎨 (events/_awesome.erb): show personalised recommendations card when user has tickets
🐛 (account.rb): only consider signed-in accounts as recommendable
🚀 (event.rb): purge orphaned recommendation caches before rebuilding
🔧 (database.rake): add rake tasks to inspect collection sizes and unused indexes

acfa4e0

♻️ Replace explicit field whitelists with without_heavy_fields scope
♻️ Drop redundant .only(:coordinates) to rely on the scope

7f5f025

🐛 Fix nil boolean conversion for unloaded attributes

c2a6e91

⚡️ Add without_heavy_fields scope to speed up event queries

6e63432

🔧 Remove Redis namespace from cache stores