> ## Documentation Index
> Fetch the complete documentation index at: https://docs.uplifter-curling.com/llms.txt
> Use this file to discover all available pages before exploring further.

# What's new

> A dated list of user-visible changes to Uplifter Curling, newest first.

<Note>
  **Must know**

  * One bullet per change a club can see or feel. Internal refactors, tests and documentation are left out.
  * The test club site is redeployed to the latest build; a change listed here is on it unless the entry says otherwise.
</Note>

## 2026-10-02 (fourth batch)

**Language, links and standings**

* **Club questions in French.** Your club's own questions and profile fields show their French title, help text and answer choices to members using the site in French — in the signup wizard, at checkout and on their profile — wherever the club wrote a French version (CCM's *English;;;Français* wording comes across). See [How do I change the language?](/members/getting-started/how-do-i-change-the-language).
* **Old Community Builder links.** CCM's Community Builder addresses now open the matching page: the member list, sign-up, the profile, sign-in, and — for staff — the members list from CCM's report links. See [Do my old Joomla links still work?](/ccm/classic-view/do-joomla-links-still-work).
* **0 or blank in empty standings cells.** A new Club Settings switch decides what a standings cell with nothing recorded prints. Clubs moved from older CCM versions start with 0, as CCM showed it. See [Where are my club settings?](/club/get-set-up/where-are-my-club-settings).

## 2026-10-02 (third batch)

**Waivers**

* **Sign by typed name or a tick.** A waiver can ask for the signer's full name (CCM's way), an "I have read and agree" tick, an exact phrase, or a drawn signature — in the signup wizard (classic and new) and at checkout. A parent or guardian signing for a minor sees guardian wording. See [How do I agree to the club's releases?](/members/registering/how-do-i-agree-to-the-clubs-releases).
* **The text as agreed.** Editing a waiver publishes a new version; every signing keeps the version it agreed to, and staff and members can open it. See [What happens when I edit a waiver that has signatures?](/club/memberships-and-members/what-happens-when-i-edit-a-waiver-that-has-signatures).
* **Who signed.** Members → Waivers → the Signed count opens a signer list (filters, CSV); there is a Waiver Signatures report, and the member extracts carry CCM's Liability Waiver column again. See [How do I see who has signed a waiver?](/club/memberships-and-members/how-do-i-see-who-has-signed-a-waiver).
* **Fixed:** a waiver the club resets each season showed as signed forever; it now asks again. Signing a waiver at checkout failed; it now works.
* **Migrating CCM clubs:** waivers are created from the CCM release articles, and each member's typed CCM name comes across as history only — members sign once in Uplifter. See [Why do members have to sign waivers again after the move?](/ccm/deliberate-differences/waivers-are-real).

## 2026-10-02 (second batch)

**Association member files (GNCC and USCA)**

* **The GNCC Format Report and USCA Format Report now run.** They are under **Reports → Club reports → Data Extracts**, and in the classic view's Reports list. Each downloads CCM's exact file: the same columns in the same order, the same sheet name (**GNCC Member Report**, **USCA Member Report**) and the same file name with today's date. Excel is the main download; CSV is offered too. The files list current members by last name. See [How do I export the GNCC and USCA member files?](/club/reports/how-do-i-export-the-gncc-and-usca-member-files).
* **Blank columns stay blank, as in CCM.** This includes **USCA - ID**: a member's association number goes only in the GNCC file's **GNCC - ID**, so a GNCC number is never sent to USA Curling.
* **Your club number and region.** A new **Association exports** card under **Settings → Club Settings** holds the **GNCC club number** and **USCA region name**, which CCM had built in as 26 and GNCC. If one is not set, its column is blank and the report says where to set it. See [Where are my club settings?](/club/get-set-up/where-are-my-club-settings).
* **Admins and finance only.** The two files need *View Financials*, so the Curling Administrator and the Treasurer can run them and other staff roles cannot. The member extracts are unchanged. See [Who can see reports?](/club/reports/who-can-see-reports).

**Private resources**

* **A resource's Access now hides its bookings from the public.** Link a venue to a resource and the resource's **Access** decides who sees it. A private venue's bookings, closures, Registration-page card, venue page and times are hidden from people who are not signed in and from accounts outside the club, and checkout refuses it. Club members, guardians and staff see and book it as before. TV boards still show every booking. See [Who can see a venue's bookings?](/club/bookings-and-todays-ice/who-can-see-a-venues-bookings).
* **Show sheets publicly covers the rest.** The switch under **Settings → Club Settings → Ice sheets** now reads **Show sheets publicly, unless a resource sets its own Access**. It decides for venues with no resource, or with a resource left on **Club setting**. Turned off, it hides all of those venues from the public. See [How do I set up ice sheets?](/club/leagues-and-draws/how-do-i-set-up-ice-sheets).
* **A Resource picker on the venue form.** Under **Registration Mode**, in the venue stepper and its configure sheet, pick the venue's resource. A line says whether everyone or only club members can see the venue, and a warning appears when an **Open Registration** venue is private. See [How do I create a bookable venue?](/club/bookings-and-todays-ice/how-do-i-create-a-bookable-venue).
* **Members-only booking types on the calendar.** Reservations filed under a **Members only** booking type are now hidden on the public calendar from accounts outside the club too, not just from signed-out visitors. See [What are booking types?](/club/bookings-and-todays-ice/what-are-booking-types).
* **Migration.** Each imported venue is linked to its CCM resource, so a resource CCM hid from guests stays hidden. See [What does the import carry over?](/ccm/your-migration/what-the-import-brings).

**Club profile fields**

* **Registration Form builder:** club fields of type **Email**, **Web address** and **Multi-select** show those type names on **Your information**. See [How do I choose the fields on Step 1?](/club/registration-and-signup/how-do-i-choose-the-fields-on-step-1).
* **French help text.** A club field's form has **Help text (French)** alongside **Help text**. See [How do I add my own profile fields?](/club/memberships-and-members/how-do-i-add-my-own-profile-fields).
* **Edit only for those who can save.** On a member's **Custom Info** tab, only staff with *Edit Members* see **Edit** on the **Profile fields** card. See [What is on a member profile?](/club/memberships-and-members/what-is-on-a-member-profile).
* The **Profile Fields** page banner now explains that the fields every member has are set there, your club's own fields are under **Club fields**, and the Registration Form builder decides which fields signup asks for.

## 2026-10-02

**Contacts and billing addresses belong to each club**

* **A club sees only what was entered there.** The **Contacts** and **Billing Addresses** an account saves are now kept for the club where they were saved. Staff see only their own club's on a guardian's **Contacts** tab, and another club's never show. This also applies to superadmins working in a club. See [What happens to my details if I belong to two clubs?](/members/my-information/what-happens-to-my-details-if-i-belong-to-two-clubs).
* **A second club starts empty.** An account that belongs to two clubs enters its contacts and addresses again at the second one; nothing is copied across. Checkout offers only the contacts and addresses saved at that club and saves new ones there. **My Information** shows *Contacts and billing addresses you save here are kept for this club only. Other clubs you belong to don't see them.*
* **Existing details went to the club joined first.** Contacts and addresses saved before this change now belong to the club the account joined first.
* **Receipts and accounting use the club's own address.** **Billed to** on a receipt is the address kept at the club that issued the invoice. QuickBooks receives the address saved at your club. See [How do I get a receipt?](/members/payments-and-receipts/how-do-i-get-a-receipt).
* **Medical information still follows the member.** The medical record, including the emergency contact in **Emergency Info**, is still one record shared across every club.

**Club profile fields (CCM's Community Builder fields)**

* **Settings → Profile Fields → Club fields.** Create, edit, delete and reorder your club's own member-profile fields. The types are **Text**, **Text area**, **Drop-down**, **Multi-select**, **Yes / No**, **Date**, **Email**, **Web address** and **Number**. Each field has a **Tab**, a French title, and **Required**, **Profile**, **Registration**, **Edit**, **Searchable** and **Published** switches. Available when your club has the **Custom Information** feature. See [How do I add my own profile fields?](/club/memberships-and-members/how-do-i-add-my-own-profile-fields).
* **Classic view: Community Builder Field Management.** The same page in the classic view is CB's **Field Management** list, with its eleven columns, click-to-toggle flags and **New / Edit / Publish / Unpublish / Delete**. See [Where did Community Builder Field Management go?](/ccm/what-changes/where-did-cb-field-management-go).
* **Members see and edit club fields on My Information,** in the section the club chose. A field with **Edit** off is read-only and says **Managed by the club**. See [How do I edit my personal and contact information?](/members/my-information/how-do-i-edit-my-personal-and-contact-information).
* **Staff see Profile fields and Checkout answers.** A member's **Custom Info** tab now has a **Profile fields** card, where staff can fill in blanks too, above the **Checkout answers**. **Members → Questions** lists only checkout questions. See [What is on a member profile?](/club/memberships-and-members/what-is-on-a-member-profile).
* **Signup can ask a club field.** Turning on **Registration** adds the field to the wizard's **Your information** step. Email, web-address and multi-select answers work there too. See [How do I choose the fields on Step 1?](/club/registration-and-signup/how-do-i-choose-the-fields-on-step-1).
* **Searchable fields in Member Search.** A field with **Searchable** on becomes a filter and a column in the member directory, when the directory is on. See [What is Member Search?](/club/spares-and-free-agents/what-is-member-search).
* **Member extracts.** The four member extracts add one column per published club field. See [What are club reports?](/club/reports/what-are-club-reports).

**Migration**

* **Community Builder fields come across as club fields.** Each comes with its tab, its real type, its Required, Profile, Edit, Searchable and Published flags, and its French title. The import switches on **Custom Information** for a club whose CB has fields of its own. See [What does the import carry over?](/ccm/your-migration/what-the-import-brings).
* **Association member number.** CB's `cb_gnccid` (GNCC) or `cb_uscaid` (USCA) value becomes the member's **Federation Membership** number, under USA Curling. The plan warns about a club that has both columns and about numbers in an unexpected format.

## 2026-10-01 (third batch)

**Menus and support**

* **League Portal in the menu under your name.** Anyone who runs a league (a named convenor, a **Curling League Admin**, or an administrator who manages every league) now finds **League Portal** in the menu at the bottom of the left-hand sidebar. See [How do I open the League Portal?](/convenors/league-portal/how-do-i-open-the-league-portal).
* **Admin shows for every staff role.** The same menu's **Admin** link now appears for anyone with a club-wide access level, so a Treasurer or Communications officer can get back to the dashboard from the Members Portal. Before, only full administrators saw it. See [What is the club dashboard?](/club/get-set-up/what-is-the-club-dashboard).
* **The League Portal is for the people who run leagues.** It now opens only for convenors, **Curling League Admin** holders and administrators: the same people who see its menu item. A Treasurer or Communications officer who goes to `/league` lands on the dashboard, where they still see every league. See [What is the League Portal?](/club/get-set-up/what-is-the-league-portal).
* **Uplifter support can preview your club as a role.** To help troubleshoot, support can see the club exactly as a given role does. An amber **Previewing as … · Exit preview** pill shows while it is on, it ends after 2 hours, and every preview is logged. Club staff cannot start one. See [What are access levels?](/club/get-set-up/what-are-access-levels).

**Emails**

* **Receipt emails say how long the link works.** The default **Order submitted** and **Order paid** emails now say the link works for 90 days and to sign in after that, instead of promising it works at any time. A template your club customized keeps its own wording. See [How do I customize transactional emails?](/club/communications/how-do-i-customize-transactional-emails).

## 2026-10-01 (second batch)

**Receipts and access**

* **Receipt links carry a private code that runs out.** The link in an order email works for 90 days; the receipt you land on after checkout, and **View receipt** in the Members Portal and on the dashboard's invoice list, work for 6 hours. Signed out with a bare or expired link, you see **This receipt link has expired or isn't yours** and a **Sign in** button that brings you back to the receipt. Signed in, the payer, a guardian of the curler and the club's finance staff can always open it. Receipt links in emails sent before this change no longer open for a signed-out visitor; signing in works. See [Why does my receipt link say expired?](/members/payments-and-receipts/why-does-my-receipt-link-say-expired).
* **Only Uplifter adds or adjusts broadcast credits.** Club administrators still see the balance and activity on **Communication → Broadcast Credits**, but no **Add credits** button. See [What are broadcast credits?](/club/communications/what-are-broadcast-credits).
* **Some staff jobs now check for the right permission.** Marking a store order fulfilled or cancelled needs *Edit Financials* or *Financial Admin*. QuickBooks/Xero can be viewed by finance staff (a Treasurer) but connected, re-mapped or synced only with *Financial Admin* or *Edit Settings*. Only *Edit Settings* (the Curling Administrator) manages the club's Uplifter payment card. Listing discount codes, seeing draft announcements and draft policies, and a few other screens follow the permission of the page they belong to. See [What are access levels?](/club/get-set-up/what-are-access-levels).

**Skill Levels**

* **Skill Levels is a CCM feature.** It is on for clubs coming from CCM: the import switches it on, and **Apply CCM classic profile** on the Features page now switches it on too. It stays in the classic sidebar. See [How do I set up skill levels?](/club/memberships-and-members/how-do-i-set-up-skill-levels).
* **A level that is in use can't be deleted.** If a league, membership or booking type requires the level, the delete is refused and the message names what requires it. Before, the requirement was silently removed with the level.

**Fixes**

* Switching between the classic and new view keeps the tab you are on (for example a league's **Draws** tab).
* The **Events Portal** link opens the events of the club you clicked it from, even if you were last working in another club, and says so if you have no access there.
* The coach portal's and Point of Sale's **Admin Dashboard** links land on the admin dashboard.
* Back-button labels are translated in French.

**Clean-up**

* More skating leftovers are gone: **Financials → Fees → Assign** no longer offers **Competition** (old competition assignments show as **Retired item**); new clubs no longer get the GL code **4300 Competition Revenue**; certifications have no **Competitions** scope; custom questions can no longer target competitions; the invoice item picker has no Competitions group; the storage page has no Competition group; and the unused Bulk Upload page was removed.

## 2026-10-01

**Menus and clean-up**

* **Each role's menu shows only what it can open.** The admin sidebar and the ⌘K palette now hide pages your access level cannot use, instead of listing the whole administrator menu. A Treasurer sees money and reports but no Website or Settings; Communications sees Communication, Website and Club reports but no Financials; a league convenor's admin sidebar holds only **Dashboard**, since their menu is the League Portal. The **Events Portal** and **Point of Sale** links follow the same rule. See [What is the club dashboard?](/club/get-set-up/what-is-the-club-dashboard).
* **Leftover features from the skating product are gone**: competitions (the dashboard section, the club-site page and menu link, the member-profile tab and the reports tab), the Training section with its skills, evaluations and achievements (including the **Evaluations** tab on every league and the **Evaluation** step of the league wizard), the **Progression** report, and the evaluation and skill notification triggers.
* **Skill Levels moved to Members → Skill Levels** (available when a superadmin enables **Skill Levels** for your club). The dashboard's **Getting Started** item now reads **Set up skill levels**. See [How do I set up skill levels?](/club/memberships-and-members/how-do-i-set-up-skill-levels).
* The dashboard's **Competitions** tile is now **Bonspiels**: bonspiels starting this season, linked to the bonspiel list.
* On the Dashboards tab, the **Revenue (YTD)** tile's season amount now uses your club's own current season.

**Signup**

* **The wizard recognises a curler who is already in a league.** It reads **ALREADY REGISTERED** and cannot be picked again, in the wizard and at the proxy desk, and checkout refuses a second registration in the same league (before, it charged the league again). A booking made at Confirm and not yet paid does not count against the curler, and a league sold by session can still be entered for another session.
* **Full leagues with a waitlist can be joined from the wizard.** A full league with an automatic waitlist that has room reads **WAITLIST** and can be ticked. The line costs nothing at checkout, the curler is added to the waitlist, and the league price is charged when a spot opens. A curler already queued sees **ON THE WAITLIST**. Imported CCM leagues run no waitlist and still read **LIMIT REACHED**, as does every full league at the proxy desk. See [How do I join a waitlist?](/members/registering/how-do-i-join-a-waitlist).

**League desk**

* The league's **Registrations** tab and the convenor's **Who's registered** list show each status in words (**Active**, **Booked — awaiting payment**, **Waitlisted** …) instead of system codes.
* **Back buttons go where they say.** The Events Portal's **Back to Dashboard** returns to the club dashboard (it used to show *Event Not Found*), and opening the Events Portal while signed out sends you to sign in instead of looping. On the dashboard, the back arrow on a league returns to **Leagues** (not the full Programs list), on a league's edit screen to that league, on a booking's edit screen to that booking, and on an invoice, incident or calendar session to its list, even when the page was opened from a bookmark. On the club site, the booking pages' **Back** buttons work when the page is opened directly.

**Migration**

* **Imported ice bookings land at the right hour.** CCM's facility-calendar times are now read as UTC and converted to the club's time zone, so bookings no longer arrive four to eight hours late and keep their local time across daylight-saving changes. CCM's calendar copies of league games are no longer imported, so league nights are not booked twice. See [What the import brings](/ccm/your-migration/what-the-import-brings).

## 2026-09-28 — CCM parity

A batch of changes that close gaps with CCM. Everything below works in the new admin look **and** the classic view unless it says otherwise.

**Signup**

* **The wizard's league list works like CCM's.** A full league is listed as **FILLED**, and a capped league at its limit as **LIMIT REACHED**; neither can be ticked. A league the curler cannot enter is greyed out with the reason before it is picked — the wrong entry type (*Team entries only*), gender, age on the club's age date, skill level, or a required membership (one picked earlier in the wizard counts). The wizard offers only the entry doors some league takes, and checkout applies the same rules. At **Proxy Registration**, a full league, the entry type and gender stop the desk too; age and skill level are shown but can be booked past.
* **Phone numbers are checked.** A phone typed for a new curler must have ten digits and is saved as ###-###-####; phones already on file, including imported ones, are not re-checked.
* A club with no custom questions no longer gets an empty **Additional questions** page.
* **Book at Confirm, pay later** (CCM's commit-before-payment). A new club setting, **Settings → Club Settings → Book registrations at Confirm**, is off by default; the CCM import turns it on with 7 days. With it on, the wizard's **Confirm and continue to payment** books the registration with one unpaid invoice and holds the seat, under CCM's warning *…otherwise your entry will be deleted*. Checkout shows the invoice number and the release date, and pays that same invoice by card or with **Pay at the club or by mail**. An unpaid booking is released automatically after **Release unpaid bookings after (days)**. **UnConfirmed League Signups** lists open bookings as **Booked — awaiting payment** with a **Released If Unpaid** date, and **UnPaid Members** lists booked memberships. No email is sent when a booking is released, and club credit is not applied to a booking at checkout. See [How do I let members book at Confirm and pay later?](/club/registration-and-signup/how-do-i-let-members-book-at-confirm-and-pay-later).
* The checkout **Order Summary** is now priced by the server, the same way as Confirm, so fees, prize fees, priced options and the convenience fee show before the member pays.
* **Imported leagues open at cutover.** A league CCM listed on signup, and had not marked full, arrives open for registration; registration therefore goes live when the domain moves.

**Membership types**

* **Show On Sign-up and Order are back**, in the classic list and form and under **Manage → Details** in the new look (the create wizard has the switch too). The wizard lists only types on sign-up, in the club's order, and hidden types read **Hidden from sign-up**. Descriptions use the rich-text editor and show formatted in the wizard. The import carries CCM's settings for both.
* Old admin bookmarks for Community Builder fields, the signup form builder and the waiver manager now open **Profile fields**, the **Registration form** builder and **Waivers**.

**Volunteers**

* **Volunteers → Listing** in the new look (CCM's Volunteer Listing): every interest and sign-up with the member's home, work and cell phones. **Add volunteer** puts any member on a role or one of its shifts, and **Export to Excel** downloads what is on screen. The classic listing has the same **New** and **Extract to Excel**.
* Roles have CCM's **Type** and an **Order** (sub-roles too) in both views, formatted descriptions that members see formatted on the volunteer page, and **Save as Copy**.
* The new-look **Listing** has the classic listing's columns in its order: **Member name**, the three phones, a separate **Email**, **Role** and **When**.
* On **My Time Tracking**, members pick a **Task** under the event when logging hours, and can delete an entry while it is still pending.

**Resources and reports**

* Each resource has an **Access** setting (club setting, Public or Private) and an order in both views, and the classic Resources list gains **Sort Table By**, Ascending/Descending and 20 a page with a pager. A migrated club's CCM resources now appear there, under a facility named after the club.
* The **Confirmed Payment Report** is CCM's two tables — marked as Paid, then marked as UnPaid — each with a TOTALS line, on screen and in CSV and Excel.
* **Each club report has its own permission.** View Financials still opens all 26; View Members opens the roster, contact and data-check lists; View Volunteers opens the volunteer reports. The list shows only what you may run, and **Email on a schedule** stays with View Financials. Staff without View Financials see only the **Club reports** tab, and **Reports** opens on it instead of on a Dashboards tab they cannot use.

**League desk**

* **Subs:** staff and the league's convenor can add a sub, edit one and export every league's list at once (new look: **Spares** tab; classic: **Subs → New**, click a name to edit).
* **Copy teams** into another league, in both views.
* Classic **League Edit** lists and edits the league's required membership types and its sessions.
* **Mark a league as filled.** A **Filled** card on **League Setup** in the new look, and **Mark as Filled** on classic League Edit, list the league as **FILLED** on signup; it cannot be picked and checkout refuses it. The classic box used to close the league to signup instead, which hid it.
* The classic desk's *(staff may register past this)* note and the Spares tab's **Export CSV** button now follow the site's language.
* Classic navigation: Games, Points, Rounds, Divisions, Teams and Subs open a **Select a League** screen when no league is chosen, remember the last league you were in, and every section's **Select a League** dropdown switches league in place. **Sheets** opens the classic Sheet Listing for the whole club.

**Schedule and results**

* **Generate schedule** in the new look gains CCM's options: **League nights** (weekday checkboxes), a **Last league night**, a game against "Nobody" for a bye, and balanced or in-order sheets; the classic Generate Games screen's options all work too.
* The classic game list shows who last saved each result (**Edited By**, imported from CCM where it was kept), and the new look's result dialog says *Result last saved by …*. Classic **Edit Game** no longer deletes extra game duties set in the new look, and the classic toolbar's **Sync to Calendar** opens Today's Ice on the league's first game night.
* **Game results** opens the same result dialog as My Teams, with ends won and, in a scores league, **Save scores** with halves (3.5) and ties; **Recorded results** lists played games with **Edit result**. Members can also record their own team's played games from the league page's schedule. A game cannot take a result before its day on the club's clock.
* On the league page, the **Total Points for Each Round** standings sort by any column header.

**Member pages**

* A sub-list row has **Edit** (positions and comment, keeping your availability), and **My Subbing Availability** lists **Other leagues taking subs** with **Join**.
* **Email a League** takes one attachment up to 5 MB.
* **My Information** has an **Account Settings** card for the profile picture and login email.

## 2026-09-28

* **A Leagues page on every club site.** `/leagues` lists the club's active public leagues, including leagues already under way, each linking to its league page with **Registration open**, **Teams**, **Schedule** and **Standings** badges. **My Account** lists it as **Teams, Schedules, Standings**, CCM's name for it. **Browse leagues** on an empty subbing page opens it, and so do old CCM `view=tss` and `view=league_info` bookmarks, even on a club site that is still a copy of its old website.
* **Account in the club site's avatar menu opens My Account** on that club's site instead of the Members Portal. A signed-in member who uses an old site copy's **Member login** box lands on **My Account**.
* The signup **Confirm** step lists each option by the club's question, for example *Do you require a locker for the year?: Yes*, in the members' wizard and at the staff proxy desk in both views.
* **My Teams**, **Game results** and the league schedule all use the club's own sheet names, and **My Teams** and **Game results** show times on the club's clock rather than the device's.
* The **Available to sub?** panel on a league page uses the club's Sub or Spare word throughout, including its dialog and messages.
* A new club name, contact details or terminology saved in Club Settings shows on the public club site immediately.
* **Bye requests** (new; available when a superadmin enables **Bye Requests** for your club). Staff record the league nights a team asked to sit out in a **Bye requests** panel on the league's Draws tab (also in the League Portal's Schedule), and a team's skip can ask from **My Teams → Nights off** until that night is scheduled. **Generate schedule** gives those teams the bye, moves or makes up the games it cannot, and its preview says **N of M bye requests honoured** with the reason for any it missed; **Optimise unlocked games** avoids requested nights, and the classic Generate Games screen honours them too.
* The League Portal's **Results** list names each game's sheet the way the club does (for example **North**) instead of **Sheet 2**.
* **Jitney leagues** (new; available when a superadmin enables **Jitney Leagues** for your club). For newbie and drop-in leagues, **League Setup → Team format** switches a league to *Jitney — new teams every night, individual points*, with points for attending, a win, a tie and a loss (1 / 3 / 2 / 0 by default, so a win scores 4) and an answer cutoff. Curlers say **I'm in** or **I'm out** for each night on **My Teams** until the cutoff or until the night's teams are published, and see their team and **My points** there. On the league's new **Jitney** tab (the League Portal's **Teams**), staff mark attendance, add drop-ins, **Build teams** (a shuffle that honours positions and keeps repeat teammates low), move curlers, **Re-shuffle** and **Publish teams**. Results are entered as usual, and **Individual standings** (ranked by total, then wins, then nights played) replace the team tables on the Standings tab, the League Portal's Results and the public league page. A league that already has fixed teams can't be switched to jitney until they are removed. Drop-ins, including those added at the desk, see their night and points on **My Teams**, and are recorded, not charged; members can't enter jitney results; the TV board and canned reports still show team standings.

## 2026-09-25

* **The classic view is for staff only.** Members (curlers) always get the new pages on the club site, and the club site no longer offers **Switch to classic view**. Admins, league managers, finance and every other club role keep the classic view of the dashboard and its switch. Old CCM member bookmarks still land on the matching new page.
* **A migrated club's site can start as an exact copy of its old website.** At cutover the Uplifter team can serve the club's old CCM site as a frozen copy, with its login, signup, calendar and event links pointing into the new system and its contact forms turned into a **Contact us** link. While the copy is live, the website builder is hidden except **General** and **Form Submissions**; **Switch to the new website builder** on Website → General moves the club onto the builder, and only Uplifter support can switch it back.
* **Early birds are set on the membership type**, per term, in both the new and the classic editor; Confirm and the invoice show them. The staff proxy desk now prices exactly like the storefront, can book multi-session leagues, and has a classic view that follows CCM's proxy page.
* **Members can change their login email**: a code goes to the new address, and the old one is told.
* **League managers named on a league can open the league portal** without being set up as staff.
* Fixes: scheduled email campaigns now send; removing a staff member removes only their staff access at this club; an invoice's **Resend email** really resends; **Copy payment link** copies a working link; a fee's unused **Tax %** field is gone (tax is the club-wide rate); a locker requested at signup is recorded when the registration completes; the draw generator skips holidays and says which nights it skipped; issuing a new display address clears a board still showing the old one; email campaigns only ever reach people connected to your club.
* The template gallery's previews draw again, and a wide club logo in the logo-left header is sharp.

## 2026-09-24

* **Site templates.** Website → Templates offers four layouts — Classic Club, Open Ice, Editorial, Community Board — to preview and switch between without losing pages, text, pictures, menu, logo or brand colour. One step of "Back to previous template".

## 2026-09-23

* The signup **Confirm total is exactly what is charged**, and priced options (a locker fee, for instance) appear as real invoice lines. Early-bird shows as its own line.
* **Member profile gains Payment Info and Signup Info** tabs — for a migrated club the five CCM payment slots render from the imported payments.
* **A club can serve its site on its own domain** (Website → General → Custom domain).
* Club sites get their own **robots.txt and sitemap.xml**; unpaid CCM signup totals import.
* **The Store is a new feature**: hidden until enabled, new look only, and the till needs a financial permission.
* Imported club sites render at the original site's **measured type sizes**, and read like the original (fifth, sixth and seventh fidelity passes); a second club (York) imported whole.

## 2026-09-22

* **Today's Ice** — a per-sheet day grid of league draws, bookings and events on the dashboard, replacing the month calendar for that job; every time on the club's clock.
* **From your CCM import** checklist under Website → General: what the import carried differently or not at all, with a link to the setting that changes it.
* A club can set its own **header**, a tinted band spanning the page, a plain tile style, tiles in one row, and a **home page preview**.
* The importer converts a club's **Joomla home page and site chrome** (header, footer) and draws them.
* Three defects found by the first remote migration rehearsal fixed.

## 2026-09-21

* **Sell a league by session** — a session can be offered at signup with its own fee and entry limit.
* **A site sidebar** in the shape CCM clubs actually use.
* Editing a waiver no longer destroys the signatures on it.
* A batch of authorization fixes: staff, billing, payout, facility and medical reads now require the right permission.

## 2026-09-18

* **Whole-site preview**, a **media library**, and imported **events and sponsors**.
* The importer carries a club's **registration flow and website**, proven on a real club.
* Migration verify is green on all four real clubs; **one account across clubs**.
* Website **form block** and **table block**; club contact in the footer.

## 2026-09-17

* **Per-club curling vocabulary** — Subbing/Sparing, Round/Draw/Flight, Division/Pool, set under Club Settings.
* **League age limits are enforced** in the wizard and at checkout.
* **League convenor portal** at `/league`; convenors can see who owes their league fee and their league's sub list.
* Association-sync export page; chargeback reversal and money-display fixes.
* Several data-exposure fixes for league, spares and roster reads.

## 2026-09-16

* **One-click CCM classic profile** hides every non-CCM surface for a club.
* **Round-at-a-time knockout engine** — triple knockout and Schenkel — for bonspiels (when enabled).
* **Member invoices with online pay**, league capture presets, proxy registration questions and waivers.
* **Record a payment taken on the club's own card terminal.**
* Hero's "what's on this week" sees league draws, sessions, events and ice bookings.

## 2026-09-15

* **Members can see every email and text their club sent them.**
* **Outbound webhooks and API keys** — wire Uplifter into Zapier, n8n or your own tools (when enabled).
* Bonspiel results record last-shot distance and who played; bonspiel games land on the TV board.
* **Drag games across the draw grid**; a Bonspiel tab to enter, draw and run a knockout.
* Draw **fairness after every edit**, locked games that survive a regenerate, fill-around-locks and optimise.
* Hero answers the six CCM questions (three read tools, five proposal tools).
* **Members-only club content** in the member portal.
* The CCM importer writes the club's **Step 1 field list**.
* **Configurable signup Step 1**, profile self-edit, league fields, volunteers, and a wizard preview.
* Five money-correctness fixes and a double-charge guard.

## 2026-09-14

* **Sheets are records**, and **score sheets print**.
* **The schedule is editable after generation.**
* Curling words, **ends won per league**, richer points rules (default win/loss, per end won), and a generator that explains itself.
* Campaigns and proxy registration reach members who have never logged in.
* Six verified defects fixed and two toggles added from the priorities list.

## 2026-09-10

* **Pay at club or by mail** — a curling club can take a cheque again, with a printable registration sheet.
* A league can accept **a team, a single curler, or both**.
* A bonspiel registration creates its team; **double-knockout draw generation** for bonspiels.
* Seven bugs from the parity audit fixed; **two-night leagues** work.

## 2026-09-09

* Warn before a skin switch discards unsaved work; a skin switch mid-registration keeps the member's work.
* The classic view no longer hands you a write form when you asked for standings.
* Refund, renewal and re-purchase defects fixed (a lapsed entitlement re-bought is now delivered; a successful renewal un-suspends the membership; four refund defects).
* An admin can no longer block ice a member has already paid for.

## 2026-09-08

* **Random team draw** from signup position preferences.
* **Public event registration** — storefront listing, eligibility, cart, checkout gates and questions; off until the club turns it on per event.
* Hero usage billing with included credit, overage and a spend cap.
* Campaign email has a working unsubscribe.
* Four defects fixed: slot locks, Account links, registration times, organisation switch.

## 2026-09-04

* **Sign the club's releases inside the registration wizard**, in both views.
* Classic view engages on every dashboard URL; images render again.
* The admin is no longer the payer on a proxy registration; a re-registering family cannot be promoted free.

## 2026-09-03

* **Drag-and-drop website builder** with nine new block types and an honest preview.
* **Rink TV displays** (Settings → Club Displays) and their classic twin.
* **Club-configurable Access Levels**, replacing CCM's fixed Joomla groups.
* The skin toggle is equally findable in both directions.
* "Athlete" became "member" across the whole platform.

## 2026-09-02

* The migration pipeline — probe, plan, apply, verify — including standings recomputed from CCM's own data and compared.
* Classic twins for **My Ice Bookings** and the facility resources admin.

## 2026-09-01

* **CCM's 26 canned reports**, rebuilt as a pack in both views; reports can be **scheduled and emailed**.
* Free agents, member search and league email in both views; **Game Result Entry** for members.
* Per-role **volunteer interests**; subbing and time-tracker screens in the CCM shape.
* **Net-new features ship off** per club until a superadmin enables them.
* Campaign segments filter by membership status and league.
* **All 14 com\_curling admin sections** have a classic twin.

**Related:** [Feature overview](/product/feature-overview) · [Business rules](/product/business-rules)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.