# CC Soccer D11 - Session Handoff
**Date:** May 16, 2026
**Branch:** `main`

---

## Current State

### 🎉 SITE IS LIVE at ccsoccer.com
D11 is live in soft-launch mode (IP whitelist active). Board members only can access. Real users will be invited once seasonal registration is set up.

### Code ✅ LOCAL AHEAD OF TEST/PROD
Email changes committed locally, not yet deployed to TEST/prod. Deploy next session or immediately.

---

## Session Work — May 16, 2026

### Email — Order Confirmation ✅ (locally, needs deploy)
Three email paths now fully owned by us, no Commerce defaults:

1. **Season/tournament registration** — `sendRegistrationConfirmation()` in `OrderCompleteSubscriber` — unchanged logic, colors updated green → red
2. **Jersey-only orders** — new `sendJerseyOrderConfirmation()` in `OrderCompleteSubscriber` — clean branded confirmation
3. **Commerce default "Order #X confirmed"** — suppressed via `hook_mail_alter()` in `ccsoccer.module`

Note: `$message['result'] = TRUE` added alongside suppression to reduce Symfony Mailer error visibility — error still shows for admin users only (not players), deferred fix.

**Files changed:**
- `web/modules/custom/ccsoccer/ccsoccer.module` — `hook_mail_alter()` added
- `web/modules/custom/ccsoccer/src/EventSubscriber/OrderCompleteSubscriber.php` — jersey confirmation + color fixes

### Security ✅
- Monarx — already active (on-disk malware scanning)
- ModSecurity — active on all domains
- reCAPTCHA — enabled on login, password reset, registration forms
- Passkey + reCAPTCHA compatibility — **needs testing** (added to list)

### DNS Cleanup ✅
- `mail.ccsoccer.com` A record deleted
- `db.ccsoccer.com` A record deleted
- `authsmtp._domainkey.ccsoccer.com` DKIM deleted
- `default._bimi.ccsoccer.com` CNAME (PowerDMARC BIMI) deleted
- SPF updated — removed `include:authsmtp.com`
- DMARC updated — away from PowerDMARC to simple free record
- AuthSMTP cancelled
- PowerDMARC cancelled

### Admin Email ✅
- Admin user (uid=1) email updated to `ccsoccer@ccsoccer.com` on prod
- Site email confirmed `ccsoccer@ccsoccer.com` on prod

### Security Patch ✅
- `date_ical` updated 4.0.14 → 4.0.15 (security update)

### Test Email Address
- Decision deferred: `test@ccsoccer.com` mailbox ($7/mo) for TEST server

### Dev Workflow Note
- Local `site_instance = 'local'` gates notifications to board members only, even though Mailpit catches all email
- To test non-board user emails locally, temporarily set `site_instance = 'production'` in local settings.local.php

---

## DB Quick Reference

### Production DB (live)
- DB: `n6ac4b5_d11live`
- User: `n6ac4b5_ccsoccer_user`
- Password: `vGL3KWO(K8C;`

### TEST DB
- DB: `n6ac4b5_d11test`
- User: `n6ac4b5_ccsoccer_user`
- Password: `vGL3KWO(K8C;`

### Local D11 DB
- Admin: `admin` / `TJ4XxyYGCd`
