From 3c74c1d75d9a1851b98bbbaeb3193c1ed2fa6f08 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Fri, 19 Jun 2020 22:20:58 +0000 Subject: [PATCH] --- ayanova/src/views/widget.vue | 51 +++++++++++++++++------------------- 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/ayanova/src/views/widget.vue b/ayanova/src/views/widget.vue index 5935ffb9..c253e3e7 100644 --- a/ayanova/src/views/widget.vue +++ b/ayanova/src/views/widget.vue @@ -548,36 +548,33 @@ export default { window.$gz.errorHandler.handleFormError(error, vm); } }, - duplicate() { + async duplicate() { let vm = this; - if (vm.canDuplicate && vm.$route.params.recordid != 0) { - vm.formState.loading = true; + if (!vm.canDuplicate || vm.$route.params.recordid == 0) { + return; + } + vm.formState.loading = true; + let url = API_BASE_URL + "duplicate/" + vm.$route.params.recordid; - let url = API_BASE_URL + "duplicate/" + vm.$route.params.recordid; - - //clear any errors vm might be around from previous submit + try { window.$gz.form.deleteAllErrorBoxErrors(vm); - window.$gz.api - .duplicate(url) - .then(res => { - vm.formState.loading = false; - if (res.error) { - vm.formState.serverError = res.error; - window.$gz.form.setErrorBoxErrors(vm); - } else { - //Navigate to new record - vm.$router.push( - window.$gz.api.replaceAfterLastSlash( - vm.$route.fullPath, - res.data.id - ) - ); - } - }) - .catch(function handleDuplicateError(error) { - vm.formState.loading = false; - window.$gz.errorHandler.handleFormError(error, vm); - }); + let res = await window.$gz.api.upsert(url); + vm.formState.loading = false; + if (res.error) { + vm.formState.serverError = res.error; + window.$gz.form.setErrorBoxErrors(vm); + } else { + //Navigate to new record + vm.$router.push( + window.$gz.api.replaceAfterLastSlash( + vm.$route.fullPath, + res.data.id + ) + ); + } + } catch (error) { + vm.formState.loading = false; + window.$gz.errorHandler.handleFormError(error, vm); } } }