Files
2026-04-28 15:42:05 +02:00

109 lines
4.3 KiB
Markdown

---
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*