CustomFieldModel::setValue()/setValues()/getValuesForTicket() (models/CustomFieldModel.php ~lines 214-250) are never called anywhere outside api/custom_fields.php itself (confirmed via repo-wide grep). views/CreateTicketView.php never renders custom fields, controllers/TicketController.php::create() never collects or saves them, and views/TicketView.php never displays them.
Impact: An admin can define fields at /admin/custom-fields, including marking them "Required," but they never appear on the ticket creation/edit form, are never persisted anywhere, and is_required is enforced nowhere. The entire feature documented in README.md ("Per-Category Fields," "Required Fields: Mark fields as required for validation") is admin-config-only with no consumer — it currently does nothing from an end-user perspective.
Fix: Wire custom field rendering into CreateTicketView.php/TicketView.php (category-scoped, per the admin config) and persist submitted values via CustomFieldModel::setValues() on ticket create/update, enforcing is_required server-side.
**Severity:** High (functional gap)
`CustomFieldModel::setValue()/setValues()/getValuesForTicket()` (models/CustomFieldModel.php ~lines 214-250) are never called anywhere outside `api/custom_fields.php` itself (confirmed via repo-wide grep). `views/CreateTicketView.php` never renders custom fields, `controllers/TicketController.php::create()` never collects or saves them, and `views/TicketView.php` never displays them.
**Impact:** An admin can define fields at `/admin/custom-fields`, including marking them "Required," but they never appear on the ticket creation/edit form, are never persisted anywhere, and `is_required` is enforced nowhere. The entire feature documented in README.md ("Per-Category Fields," "Required Fields: Mark fields as required for validation") is admin-config-only with no consumer — it currently does nothing from an end-user perspective.
**Fix:** Wire custom field rendering into `CreateTicketView.php`/`TicketView.php` (category-scoped, per the admin config) and persist submitted values via `CustomFieldModel::setValues()` on ticket create/update, enforcing `is_required` server-side.
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.
Severity: High (functional gap)
CustomFieldModel::setValue()/setValues()/getValuesForTicket()(models/CustomFieldModel.php ~lines 214-250) are never called anywhere outsideapi/custom_fields.phpitself (confirmed via repo-wide grep).views/CreateTicketView.phpnever renders custom fields,controllers/TicketController.php::create()never collects or saves them, andviews/TicketView.phpnever displays them.Impact: An admin can define fields at
/admin/custom-fields, including marking them "Required," but they never appear on the ticket creation/edit form, are never persisted anywhere, andis_requiredis enforced nowhere. The entire feature documented in README.md ("Per-Category Fields," "Required Fields: Mark fields as required for validation") is admin-config-only with no consumer — it currently does nothing from an end-user perspective.Fix: Wire custom field rendering into
CreateTicketView.php/TicketView.php(category-scoped, per the admin config) and persist submitted values viaCustomFieldModel::setValues()on ticket create/update, enforcingis_requiredserver-side.