--- phase: 04-post-launch-fixes plan: 01 subsystem: ui tags: [php, smarty, javascript, form] requires: [] provides: - FAX field removed from public registration form and admin participant views - Surcharge checkboxes hidden when one-day-no-lodging option selected - PHP 7.2 count() warning fixed in FrontController key-files: modified: - _rejestracja/template/partial/Index/Index.tpl - _rejestracja/Admin/template/partial/Calc/Reg.tpl - _rejestracja/Admin/template/partial/Calc/RegEdit.tpl - _rejestracja/core/class/FrontController.class.php key-decisions: - "FAX kept in DB/model — only removed from templates; existing records preserved" - "showSelectDate() default-hides #conference_1; full-conference inline onclick restores it" duration: ~15min completed: 2026-04-28T00:00:00Z --- # Phase 4 Plan 01: Post-Launch Fixes Summary **FAX field removed from form and admin views; surcharge block now hidden when one-day-no-lodging is selected; PHP 7.2 count() warning fixed.** ## Performance | Metric | Value | |--------|-------| | Duration | ~15 min | | Completed | 2026-04-28 | | Tasks | 2 completed | | Files modified | 4 | ## Acceptance Criteria Results | Criterion | Status | Notes | |-----------|--------|-------| | AC-1: FAX removed from public form | Pass | Div block with label + formField removed from Index.tpl | | AC-2: FAX removed from admin views | Pass | Line removed from Reg.tpl and RegEdit.tpl | | AC-3: Surcharges hidden on one-day-no-lodging | Pass | showSelectDate() hides #conference_1 by default; conference_fee_1 branch unchecks both checkboxes | | AC-4: Surcharges shown on full conference | Pass | Full conference radio inline onclick still calls `$('#conference_1').show()` | ## Accomplishments - Removed obsolete FAX field from public form (Index.tpl) — no longer collected or displayed to registrants - Removed FAX display line from both admin participant views (Reg.tpl, RegEdit.tpl) - Updated `showSelectDate()` JS: adds `$('#conference_1').hide()` as default reset, plus unchecks `#price_plus_room` and `#price_plus_person` when one-day-no-lodging is selected - Fixed pre-existing PHP 7.2 compatibility warning in `FrontController::GenerateTitle()` — `count(null)` replaced with safe array cast ## Files Created/Modified | File | Change | Purpose | |------|--------|---------| | `_rejestracja/template/partial/Index/Index.tpl` | Modified | Removed FAX field div; updated showSelectDate() JS | | `_rejestracja/Admin/template/partial/Calc/Reg.tpl` | Modified | Removed Fax display line from participant list | | `_rejestracja/Admin/template/partial/Calc/RegEdit.tpl` | Modified | Removed Fax display line from participant edit view | | `_rejestracja/core/class/FrontController.class.php` | Modified | Fixed count(null) PHP 7.2 warning in GenerateTitle() | ## Decisions Made | Decision | Rationale | Impact | |----------|-----------|--------| | Keep FAX in DB/model, remove only from templates | Preserves existing records; no migration needed | Historical FAX data remains accessible via DB direct query | | Default-hide #conference_1 in showSelectDate(), keep inline .show() on full-conference radio | Minimal change — avoids refactoring working onclick; showSelectDate fires on change only | Clean toggle behaviour with fewest lines changed | ## Deviations from Plan ### Summary | Type | Count | Impact | |------|-------|--------| | Auto-fixed | 1 | PHP 7.2 warning eliminated | | Scope additions | 0 | — | | Deferred | 0 | — | **Total impact:** One opportunistic fix outside plan scope — essential (was causing visible red error on every page load). ### Auto-fixed Issues **1. PHP 7.2 `count()` warning in FrontController** - **Found during:** User reported red error immediately after APPLY - **Issue:** `FrontController::GenerateTitle()` called `count($headers['title'])` where `$headers['title']` can be `null`; PHP 7.2+ raises E_WARNING - **Fix:** `$t = isset($headers['title']) && is_array($headers['title']) ? $headers['title'] : [];` - **Files:** `_rejestracja/core/class/FrontController.class.php:358` - **Verification:** Error no longer appears on page load ## Next Phase Readiness **Ready:** - Milestone v0.2 complete — both client requests implemented - No open deferred issues **Concerns:** - None **Blockers:** - None --- *Phase: 04-post-launch-fixes, Plan: 01* *Completed: 2026-04-28*