1. 12 Aug, 2026 1 commit
    • Mahmoud Aglan's avatar
      fix(registration): prevent double form-fee charge + NID-swap exploit + profile actions · db92e175
      Mahmoud Aglan authored
      Critical fixes:
      - submitFormPayment() now checks sa_players.registration_fee_paid as
        a safety net before creating any payment request
      - startRegistration() member_id fallback only used when NID matches
        the member's actual national_id (prevents NID-swap fee bypass)
      - lookupPlayer() validates NID-to-member consistency before proceeding
      - Existing registration lookup now includes 'pending_payment' status
      - Frontend clears membership_number when NID is manually changed
        after auto-fill
      
      Feature:
      - Player profile page now shows "Print Form" and "Generate Card"
        buttons for completing registration steps outside the wizard
      Co-Authored-By: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
      db92e175
  2. 11 Aug, 2026 12 commits
  3. 10 Aug, 2026 1 commit
    • Mahmoud Aglan's avatar
      feat(members): show subscription status, transfer details, and overdue amounts · 28433036
      Mahmoud Aglan authored
      1. Subscription badge: shows if active (paid), overdue, or awaiting renewal
      2. Overdue table: lists all unpaid subscriptions with amounts needed to renew
      3. Transfer origin card: shows who transferred, when, and actual amount paid
      4. Financial summary: shows actual paid amount (not original membership_value) for transferred members
      5. Payment history link for deceased member (accessible from transferee's page)
      6. Redirect /members/{id} to archive page if member is archived
      Co-Authored-By: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
      28433036
  4. 09 Aug, 2026 5 commits
  5. 08 Aug, 2026 21 commits