2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-04-28 11:36:44 +00:00

[CUI] Non field errors (#7672)

* Fix typo

* [CUI] Display hidden error messages in forms

* Adjust build checks

* Improve error checking
This commit is contained in:
Oliver 2024-07-17 17:44:51 +10:00 committed by GitHub
parent eacd28bf19
commit 234b0ed72c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 37 additions and 20 deletions

View File

@ -120,6 +120,8 @@ class Build(
self.validate_reference_field(self.reference) self.validate_reference_field(self.reference)
self.reference_int = self.rebuild_reference_field(self.reference) self.reference_int = self.rebuild_reference_field(self.reference)
# Check part when initially creating the build order
if not self.pk or self.has_field_changed('part'):
if get_global_setting('BUILDORDER_REQUIRE_VALID_BOM'): if get_global_setting('BUILDORDER_REQUIRE_VALID_BOM'):
# Check that the BOM is valid # Check that the BOM is valid
if not self.part.is_bom_valid(): if not self.part.is_bom_valid():

View File

@ -1502,8 +1502,23 @@ function handleFormErrors(errors, fields={}, options={}) {
for (var field_name in errors) { for (var field_name in errors) {
var field = fields[field_name] || {}; let field = fields[field_name] || null;
var field_errors = errors[field_name]; let field_errors = errors[field_name];
// No matching field - append to non_field_errors
if (!field || field.hidden) {
if (Array.isArray(field_errors)) {
field_errors.forEach((err) => {
non_field_errors.append(`<div class='alert alert-block alert-danger'>${err}</div>`);
});
} else {
non_field_errors.append(`<div class='alert alert-block alert-danger'>${field_errors.toString()}</div>`);
}
continue;
}
// for nested objects with children and dependent fields with a child defined, extract nested errors // for nested objects with children and dependent fields with a child defined, extract nested errors
if (((field.type == 'nested object') && ('children' in field)) || ((field.type == 'dependent field') && ('child' in field))) { if (((field.type == 'nested object') && ('children' in field)) || ((field.type == 'dependent field') && ('child' in field))) {