Change Log
Notable updates and improvements to the app.
Q1 2026 — March
Invite Code & Spam Registration Protection
New members can no longer register without a valid invite code, preventing spam and rogue sign-ups. Invite codes are set per club by an admin and checked at sign-up (case-insensitive). A name validation rule also blocks entries that contain URLs or unsupported special characters.
Details:
- Each club has a single invite key, set by an admin on the club edit page.
- New members are automatically added to the club whose invite key they used at sign-up.
- Invite key is visible to all existing members of that club via the new "Invite" page in the nav.
- The "Invite" page shows step-by-step instructions alongside the current code — easy to share with a friend.
- Name field on sign-up restricted to letters, spaces, apostrophes and hyphens to block spam bots.
- Sign-up form now preserves all entered values on validation error (name, email, invite code) so users don't have to retype everything.
- Validation errors displayed with a red border to make them easy to spot.
Admin: Delete User
Admins can now delete user accounts directly from the Users page for housekeeping purposes. Deletion is blocked if the user has any scores recorded, preventing accidental data loss.
Sign-up & Profile UX Improvements
- Sign-up form now includes correct
autocompleteattributes so password managers correctly save email and password together. - Join a Club page restyled to match the rest of the app.
Score Display — Mobile Redesign
All score display tables (weekly scores, your scores, eclectic, top 10) have been redesigned for small screens. 9-hole scores now fit on a single mobile screen without horizontal scrolling in most cases.
Changes:
- Equal-width data columns with a responsive player-name column (narrower on mobile, wider on tablet+).
- Stableford points displayed below the score badge in the same cell, inheriting the cell colour.
- Win-deduction adjusted score shown below the raw points total where applicable.
- Scr and Pts labels moved into the header row; course par shown in the vacated Scr cell.
- Hole number header stacks par and stroke index on a second line to save space.
- All score page cards extend to 5 px from the viewport edge on mobile.
- Card border-radius reduced site-wide to 3 px via a global CSS variable (
--tt-card-radius). - Nav bar extended edge-to-edge to match card width.
Q1 2026 — January / February
PWA
Scores can now be entered in off-line mode if there is no network connection available on the course. After scores have been submitted they will be stored in the browser's local storage and then automatically submitted to the server when a network connection is re-established.
Scoring, multiple changes to disallow duplicate entries:
- Client side validation disables score entry button after first click (also used within PWA to cache scores)
- Server side checks to see if use has already entered a score to prevent duplicate score entries for the same user and week
- Improved error handling with user-friendly flash messages when duplicate entries are attempted
Q4 2025 — November
Golf Course Import from UK Golf Data API
Course Search & Import
Added integration with the Golf Data API to import UK golf courses directly into the app. Admins can now search for any UK golf club and import complete course data including all hole pars and stroke indices.
Import Features:
- Search UK golf clubs by name with pagination (20 results per page, up to 200 clubs)
- View club location on Google Maps before importing
- Preview all available courses and tee options (White, Yellow, Red, etc.) for each club
- Import options: Full 18 holes, Front 9 only, or Back 9 only
- Automatic duplicate detection to prevent re-importing existing courses
- Complete hole data imported: Par values (h1–h18) and Stroke Indices (si1–si18)
- Course rating (SSS) and slope rating imported automatically
Course Management Enhancements:
- New "Import UK Golf Courses" link on the Courses admin page
- Delete course functionality with safety checks (prevents deletion if course has score data or competitions)
- Improved course name display for 9-hole courses (e.g., "Championship Course — Front 9")
Competition Scores Navigation & Sorting
Week Navigation
Added Previous/Next navigation buttons to the competition scores page, allowing users to easily navigate between different weeks of results.
Improved Sorting:
- User column now sorts by surname (part of name after first space)
- Handicap column sorts by entered handicap instead of calculated playing handicap
- Score column sorts by total shots
- Enhanced dropdown readability with increased font size (16px)
Technical Improvements
- Added Golf Data API client library for external course data integration
- Implemented Blueprint-based modular architecture for import functionality
- Added CSRF token protection to all import forms
- Enhanced error handling with user-friendly flash messages
- Created reusable admin routes for course import workflow
Q2 2024
Addition of sub competitions for Admins to track paid members (currently Top 10 and Eclectic) and the ability to add users into these sub competitions.
Front side filtering of users in the sub competitions above.
Eclectic quarters now only load if there is data available for that quarter.
Q1 2024
Lots of minor tweaks to CSS and UI to make for a better mobile experience.
Q3 2023
Editing Scores
Users can now edit their own scores up to 15 minutes after they have been added. This is available from the Competitions page. Once the score is being edited it needs to then be saved within 5 minutes.
Eclectic
The Eclectic is now split into 4 Quarters (Jan–Mar, Apr–Jun, Jul–Sep, Oct–Dec) and a Whole Year.