diff --git a/ayanova/src/api/errorhandler.js b/ayanova/src/api/errorhandler.js index 1f9de279..b7af02ed 100644 --- a/ayanova/src/api/errorhandler.js +++ b/ayanova/src/api/errorhandler.js @@ -24,12 +24,12 @@ function dealWithError(msg, form) { //then put the error into it if (form) { if (form.$gzdevmode()) { - //make sure appError is defined on data - if (!form.$_.has(form, "appError")) { - throw "DEV ERROR errorHandler::dealWithError -> appError seems to be missing from form's vue data object"; + //make sure formState.appError is defined on data + if (!form.$_.has(form, "formState.appError")) { + throw "DEV ERROR errorHandler::dealWithError -> formState.appError seems to be missing from form's vue data object"; } } - form.appError = msg; + form.formState.appError = msg; form.$gzform.setErrorBoxErrors(form); } } diff --git a/ayanova/src/api/gzform.js b/ayanova/src/api/gzform.js index a495abab..bcb1d0b5 100644 --- a/ayanova/src/api/gzform.js +++ b/ayanova/src/api/gzform.js @@ -79,11 +79,11 @@ function getControlLabel(ctrl) { function getErrorsForField(vm, ref) { var ret = []; if (ref == "errorbox") { - ret = vm.$_.filter(vm.serverError.details, function(o) { + ret = vm.$_.filter(vm.formState.serverError.details, function(o) { return !o.target; }); } else { - ret = vm.$_.filter(vm.serverError.details, function(o) { + ret = vm.$_.filter(vm.formState.serverError.details, function(o) { if (!o.target) { return false; } @@ -110,9 +110,9 @@ function getErrorBoxErrors(vm, errs) { } //any application errors? - if (vm.appError) { + if (vm.formState.appError) { hasErrors = true; - ret = vm.appError + "\r\n----------\r\n" + ret; + ret = vm.formState.appError + "\r\n----------\r\n" + ret; } if (!hasErrors) { @@ -322,44 +322,44 @@ export default { serverErrors(vm, ref) { //CHECK PREREQUISITES IN DEV MODE TO ENSURE FORM ISN"T MISSING NEEDED DATA ATTRIBUTES ETC if (vm.$gzdevmode()) { - //make sure serverErrors is defined on data - if (!vm.$_.has(vm, "serverError")) { - throw "DEV ERROR gzform::serverErrors -> serverError seems to be missing from form's vue data object"; + //make sure formState.serverErrors is defined on data + if (!vm.$_.has(vm, "formState.serverError")) { + throw "DEV ERROR gzform::formState.serverErrors -> formState.serverError seems to be missing from form's vue data object"; } - //make sure appError is defined on data - if (!vm.$_.has(vm, "appError")) { - throw "DEV ERROR gzform::serverErrors -> appError seems to be missing from form's vue data object"; + //make sure formState.appError is defined on data + if (!vm.$_.has(vm, "formState.appError")) { + throw "DEV ERROR gzform::formState.serverErrors -> formState.appError seems to be missing from form's vue data object"; } //make sure formState.errorBoxMessage is defined on data if (!vm.$_.has(vm, "formState.errorBoxMessage")) { - throw "DEV ERROR gzform::serverErrors -> formState.errorBoxMessage seems to be missing from form's vue data object"; + throw "DEV ERROR gzform::formState.serverErrors -> formState.errorBoxMessage seems to be missing from form's vue data object"; } //ensure the error returned is in an expected format to catch coding errors at the server end - if (!vm.$_.isEmpty(vm.serverError)) { + if (!vm.$_.isEmpty(vm.formState.serverError)) { //Make sure there is an error code if there is an error collection - if (!vm.serverError.code) { - throw "DEV ERROR gzform::serverErrors -> server returned error without code"; + if (!vm.formState.serverError.code) { + throw "DEV ERROR gzform::formState.serverErrors -> server returned error without code"; } } } var ret = []; //check for errors if we have any errors - if (!vm.$_.isEmpty(vm.serverError)) { + if (!vm.$_.isEmpty(vm.formState.serverError)) { //debugger; //First let's get the top level error code - var apiErrorCode = parseInt(vm.serverError.code); + var apiErrorCode = parseInt(vm.formState.serverError.code); //GENERAL ERROR if (ref == "errorbox") { //Add any general errors to ret var err = vm.$gzlocale.get("ErrorAPI" + apiErrorCode.toString()); - if (vm.serverError.message) { - err = err + "\r\n" + vm.serverError.message; + if (vm.formState.serverError.message) { + err = err + "\r\n" + vm.formState.serverError.message; } //Update the form status this.setFormState({ @@ -371,7 +371,7 @@ export default { //DETAIL ERRORS //{"error":{"code":"2200","details":[{"message":"Exception: Error converting value \"\" to type 'AyaNova.Biz.AUTHORIZATION_ROLES'. Path 'roles', line 1, position 141.","target":"roles","error":"2203"}],"message":"Object did not pass validation"}} //Specific field validation errors are in an array in "details" key - if (!vm.$_.isEmpty(vm.serverError.details)) { + if (!vm.$_.isEmpty(vm.formState.serverError.details)) { //See if this key is in the details array var errorsForField = getErrorsForField(vm, ref); @@ -406,14 +406,14 @@ export default { }, /////////////////////////////// - // ClearServerErrors + // ClearformState.serverErrors // Clear all server errors and app errors and ensure error box doesn't show // deleteAllErrorBoxErrors(vm) { //clear all keys from server error - vm.$gzutil.removeAllPropertiesFromObject(vm.serverError); + vm.$gzutil.removeAllPropertiesFromObject(vm.formState.serverError); //clear app errors - vm.appError = null; + vm.formState.appError = null; //clear out actual message box display vm.formState.errorBoxMessage = null; //Update the form status @@ -439,8 +439,8 @@ export default { if (triggeringChange || vm.formState.loading) { return; } - //If ref appears in the servererrors details collection, remove each one - var m = vm.$_.remove(vm.serverError.details, function(o) { + //If ref appears in the formState.serverErrors details collection, remove each one + var m = vm.$_.remove(vm.formState.serverError.details, function(o) { if (!o.target) { return false; } @@ -448,10 +448,13 @@ export default { }); //If there are no more errors in details then remove the whole thing as it's no longer required - if (vm.serverError.details && vm.serverError.details.length < 1) { - if (vm.serverError.code == "2200") { + if ( + vm.formState.serverError.details && + vm.formState.serverError.details.length < 1 + ) { + if (vm.formState.serverError.code == "2200") { //clear all keys from server error - vm.$gzutil.removeAllPropertiesFromObject(vm.serverError); + vm.$gzutil.removeAllPropertiesFromObject(vm.formState.serverError); } } diff --git a/ayanova/src/views/inventory-widget-edit.vue b/ayanova/src/views/inventory-widget-edit.vue index f0e81995..78d83e33 100644 --- a/ayanova/src/views/inventory-widget-edit.vue +++ b/ayanova/src/views/inventory-widget-edit.vue @@ -251,16 +251,15 @@ export default { data() { return { obj: {}, - serverError: {}, - - appError: null, formState: { ready: false, dirty: false, valid: true, readOnly: false, loading: true, - errorBoxMessage: null + errorBoxMessage: null, + appError: null, + serverError: {} } }; }, @@ -299,7 +298,7 @@ export default { .get(url) .then(res => { if (res.error) { - vm.serverError = res.error; + vm.formState.serverError = res.error; vm.$gzform.setErrorBoxErrors(vm); } else { vm.obj = res.data; @@ -335,7 +334,7 @@ export default { .then(res => { this.formState.loading = false; if (res.error) { - vm.serverError = res.error; + vm.formState.serverError = res.error; vm.$gzform.setErrorBoxErrors(vm); } else { vm.$gzform.setFormState({