Monday, March 16, 2026

Group Private Lesson Guardian Approval

Group Private Lesson Guardian Approval

Canadian Elite Volleyball Academy — Development Update • March 16, 2026

Group Private Lesson Guardian Approval

What & Why

When a parent books a private lesson and wants to include other athletes (up to 5 additional spots), the academy currently has no mechanism to notify or obtain consent from those athletes' guardians. This creates a liability and Safe Sport gap — any adult bringing a child to a private session should have explicit parental consent. This feature adds an invite-and-approve flow: the booking parent nominates athletes, each athlete's guardian(s) receive a notification to approve or decline, and the session fills only with confirmed participants.

Done looks like

  • On a private lesson registration/checkout, the booking parent can nominate up to 5 additional athletes by name search (searching existing academy members) or by entering a name + email if the athlete is not yet in the system
  • Each nominated athlete's guardian(s) receive an email notification: "Your child [Name] has been invited to a private lesson on [Date] with [Coach]. Please approve or decline."
  • Guardians can approve or decline from a link in the email (no login required for the decision, similar to the co-parent invite flow) or from a new "Pending Approvals" section on their family dashboard
  • The booking parent can see the approval status of each invited athlete (Pending / Approved / Declined) from their family dashboard registration detail
  • An athlete's spot in the lesson is confirmed only after their guardian approves; declined or unapproved spots can be offered to another invitee or left empty
  • Admin (SuperAdmin / Coordinator) can see all pending guardian approvals for a private lesson in the event management view and can manually override/approve if needed
  • Payment: each family is responsible for their own athlete's share; the invited athlete's guardian pays when they approve (or the booking parent can optionally cover all spots at checkout — a toggle at booking time)

Tasks

  • Schema: lesson athlete invites table — Create a table linked to an record (the organizer's booking): fields for , , (PENDING / APPROVED / DECLINED / CANCELLED), , , (for email link), , boolean. Add storage methods for CRUD and token lookup.
  • Backend: invite and approval routes — Add (authenticated, organizer only, validates they own the registration and the event is PRIVATE_LESSON), (public, returns invite context), and (public token-based, no auth required), and (authenticated, returns invite list with statuses). Add a route for the family dashboard.
  • Email notifications — On invite creation, send a Resend email to each invited athlete's guardian(s) (all guardians with , or all guardians if none set). Email includes lesson details (date, coach, location) and approve/decline buttons linking to the public token route. Send a follow-up confirmation email to the guardian after they approve or decline, and notify the organizer parent of each status change.
  • Booking UI — athlete nominator — On the private lesson registration flow (family dashboard / event registration page), after the organizer confirms their own athlete, show an "Add Training Partners" expandable section with an athlete search field (searches existing academy members). Display each nominated athlete with their approval status badge. Cap at 5 additional athletes. Show a "Organizer covers all spots" toggle that affects how payment is split at checkout.
  • Family dashboard — pending approvals panel — Add a "Lesson Invitations" section to the family dashboard (separate from the co-guardian panel) that lists pending invitations for each of the parent's athletes. Each card shows the lesson date, coach, organizer name, and Approve / Decline buttons. Approved/declined cards are shown in a collapsed history.
  • Admin event management view — In the private lesson event management panel, show an "Invited Athletes" section per registration listing each invitee's name, guardian email, status, and a manual override "Mark Approved" button for coordinators.
  • Relevant files

    - - - -

    Canadian Elite Volleyball Academy
    elitevolleyball.training

    No comments:

    Post a Comment