Mark name and birth year as required (like it does for questions)
Problem
Student name and date of birth (soon birth year — see the birth-year issue) can be submitted blank. Registration questions already have a required-field treatment; these two fields should match it.
Expected
Marked required in the UI with the same visual treatment as required registration questions
required on the inputs for client-side blocking
Server-side validation too — client-side required is not enforcement. Reject the submission with a field-level error when either is missing.
## Feedback
> Mark name and birth year as required (like it does for questions)
## Problem
Student name and date of birth (soon birth year — see the birth-year issue) can be submitted blank. Registration questions already have a required-field treatment; these two fields should match it.
## Expected
- Marked required in the UI with the same visual treatment as required registration questions
- `required` on the inputs for client-side blocking
- **Server-side validation too** — client-side `required` is not enforcement. Reject the submission with a field-level error when either is missing.
## Places to touch
- `templates/frontend/register-page.php`, `templates/frontend/family-page.php`
- `src/Auth/RegistrationPage.php` — validation and error surfacing
- `src/Guardian/GuardianService.php` — refuse blank names on edit
- `src/Registration/QuestionField.php` — reuse its required-field markup for consistency
- `assets/css/frontend.css` if the required marker needs styling
- `tests/Unit/Auth/RegistrationPageTest.php`, `tests/Unit/Guardian/GuardianServiceTest.php`
## Related
Blocked on / pairs with the birth-year change.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Feedback
Problem
Student name and date of birth (soon birth year — see the birth-year issue) can be submitted blank. Registration questions already have a required-field treatment; these two fields should match it.
Expected
requiredon the inputs for client-side blockingrequiredis not enforcement. Reject the submission with a field-level error when either is missing.Places to touch
templates/frontend/register-page.php,templates/frontend/family-page.phpsrc/Auth/RegistrationPage.php— validation and error surfacingsrc/Guardian/GuardianService.php— refuse blank names on editsrc/Registration/QuestionField.php— reuse its required-field markup for consistencyassets/css/frontend.cssif the required marker needs stylingtests/Unit/Auth/RegistrationPageTest.php,tests/Unit/Guardian/GuardianServiceTest.phpRelated
Blocked on / pairs with the birth-year change.