v6.6.4
Current
Hotfix: Route Planner — Edit Dropdown
- Fix: 'Edit Existing Route' now shows all upcoming rides, not just ones with saved routes
- Fix: Past rides no longer appear in the dropdown
- Rides with an existing route are marked with ★
v6.6.3
Hotfix: Route Planner
- Fix: Loading a second route after clearing all no longer fails
- Fix: 'No pins' message no longer disappears after switching routes
v6.6.2
Hotfix: Route Planner Load
- Fix: Edit Existing Route now shows all rides with waypoints, not just upcoming ones
- Fix: Rides with no date no longer crash the route planner page
v6.6.1
Route Planner: Edit Existing Routes
- Load an existing ride's route into the Route Planner for editing
- Start points, waypoints and route name all restored on load
- Save buttons change to 'Update Ride' / 'Save to New Ride' when editing
- Updating replaces the existing waypoints directly
v6.6.0
Route Planner
- New: Route Planner for Road Captains (Rides → Route Planner)
- Pick Main and Secondary start points from saved club locations
- Drop waypoint pins on the map — route road-snaps automatically
- Place names filled in automatically via reverse geocoding
- Drag to reorder, undo, clear — live distance and time stats
- Download GPX for sat-navs and GPS devices
- Save to an existing ride or create a new ride pre-filled with start points
v6.5.3
Bug Fixes + Photo Upload UX
- Fix: Feedback form 500 error on submission (WhatsApp rate limit timeout)
- Fix: Analytics totals now include Events, not just Rides
- Fix: Completed Events count was capped at 20 — now accurate
- Upload progress overlay shown while photos are uploading
- Approval notice after upload — users told photos need admin approval before going live
v6.5.2
Daily Digest Fix
- Fix: Apologies were labelled as 'Cancelled' in daily digest emails
- Fix: Multi-chapter admins now receive one consolidated digest instead of a separate email per chapter
- Fix: Signups and apologies were missing from single-chapter digest emails
- Fix: App updates section now appears in both single and multi-chapter digests
v6.5.1
Edit Signup + UX Improvements
- Action buttons moved to first column on all admin tables
- New: Edit Signup — update pillion, guest, bike, dietary, contact without removing rider
- Fix: Cancellation page 500 error for phone-number cancellation flow
v6.5.0
Role & Permission Improvements
- New 'Ride Creator' role template for VPs, Secretaries and ride planners
- Waypoints now correctly require rides.edit permission
- Start points now correctly require chapter.manage_start_points permission
- Announcement summary only sent to the admin who triggered it
- Linking a ride automatically links the other ride back
v6.4.0
Nightly Cron + Auto-Complete + Deploy Digest
- Rides/events auto-complete at midnight after their date
- Badge awards fire automatically on auto-completion
- Single nightly cron replaces separate digest triggers
- Daily/weekly digest emails include recent app updates
- Attendance page shows completed rides from last 7 days
- Banner on completed rides confirms attendance still editable
v6.3.1
Hotfix: Multiple Rides/Events on Same Day
- Same-chapter date clash is now a warning, not a block
- Multiple rides or events on the same day now allowed
- Inline date checker shows amber warning instead of red error
v6.3.0
Analytics: Rides vs Events + Feedback Fix
- Ride stats now exclude events (attendance, leaderboard, rides per month)
- Events shown as a separate count on all analytics views
- Chapter analytics shows completed events table with attendance
- Region/All-Regions comparison tables include Events column
- Fix: feedback form no longer crashes if WhatsApp notification fails
v6.2.0
Apologies System + Attendance Improvements
- Riders can register apologies on any ride page
- Cancelling a signup automatically registers apologies
- Last-minute apology button on attendance page (reversible)
- Apologies shown separately from no-shows in analytics
- Attendance start dropdown now includes waypoints
- Rider profiles show apology count separately from no-shows
v6.1.0
GDPR Compliance + Cancellation Link Fix
- Lodge numbers removed from public sign-up lists
- Consent notice and checkbox for new riders on sign-up form
- Returning riders with consent on file skip the checkbox
- Admin can hide individual sign-ups from the public list
- New Privacy Policy page at /privacy with footer link
- Privacy contact email field in Site Settings
- Fix: requesting cancellation twice no longer breaks the first link
v6.0.0
Email System Overhaul + Chapter Admin Permissions
- Daily & weekly email digests with chapter activity
- Digest management page with manual trigger
- Deploy notifications via email with preview/edit
- Send to Super Admins, Chapter Admins, or Members
- Message Logs: WhatsApp and Email tabs combined
- Chapter admins can edit their own chapter settings
- President role protected - super admin only
- App feedback auto-creates GitHub issues
- Admin list shows phone and email columns
v5.6.0
Notification Grid + Ride Attachments
- Super admin notification grid for managing all admin preferences
- Drill-down by region → chapter → admin
- Attach files (PDF, CSV, images) and links to rides
- Public/Admin-only visibility toggle per attachment
- Paperclip icon on rides list shows attachment count
v5.5.0
Admin Enhancements
- Change rider's start point from ride view (dropdown)
- Change start point on attendance page too
- Call riders directly from attendance page (green phone button)
v5.4.2
Bug Fixes
- Manual deploy notification button in WhatsApp logs
- Linked ride PDFs now show all riders from both chapters
- Google Maps route includes secondary start point
- Google Maps uses destination postcode for accuracy
- Fixed weather showing for 'None' in Italy bug
v5.4.1
Duplicate Ride Fix
- Duplicating a ride now copies all waypoints
- Destination postcode and coordinates now copied
v5.4.0
GPX Import for Ride Routes
- Import waypoints from GPX files directly into rides
- Preview on map and assign point roles before import
- Inline waypoint editing with auto-save
- Join point checkbox, defaults to disabled
v5.3.7
GPX & Route Fixes
- Fixed start point name matching for GPX generation
- Secondary start point now shows in Route list
- Both start points included in GPX and map route
- Route calculation includes both starts before waypoints
v5.3.5
Destination & Bug Fixes
- Fixed: {name} and {road_name} return different values
- Destination shown on rides list and PDFs
- Destination included in GPX and route maps
- PDF download button restored on chapter page
v5.3.3
WhatsApp Log Attribution
- WhatsApp logs now show which admin sent each message
- Announcements tracked to the admin who initiated them
- System messages still show as 'System'
v5.3.2
Secondary Start Point Fix
- Secondary start point now included in GPX downloads
- Secondary start point now visible on route maps
- Route line connects through secondary start to waypoints
v5.3.1
Bug Fixes & UX Improvements
- Fixed duplicate signups showing on linked rides
- Added duplicate prevention when same rider signs up twice
- Signup timestamps now visible on admin ride view
- Clickable rider names link to profile pages
- Copy Link button on ride pages for easy sharing
v5.3.0
App Feedback
- New feedback form for bugs, features, and general feedback
- Feedback link in footer next to User Guide
- Super admin panel for managing feedback
- Notes history with timestamps and user attribution
- WhatsApp notifications for new feedback
- Shop tab only visible when chapter has active order window
v5.2.1
Deploy Notification Fix
- Fixed deploy notifications not reaching all admins
v5.2.0
Hierarchical Analytics
- New drill-down analytics: All Regions > Region > Chapter > Ride
- Region admin access for analytics visibility
- Dynamic leaderboards at every level
- CSV exports scoped to current view
- Clickable rows to navigate down the hierarchy
- Breadcrumb navigation to go back up
v5.1.5
Deployment Notification Test
- Testing deployment notifications after quiet hours fix
v5.1.4
PWA Navigation
- Floating home button appears when app is installed on phone
- Always takes you directly to home/dashboard
- Fixes navigation issues when viewing PDFs in PWA mode
v5.1.3
Hotfix: Admin Role Display
- Admin list shows actual assigned roles instead of generic 'Chapter Admin'
- Legacy admins (pre-RBAC) show 'Legacy Access' badge
- Admins with no roles show 'No Access' badge
v5.1.2
Admin List Filtering
- Instant search-as-you-type on all major admin lists
- Filter Rides by title, destination, and status
- Filter Members by name, bike, and phone
- Filter Chapters by name, slug, and region
- Filter Admins by username, role, and status
- Filter Start Points by name, postcode, and chapter
v5.1.1
Personal Notification Preferences
- New 'My Notifications' page for personal preferences
- Each admin chooses which notifications they receive
- Super admins can disable deployment alerts, signups, etc.
- Chapter admins see only their role-relevant notifications
- Updated Admin & Rider Manuals (Revision 2)
v5.1.0
Self-Service Cancellations & Notification Routing
- Riders can cancel signups via WhatsApp verification link
- New 'Notifications' settings page for routing config
- Control which roles receive signup, cancellation, and order alerts
- Permission checks enforced on all admin routes
- Friendly 403 error page explains missing permissions
v5.0.0
Role-Based Access Control
- 5 default role templates: Chapter Admin, Road Captain, Shop Manager, Social Media Manager, Events Coordinator
- Assign multiple roles per admin per chapter
- 28 granular permissions across all features
- Create custom roles with specific permissions
- New 'Roles' management in Settings
- Backward compatible with existing admins
v4.8.0
Ad-hoc Messaging
- New 'Send Message' feature in Settings
- Personalization placeholders: {name}, {road_name}, {chapter}
- Recipients: Chapter Members, Chapter Admins, or All Admins
- Respects quiet hours and opt-out preferences
- Opt-out status visible on Members list and profiles
- Minor bug fixes
v4.7.6
Hotfix: Quiet Hours
- Fixed race condition causing duplicate message sends
- Queue processing now uses locking to prevent duplicates
v4.7.5
Quiet Hours Fix
- Fixed timezone bug causing messages to send during quiet hours
- Notifications now correctly queue until quiet hours end
v4.7.4
User Guides & Stats Fix
- Downloadable Admin Guide and Rider Guide
- Chapter Attendance now includes walk-ups
- Renamed Attendance Rate to Signup Reliability
v4.7.3
Merge Duplicate Members
- Merge duplicate member profiles
- Auto-detects duplicates by matching phone numbers
- Transfers all signups, orders and photo tags
v4.7.2
New Logo
- Updated app icon and favicon with new GASKET logo
v4.7.1
Analytics Improvements
- Fixed attendance rate to only count completed rides
- Added chapter participation stat to rider profiles
- Per-ride analytics drill-down
- Clickable walkup/no-show stats with details
- CSV exports for analytics data
- Chapter comparisons (super admin)
v4.7.0
Gallery Improvements
- Unified photo approvals page (ride + gallery photos)
- Add ride photos to gallery without duplication
- Gallery section in sidebar for all admins
- Pending photo count badge in nav
v4.6.2
Hotfix
- Fix photo upload opening camera instead of file picker
v4.6.1
Bug Fixes
- Walk-up form now autocompletes for existing members
- Photo uploads: auto-resize large images (under 2MB)
- Photo uploads: take photo directly from camera (mobile)
- Better upload error messages when photos fail
v4.6.0
Notification Quiet Hours
- Configure quiet hours per notification type
- Deploy, badge, signup alerts respect quiet hours
- Queue notifications for later or skip entirely
- View and manage queued notifications
- Settings > Quiet Hours (super admin)
v4.5.0
Admin UX Improvements
- Region icons (emoji picker or custom image upload)
- Tree pickers for linked rides (Region → Chapter → Rides)
- Tree pickers for start points (Chapter → Start Points)
- Create new start points inline without page reload
- Search and filter in all pickers
v4.4.0
Regions
- Chapters grouped into regions
- Homepage shows regions first
- Single-chapter regions skip to rides
- Admin can manage regions
v4.3.0
Chapter Start Points
- Start points linked to chapters
- Ride forms filter by chapter
- Chapter admins can create start points
- Fix duplicate ride idea submissions
- Back button for iOS PWA users
v4.2.0
Photo Gallery & Admin Templates
- Multi-photo upload with drag & drop
- Upload progress bar and image preview
- Photo count icon on rides list
- Admin setup/reset messages now editable
- Deploy notifications sent to all admins
v4.1.1
Route Map Display
- Interactive route map with Leaflet/OpenStreetMap
- Destination postcode lookup
- Fix waypoint join selection in signup
- Start/waypoint/destination markers on map
v4.1.0
Route Waypoints & GPX
- Add waypoints with postcodes to rides
- View full route on Google Maps
- Download GPX files for GPS devices
- Riders can join mid-route at waypoints
v4.0.0
Progressive Web App
- Install as app on phone/tablet
- Offline support with service worker
- Faster loading with smart caching
- Add to home screen
v3.7.3
Release History Popup
- Clickable version number in footer/sidebar
- Full changelog from v1.0.0 to current
v3.7.2
Bot Protection
- Honeypot field on public forms
- Time-based check rejects instant submissions
- Zero friction for real users
v3.7.0
WhatsApp Message Log
- Message log for super admins
- Filter by chapter, type, or status
- View full message content
v3.6.0
Member Badges
- Badge system with configurable thresholds
- First Ride, Milestones, Reliable, Volunteer badges
- WhatsApp announcements when earned
v3.5.0
Mobile Admin
- Responsive admin tables
- Mobile-friendly sidebar
- Touch-optimised controls
v3.4.0
Walk-up Attendance
- Add riders at event who didn't pre-sign up
- Rider profile stats (attendance rate, no-shows)
- Glove-friendly admin interface
v3.3.0
Photo Gallery
- Upload ride photos (R2 storage)
- Admin moderation before going public
- Lightbox viewer with keyboard nav
v3.2.0
Weather Forecasts
- Weather on ride detail page
- Forecasts for both start points
- Up to 16 days ahead
v3.1.0
Shop Search
- Product search and category filters
- Real-time client-side filtering
v3.0.0
Merch Shop
- Product catalogue with images
- Order windows and checkout
- Order tracking and WhatsApp notifications
v2.1.0
Guest Riders & Events
- Guest rider checkbox on signups
- Multi-day events with calendar view
v2.0.0
Chapter Officers
- Flexible officer roles per chapter
- Visibility control for public display
v1.8.0
Attendance Register
- Mobile-friendly attendance page
- Signup confirmation banner
- Double-submit prevention
v1.7.0
Chapter Admin Roles
- Super admin and chapter admin roles
- Chapter-specific permissions
v1.6.0
Member Directory
- Member list with search and filter
- Ride ideas management
- Opt-out system for notifications
v1.5.0
Email Integration
- Gmail API and SendGrid support
- Admin creation via WhatsApp
v1.4.0
WhatsApp Notifications
- Signup confirmations via WhatsApp
- Cancellation notifications
- Admin notifications
v1.3.0
Rider Profiles
- Persistent rider profiles
- Auto-populate signup forms
- Rider leaderboard
v1.2.0
PDF Generation
- Chapter overview PDFs
- Individual ride PDFs
- Printable signup lists
v1.1.0
Multi-Chapter Support
- Durham and Northumbria chapters
- Chapter-specific rides
v1.0.0
Initial Release
- Ride management
- Public signup forms
- Admin authentication