From 8feed5528fb17b7a5a57e6c41bd3682fed404fba Mon Sep 17 00:00:00 2001 From: Antariksh Date: Tue, 27 Apr 2021 10:56:00 +0800 Subject: [PATCH 1/2] fix: show correct error message Error messages were showing up incorrectly due to incorrect accessing of keys in the error object. The fix was to access the correct keys. --- .../forms/admin/controllers/admin-form.client.controller.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/public/modules/forms/admin/controllers/admin-form.client.controller.js b/src/public/modules/forms/admin/controllers/admin-form.client.controller.js index b369c1e21a..1209729372 100644 --- a/src/public/modules/forms/admin/controllers/admin-form.client.controller.js +++ b/src/public/modules/forms/admin/controllers/admin-form.client.controller.js @@ -141,7 +141,8 @@ function AdminFormController( return } let errorMessage - switch (error.status) { + const status = get(error, 'response.status') || get(error, 'status') + switch (status) { case StatusCodes.CONFLICT: case StatusCodes.BAD_REQUEST: errorMessage = @@ -155,7 +156,7 @@ function AdminFormController( // Validation can fail for many reasons, so return more specific message errorMessage = get( error, - 'data.message', + 'response.data.message', 'Your changes contain invalid input.', ) break From e00800411a11f0f33775367b891199f8517a366a Mon Sep 17 00:00:00 2001 From: Antariksh Date: Tue, 27 Apr 2021 10:58:12 +0800 Subject: [PATCH 2/2] fix: change push to assignment This triggers the AngularJS digest cycle correctly, which updates the count of MyInfo fields correctly. --- .../forms/admin/controllers/admin-form.client.controller.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/public/modules/forms/admin/controllers/admin-form.client.controller.js b/src/public/modules/forms/admin/controllers/admin-form.client.controller.js index 1209729372..dc007175ff 100644 --- a/src/public/modules/forms/admin/controllers/admin-form.client.controller.js +++ b/src/public/modules/forms/admin/controllers/admin-form.client.controller.js @@ -191,7 +191,10 @@ function AdminFormController( .when(AdminFormService.createSingleFormField($scope.myform._id, body)) .then((updatedFormField) => { // insert created field into form - $scope.myform.form_fields.push(updatedFormField) + $scope.myform.form_fields = [ + ...$scope.myform.form_fields, + updatedFormField, + ] }) .catch(handleUpdateError) }