From f4b84e6a1723431210b0bebea691e5c09fd02dd3 Mon Sep 17 00:00:00 2001 From: Benn Oshrin Date: Sun, 3 Oct 2021 15:18:29 -0400 Subject: [PATCH] Improve validation messages (CO-1680) --- app/resources/locales/en_US/default.po | 5 ++++- app/src/Model/Table/ApiUsersTable.php | 10 ++++++---- app/src/Model/Table/AttributeGroupsTable.php | 3 ++- app/src/Model/Table/MatchgridSettingsTable.php | 14 +++++++++----- app/src/Model/Table/MatchgridsTable.php | 6 ++++-- app/src/Model/Table/MetaTable.php | 3 ++- app/src/Model/Table/PermissionsTable.php | 5 +++-- app/src/Model/Table/RuleAttributesTable.php | 6 +++--- app/src/Model/Table/RulesTable.php | 6 ++++-- app/src/Model/Table/SystemsOfRecordTable.php | 9 ++++++--- 10 files changed, 43 insertions(+), 24 deletions(-) diff --git a/app/resources/locales/en_US/default.po b/app/resources/locales/en_US/default.po index 86a6ea082..3a4a9d31a 100644 --- a/app/resources/locales/en_US/default.po +++ b/app/resources/locales/en_US/default.po @@ -309,6 +309,9 @@ msgstr "Unknown search type '{0}'" msgid "match.er.table" msgstr "Matchgrid table %1$s does not exist" +msgid "match.er.val.email" +msgstr "Provided value does not appear to be an email address" + msgid "match.er.val.length" msgstr "Provided value exceeds maximum length of {0}" @@ -503,7 +506,7 @@ msgid "match.in.matchgrid.reconcile" msgstr "Resolve matching records when COmanage determines the same person may be coming from multiple systems of record." msgid "match.in.matchgrid.select" -msgstr "Select the Matchgrid you'd like to manage." +msgstr "Select the Matchgrid you would like to work with." msgid "match.in.matchgrids.none" msgstr "There are no matchgrids currently defined." diff --git a/app/src/Model/Table/ApiUsersTable.php b/app/src/Model/Table/ApiUsersTable.php index aa43a16aa..ab9200305 100644 --- a/app/src/Model/Table/ApiUsersTable.php +++ b/app/src/Model/Table/ApiUsersTable.php @@ -171,7 +171,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'username', 'length', - [ 'rule' => [ 'maxLength', 128 ] ] + [ 'rule' => [ 'maxLength', 128 ], + 'message' => __('match.er.val.length', [128]) ] ); // notEmpty is old style, use notBlank $validator->notEmptyString('username'); @@ -179,7 +180,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'password', 'length', - [ 'rule' => [ 'maxLength', 80 ] ] + [ 'rule' => [ 'maxLength', 80 ], + 'message' => __('match.er.val.length', [80]) ] ); $validator->notEmptyString('password'); @@ -188,14 +190,14 @@ public function validationDefault(Validator $validator): Validator { 'content', [ 'rule' => 'isInteger' ] ); - $validator->allowEmpty('matchgrid_id'); + $validator->allowEmptyString('matchgrid_id'); $validator->add( 'system_of_record_id', 'content', [ 'rule' => 'isInteger' ] ); - $validator->allowEmpty('system_of_record_id'); + $validator->allowEmptyString('system_of_record_id'); return $validator; } diff --git a/app/src/Model/Table/AttributeGroupsTable.php b/app/src/Model/Table/AttributeGroupsTable.php index b1c4b86a2..7dbd10395 100644 --- a/app/src/Model/Table/AttributeGroupsTable.php +++ b/app/src/Model/Table/AttributeGroupsTable.php @@ -67,7 +67,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'name', 'length', - [ 'rule' => [ 'maxLength', 32 ] ] + [ 'rule' => [ 'maxLength', 32 ], + 'message' => __('match.er.val.length', [32]) ] ); $validator->notEmptyString('name'); diff --git a/app/src/Model/Table/MatchgridSettingsTable.php b/app/src/Model/Table/MatchgridSettingsTable.php index e91355f12..175f8b0d6 100644 --- a/app/src/Model/Table/MatchgridSettingsTable.php +++ b/app/src/Model/Table/MatchgridSettingsTable.php @@ -199,26 +199,30 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'referenceid_start', 'content', - [ 'rule' => [ 'range', 1, null ] ] + [ 'rule' => [ 'range', 1, PHP_INT_MAX ], + 'message' => __('match.er.val.range', [1, PHP_INT_MAX]) ] ); - $validator->allowEmpty('referenceid_start'); + $validator->allowEmptyString('referenceid_start'); $validator->add( 'referenceid_prefix', 'content', - [ 'rule' => [ 'maxLength', 32 ] ] + [ 'rule' => [ 'maxLength', 32 ], + 'message' => __('match.er.val.length', [32]) ] ); $validator->allowEmptyString('referenceid_prefix'); $validator->add( 'notification_email', 'length', - [ 'rule' => [ 'maxLength', 80 ] ] + [ 'rule' => [ 'maxLength', 80 ], + 'message' => __('match.er.val.length', [80]) ] ); $validator->add( 'notification_email', 'content', - [ 'rule' => 'email' ] + [ 'rule' => 'email', + 'message' => __('match.er.val.email') ] ); $validator->allowEmptyString('notification_email'); diff --git a/app/src/Model/Table/MatchgridsTable.php b/app/src/Model/Table/MatchgridsTable.php index 707dc22cb..146ec76c2 100644 --- a/app/src/Model/Table/MatchgridsTable.php +++ b/app/src/Model/Table/MatchgridsTable.php @@ -171,7 +171,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'table_name', 'length', - [ 'rule' => [ 'maxLength', 128 ] ] + [ 'rule' => [ 'maxLength', 128 ], + 'message' => __('match.er.val.length', [128]) ] ); $validator->add( 'table_name', @@ -184,7 +185,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'description', 'length', - [ 'rule' => [ 'maxLength', 128 ] ] + [ 'rule' => [ 'maxLength', 128 ], + 'message' => __('match.er.val.length', [128]) ] ); $validator->allowEmptyString('description'); diff --git a/app/src/Model/Table/MetaTable.php b/app/src/Model/Table/MetaTable.php index afdcf3ab8..db01b276a 100644 --- a/app/src/Model/Table/MetaTable.php +++ b/app/src/Model/Table/MetaTable.php @@ -69,7 +69,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'upgrade_version', 'length', - [ 'rule' => [ 'maxLength', 16 ] ] + [ 'rule' => [ 'maxLength', 16 ], + 'message' => __('match.er.val.length', [16]) ] ); $validator->notEmptyString('upgrade_version'); diff --git a/app/src/Model/Table/PermissionsTable.php b/app/src/Model/Table/PermissionsTable.php index 285e95b2c..b728a8944 100644 --- a/app/src/Model/Table/PermissionsTable.php +++ b/app/src/Model/Table/PermissionsTable.php @@ -95,7 +95,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'username', 'length', - [ 'rule' => [ 'maxLength', 128 ] ] + [ 'rule' => [ 'maxLength', 128 ], + 'message' => __('match.er.val.length', [128]) ] ); $validator->notEmptyString('username'); @@ -104,7 +105,7 @@ public function validationDefault(Validator $validator): Validator { 'content', [ 'rule' => 'isInteger' ] ); - $validator->allowEmpty('matchgrid_id'); + $validator->allowEmptyString('matchgrid_id'); $validator->add( 'permission', diff --git a/app/src/Model/Table/RuleAttributesTable.php b/app/src/Model/Table/RuleAttributesTable.php index 444f8299f..68dee6601 100644 --- a/app/src/Model/Table/RuleAttributesTable.php +++ b/app/src/Model/Table/RuleAttributesTable.php @@ -112,7 +112,7 @@ public function validationDefault(Validator $validator): Validator { 'content', [ 'rule' => 'isInteger' ] ); - $validator->allowEmpty('crosscheck_attribute_id'); + $validator->allowEmptyString('crosscheck_attribute_id'); $validator->add( 'search_type', @@ -132,14 +132,14 @@ public function validationDefault(Validator $validator): Validator { 'toggle', [ 'rule' => [ 'boolean' ] ] ); - $validator->allowEmpty('required'); + $validator->allowEmptyString('required'); $validator->add( 'match_empty', 'toggle', [ 'rule' => [ 'boolean' ] ] ); - $validator->allowEmpty('match_empty'); + $validator->allowEmptyString('match_empty'); return $validator; } diff --git a/app/src/Model/Table/RulesTable.php b/app/src/Model/Table/RulesTable.php index 7d7130db5..fcf79dbd8 100644 --- a/app/src/Model/Table/RulesTable.php +++ b/app/src/Model/Table/RulesTable.php @@ -83,7 +83,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'name', 'length', - [ 'rule' => [ 'maxLength', 32 ] ] + [ 'rule' => [ 'maxLength', 32 ], + 'message' => __('match.er.val.length', [32]) ] ); $validator->notEmptyString('name'); @@ -97,7 +98,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'description', 'length', - [ 'rule' => [ 'maxLength', 128 ] ] + [ 'rule' => [ 'maxLength', 128 ], + 'message' => __('match.er.val.length', [128]) ] ); $validator->allowEmptyString('description'); diff --git a/app/src/Model/Table/SystemsOfRecordTable.php b/app/src/Model/Table/SystemsOfRecordTable.php index 53ff8d5ed..992e67df7 100644 --- a/app/src/Model/Table/SystemsOfRecordTable.php +++ b/app/src/Model/Table/SystemsOfRecordTable.php @@ -79,7 +79,8 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'label', 'length', - [ 'rule' => [ 'maxLength', 80 ] ] + [ 'rule' => [ 'maxLength', 80 ], + 'message' => __('match.er.val.length', [80]) ] ); $validator->notEmptyString('label'); @@ -103,12 +104,14 @@ public function validationDefault(Validator $validator): Validator { $validator->add( 'notification_email', 'length', - [ 'rule' => [ 'maxLength', 80 ] ] + [ 'rule' => [ 'maxLength', 80 ], + 'message' => __('match.er.val.length', [80]) ] ); $validator->add( 'notification_email', 'content', - [ 'rule' => 'email' ] + [ 'rule' => 'email', + 'message' => __('match.er.val.email') ] ); $validator->allowEmptyString('notification_email');