• 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
Name
Last commit
Last update
..
AcademyPricingService.php Loading commit data...
AttendanceRuleService.php Loading commit data...
BookingPassService.php Loading commit data...
BookingService.php Loading commit data...
CardRenewalService.php Loading commit data...
CoachAssessmentService.php Loading commit data...
ConflictDetectionService.php Loading commit data...
DiscountCalculatorService.php Loading commit data...
EnrollmentService.php Loading commit data...
GateAccessService.php Loading commit data...
GroupTransferService.php Loading commit data...
MakeupSessionService.php Loading commit data...
MirrorStateService.php Loading commit data...
NumberGeneratorService.php Loading commit data...
PlayerLifecycleService.php Loading commit data...
PoolGridService.php Loading commit data...
PoolGridTemplateService.php Loading commit data...
PoolReservationService.php Loading commit data...
PoolTicketService.php Loading commit data...
PricingCalculatorService.php Loading commit data...
RegistrationWizardService.php Loading commit data...
SaEventListenerService.php Loading commit data...
SaPaymentService.php Loading commit data...
ScheduleCopyService.php Loading commit data...
ScheduleGeneratorService.php Loading commit data...
SlotAvailabilityService.php Loading commit data...
SubscriptionGeneratorService.php Loading commit data...
TrainingAttendanceService.php Loading commit data...
WaitlistAutoOfferService.php Loading commit data...