This commit is contained in:
@@ -284,7 +284,7 @@ export default {
|
|||||||
window.$gz.errorHandler.handleFormError(error, vm);
|
window.$gz.errorHandler.handleFormError(error, vm);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
submit() {
|
async submit() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
let url = API_BASE_URL;
|
let url = API_BASE_URL;
|
||||||
//clear any errors vm might be around from previous submit
|
//clear any errors vm might be around from previous submit
|
||||||
@@ -306,64 +306,64 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//now set the template as a json string
|
try {
|
||||||
newObj.template = JSON.stringify(temp);
|
//now set the template as a json string
|
||||||
window.$gz.api
|
newObj.template = JSON.stringify(temp);
|
||||||
.upsert(url, newObj)
|
let res = await window.$gz.api.upsert(url, newObj);
|
||||||
.then(res => {
|
|
||||||
vm.formState.loading = false;
|
vm.formState.loading = false;
|
||||||
|
if (res.error) {
|
||||||
|
vm.formState.serverError = res.error;
|
||||||
|
window.$gz.form.setErrorBoxErrors(vm);
|
||||||
|
} else {
|
||||||
|
//It's a 204 no data response so no error means it's ok
|
||||||
|
//form is now clean
|
||||||
|
window.$gz.form.setFormState({
|
||||||
|
vm: vm,
|
||||||
|
dirty: false
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
vm.formState.loading = false;
|
||||||
|
window.$gz.errorHandler.handleFormError(error, vm);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async remove() {
|
||||||
|
let vm = this;
|
||||||
|
if (
|
||||||
|
(await window.$gz.dialog.confirmGeneric(
|
||||||
|
"ResetToDefault",
|
||||||
|
"warning"
|
||||||
|
)) !== true
|
||||||
|
) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
//do the delete
|
||||||
|
vm.formState.loading = true;
|
||||||
|
//No need to delete a new record, just abandon it...
|
||||||
|
if (vm.templateId && vm.templateId != 0) {
|
||||||
|
let url = API_BASE_URL + vm.templateId;
|
||||||
|
|
||||||
|
window.$gz.form.deleteAllErrorBoxErrors(vm);
|
||||||
|
let res = await window.$gz.api.remove(url);
|
||||||
|
|
||||||
if (res.error) {
|
if (res.error) {
|
||||||
vm.formState.serverError = res.error;
|
vm.formState.serverError = res.error;
|
||||||
window.$gz.form.setErrorBoxErrors(vm);
|
window.$gz.form.setErrorBoxErrors(vm);
|
||||||
} else {
|
} else {
|
||||||
//It's a 204 no data response so no error means it's ok
|
//trigger reload of form
|
||||||
//form is now clean
|
this.getDataFromApi();
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
dirty: false
|
|
||||||
});
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(function handleSubmitError(error) {
|
|
||||||
vm.formState.loading = false;
|
|
||||||
window.$gz.errorHandler.handleFormError(error, vm);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
remove() {
|
|
||||||
let vm = this;
|
|
||||||
window.$gz.dialog
|
|
||||||
.confirmGeneric("ResetToDefault", "warning")
|
|
||||||
.then(dialogResult => {
|
|
||||||
if (dialogResult == true) {
|
|
||||||
//do the delete
|
|
||||||
vm.formState.loading = true;
|
|
||||||
//No need to delete a new record, just abandon it...
|
|
||||||
if (vm.templateId && vm.templateId != 0) {
|
|
||||||
let url = API_BASE_URL + vm.templateId;
|
|
||||||
|
|
||||||
window.$gz.form.deleteAllErrorBoxErrors(vm);
|
|
||||||
window.$gz.api
|
|
||||||
.remove(url)
|
|
||||||
.then(res => {
|
|
||||||
if (res.error) {
|
|
||||||
vm.formState.serverError = res.error;
|
|
||||||
window.$gz.form.setErrorBoxErrors(vm);
|
|
||||||
} else {
|
|
||||||
//trigger reload of form
|
|
||||||
this.getDataFromApi();
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(function handleGetDataFromAPIError(error) {
|
|
||||||
//Update the form status
|
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
loading: false
|
|
||||||
});
|
|
||||||
window.$gz.errorHandler.handleFormError(error, vm);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
//Update the form status
|
||||||
|
window.$gz.form.setFormState({
|
||||||
|
vm: vm,
|
||||||
|
loading: false
|
||||||
});
|
});
|
||||||
|
window.$gz.errorHandler.handleFormError(error, vm);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -453,24 +453,21 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
let tKeysRequired = ["Include", "ResetToDefault"];
|
await window.$gz.translation.cacheTranslations(["Include", "ResetToDefault"]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//////////////////////
|
//////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
function populateSelectionLists(vm) {
|
async function populateSelectionLists(vm) {
|
||||||
return window.$gz.api.get(API_BASE_URL + "List").then(res => {
|
let res = await window.$gz.api.get(API_BASE_URL + "List");
|
||||||
if (res.error) {
|
if (res.error) {
|
||||||
window.$gz.errorHandler.handleFormError(res.error, vm);
|
window.$gz.errorHandler.handleFormError(res.error, vm);
|
||||||
} else {
|
} else {
|
||||||
vm.selectLists.pickListTemplates = res.data;
|
vm.selectLists.pickListTemplates = res.data;
|
||||||
window.$gz.form.addNoSelectionItem(vm.selectLists.pickListTemplates);
|
window.$gz.form.addNoSelectionItem(vm.selectLists.pickListTemplates);
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
|
|||||||
@@ -28,26 +28,26 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
created() {
|
async created() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
initForm(vm)
|
try {
|
||||||
.then(() => {
|
initForm(vm);
|
||||||
vm.rights = window.$gz.role.getRights(window.$gz.type.UserOptions);
|
|
||||||
vm.formState.ready = true;
|
|
||||||
// window.$gz.eventBus.$on("menu-click", clickHandler);
|
|
||||||
// //UserOptions never creates a new one so this code is a little different than other forms
|
|
||||||
// //NOTE: FOR NOW GOING TO ASSUME THIS FORM WILL ONLY EVER BE USED TO EDIT *CURRENT* USER'S USEROPTIONS
|
|
||||||
// //SO NOT FOR EDITING OTHER USERS, WILL ASSUME THE USER EDITOR FORM FOR MANAGEMENT WILL HAVE A COMPACT VERSION
|
|
||||||
// //OF THESE SAME FIELDS FOR THAT PURPOSE
|
|
||||||
// //SO ALWAYS USER CURRENT LOGGED IN USER ID FOR THIS
|
|
||||||
// //id 0 means create a new record don't load one but thats not applicable here
|
|
||||||
|
|
||||||
// vm.getDataFromApi();
|
vm.rights = window.$gz.role.getRights(window.$gz.type.UserOptions);
|
||||||
})
|
vm.formState.ready = true;
|
||||||
.catch(err => {
|
// window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||||
vm.formState.ready = true;
|
// //UserOptions never creates a new one so this code is a little different than other forms
|
||||||
window.$gz.errorHandler.handleFormError(err, vm);
|
// //NOTE: FOR NOW GOING TO ASSUME THIS FORM WILL ONLY EVER BE USED TO EDIT *CURRENT* USER'S USEROPTIONS
|
||||||
});
|
// //SO NOT FOR EDITING OTHER USERS, WILL ASSUME THE USER EDITOR FORM FOR MANAGEMENT WILL HAVE A COMPACT VERSION
|
||||||
|
// //OF THESE SAME FIELDS FOR THAT PURPOSE
|
||||||
|
// //SO ALWAYS USER CURRENT LOGGED IN USER ID FOR THIS
|
||||||
|
// //id 0 means create a new record don't load one but thats not applicable here
|
||||||
|
|
||||||
|
// vm.getDataFromApi();
|
||||||
|
} catch (err) {
|
||||||
|
vm.formState.ready = true;
|
||||||
|
window.$gz.errorHandler.handleFormError(err, vm);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -86,8 +86,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"UserInterfaceSettings",
|
"UserInterfaceSettings",
|
||||||
"PickListTemplates"
|
"PickListTemplates"
|
||||||
]);
|
]);
|
||||||
|
|||||||
@@ -203,20 +203,19 @@ const API_BASE_URL = null;
|
|||||||
const FORM_CUSTOM_TEMPLATE_KEY = null;
|
const FORM_CUSTOM_TEMPLATE_KEY = null;
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
created() {
|
async created() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
initForm(vm)
|
try {
|
||||||
.then(() => {
|
initForm(vm);
|
||||||
vm.rights = window.$gz.role.getRights(window.$gz.type.License);
|
vm.rights = window.$gz.role.getRights(window.$gz.type.License);
|
||||||
generateMenu(vm);
|
generateMenu(vm);
|
||||||
vm.formState.loading = false;
|
vm.formState.loading = false;
|
||||||
vm.formState.ready = true;
|
vm.formState.ready = true;
|
||||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||||
})
|
} catch (err) {
|
||||||
.catch(err => {
|
vm.formState.ready = true;
|
||||||
vm.formState.ready = true;
|
window.$gz.errorHandler.handleFormError(err, vm);
|
||||||
window.$gz.errorHandler.handleFormError(err, vm);
|
}
|
||||||
});
|
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
window.$gz.eventBus.$off("menu-click", clickHandler);
|
window.$gz.eventBus.$off("menu-click", clickHandler);
|
||||||
@@ -586,8 +585,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"RegisteredUser",
|
"RegisteredUser",
|
||||||
"DatabaseID",
|
"DatabaseID",
|
||||||
"LicenseSerial",
|
"LicenseSerial",
|
||||||
|
|||||||
@@ -127,19 +127,18 @@
|
|||||||
import ayaNovaVersion from "../api/ayanova-version";
|
import ayaNovaVersion from "../api/ayanova-version";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
created() {
|
async created() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
initForm(vm)
|
try {
|
||||||
.then(() => {
|
initForm(vm);
|
||||||
vm.formState.ready = true;
|
vm.formState.ready = true;
|
||||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||||
generateMenu(vm);
|
generateMenu(vm);
|
||||||
vm.formState.loading = false;
|
vm.formState.loading = false;
|
||||||
})
|
} catch (err) {
|
||||||
.catch(err => {
|
vm.formState.ready = true;
|
||||||
vm.formState.ready = true;
|
window.$gz.errorHandler.handleFormError(err, vm);
|
||||||
window.$gz.errorHandler.handleFormError(err, vm);
|
}
|
||||||
});
|
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
window.$gz.eventBus.$off("menu-click", clickHandler);
|
window.$gz.eventBus.$off("menu-click", clickHandler);
|
||||||
@@ -270,8 +269,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
let tKeysRequired = [
|
await window.$gz.translation.cacheTranslations([
|
||||||
"HelpAboutAyaNova",
|
"HelpAboutAyaNova",
|
||||||
"CopySupportInfo",
|
"CopySupportInfo",
|
||||||
"Server",
|
"Server",
|
||||||
@@ -293,22 +292,19 @@ function fetchTranslatedText(vm) {
|
|||||||
"LanguageCode",
|
"LanguageCode",
|
||||||
"TimeZone",
|
"TimeZone",
|
||||||
"CurrencyCode"
|
"CurrencyCode"
|
||||||
];
|
]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
//
|
//
|
||||||
function getServerInfo(vm) {
|
async function getServerInfo(vm) {
|
||||||
return window.$gz.api.get("server-info").then(res => {
|
let res = await window.$gz.api.get("server-info");
|
||||||
//We never expect there to be no data here
|
//We never expect there to be no data here
|
||||||
if (!res.data) {
|
if (!res.data) {
|
||||||
throw res;
|
throw res;
|
||||||
} else {
|
} else {
|
||||||
vm.serverInfo = res.data;
|
vm.serverInfo = res.data;
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
|
|||||||
@@ -63,43 +63,38 @@
|
|||||||
const FORM_KEY = "customize";
|
const FORM_KEY = "customize";
|
||||||
const API_BASE_URL = "form-custom/";
|
const API_BASE_URL = "form-custom/";
|
||||||
export default {
|
export default {
|
||||||
beforeRouteLeave(to, from, next) {
|
async beforeRouteLeave(to, from, next) {
|
||||||
//let vm = this;
|
if (!this.formState.dirty) {
|
||||||
if (this.formState.dirty) {
|
|
||||||
window.$gz.dialog.confirmLeaveUnsaved().then(dialogResult => {
|
|
||||||
if (dialogResult == true) {
|
|
||||||
next();
|
|
||||||
} else {
|
|
||||||
next(false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
next();
|
next();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if ((await window.$gz.dialog.confirmLeaveUnsaved()) === true) {
|
||||||
|
next();
|
||||||
|
} else {
|
||||||
|
next(false);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
window.$gz.eventBus.$off("menu-click", clickHandler);
|
window.$gz.eventBus.$off("menu-click", clickHandler);
|
||||||
},
|
},
|
||||||
created() {
|
async created() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
|
try {
|
||||||
|
initForm(vm);
|
||||||
|
|
||||||
initForm(vm)
|
vm.formState.readOnly = !vm.rights.change;
|
||||||
.then(() => {
|
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||||
vm.formState.readOnly = !vm.rights.change;
|
//NOTE: this would normally be in getDataFromAPI but this form doesn't really need that function so doing it here
|
||||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
//modify the menu as necessary
|
||||||
//NOTE: this would normally be in getDataFromAPI but this form doesn't really need that function so doing it here
|
generateMenu(vm, false); //default is never read only and passing in this vm
|
||||||
//modify the menu as necessary
|
//init disable save button so it can be enabled only on edit to show dirty form
|
||||||
generateMenu(vm, false); //default is never read only and passing in this vm
|
window.$gz.eventBus.$emit("menu-disable-item", FORM_KEY + ":save");
|
||||||
//init disable save button so it can be enabled only on edit to show dirty form
|
} catch (err) {
|
||||||
window.$gz.eventBus.$emit("menu-disable-item", FORM_KEY + ":save");
|
window.$gz.errorHandler.handleFormError(err, vm);
|
||||||
})
|
} finally {
|
||||||
.catch(err => {
|
vm.formState.ready = true;
|
||||||
window.$gz.errorHandler.handleFormError(err, vm);
|
vm.formState.loading = false;
|
||||||
})
|
}
|
||||||
.finally(function() {
|
|
||||||
vm.formState.ready = true;
|
|
||||||
vm.formState.loading = false;
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -170,7 +165,7 @@ export default {
|
|||||||
//nothing to scan here just set form dirty
|
//nothing to scan here just set form dirty
|
||||||
this.formState.dirty = true;
|
this.formState.dirty = true;
|
||||||
},
|
},
|
||||||
submit() {
|
async submit() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
|
|
||||||
vm.formState.loading = true;
|
vm.formState.loading = true;
|
||||||
@@ -217,42 +212,37 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
try {
|
||||||
|
//now set the template as a json string
|
||||||
|
newObj.template = JSON.stringify(temp);
|
||||||
|
let res = await window.$gz.api.upsert(url, newObj);
|
||||||
|
if (res.error) {
|
||||||
|
vm.formState.serverError = res.error;
|
||||||
|
window.$gz.form.setErrorBoxErrors(vm);
|
||||||
|
} else {
|
||||||
|
//Handle "put" of an existing record (UPDATE) (there is no POST of a new record for this particular object)
|
||||||
|
|
||||||
//now set the template as a json string
|
//Set store values for template and token
|
||||||
newObj.template = JSON.stringify(temp);
|
//(update our local cached copy of the form customizations)
|
||||||
|
window.$gz.formCustomTemplate.set(
|
||||||
|
vm.formCustomTemplateKey,
|
||||||
|
res.data.concurrency,
|
||||||
|
newObj.template
|
||||||
|
);
|
||||||
|
//set our local concurrency token value
|
||||||
|
vm.concurrency = res.data.concurrency;
|
||||||
|
|
||||||
window.$gz.api
|
//form is now clean
|
||||||
.upsert(url, newObj)
|
window.$gz.form.setFormState({
|
||||||
.then(res => {
|
vm: vm,
|
||||||
if (res.error) {
|
dirty: false
|
||||||
vm.formState.serverError = res.error;
|
});
|
||||||
window.$gz.form.setErrorBoxErrors(vm);
|
}
|
||||||
} else {
|
} catch (error) {
|
||||||
//Handle "put" of an existing record (UPDATE) (there is no POST of a new record for this particular object)
|
window.$gz.errorHandler.handleFormError(error, vm);
|
||||||
|
} finally {
|
||||||
//Set store values for template and token
|
vm.formState.loading = false;
|
||||||
//(update our local cached copy of the form customizations)
|
}
|
||||||
window.$gz.formCustomTemplate.set(
|
|
||||||
vm.formCustomTemplateKey,
|
|
||||||
res.data.concurrency,
|
|
||||||
newObj.template
|
|
||||||
);
|
|
||||||
//set our local concurrency token value
|
|
||||||
vm.concurrency = res.data.concurrency;
|
|
||||||
|
|
||||||
//form is now clean
|
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
dirty: false
|
|
||||||
});
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(function handleSubmitError(error) {
|
|
||||||
window.$gz.errorHandler.handleFormError(error, vm);
|
|
||||||
})
|
|
||||||
.finally(function() {
|
|
||||||
vm.formState.loading = false;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -341,11 +331,11 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
//NOTE: This form expects to arrive here from the form being customized
|
//NOTE: This form expects to arrive here from the form being customized
|
||||||
//so it does *not* attempt to fetch the translations for the field names of the form in question
|
//so it does *not* attempt to fetch the translations for the field names of the form in question
|
||||||
//since they should already be set by that form.
|
//since they should already be set by that form.
|
||||||
let tKeysRequired = [
|
await window.$gz.translation.cacheTranslations([
|
||||||
"FormFieldEntryRequired",
|
"FormFieldEntryRequired",
|
||||||
"FormFieldVisible",
|
"FormFieldVisible",
|
||||||
"UiFieldDataType",
|
"UiFieldDataType",
|
||||||
@@ -357,9 +347,7 @@ function fetchTranslatedText(vm) {
|
|||||||
"UiFieldDataTypesText",
|
"UiFieldDataTypesText",
|
||||||
"UiFieldDataTypesTimeOnly",
|
"UiFieldDataTypesTimeOnly",
|
||||||
"UiFieldDataTypesTrueFalse"
|
"UiFieldDataTypesTrueFalse"
|
||||||
];
|
]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////////
|
/////////////////////////////////
|
||||||
@@ -392,54 +380,52 @@ function ensureTemplateIsInStore(vm) {
|
|||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
//
|
//
|
||||||
function initDataObject(vm) {
|
async function initDataObject(vm) {
|
||||||
//Get all the fields *available* to this form (all the fields for the object defined in AyaFormFieldDefinitions.cs as SERVER)
|
//Get all the fields *available* to this form (all the fields for the object defined in AyaFormFieldDefinitions.cs as SERVER)
|
||||||
//Note: this is not the actual customization data, just the list of fields that could be customized (or not if required mandatory)
|
//Note: this is not the actual customization data, just the list of fields that could be customized (or not if required mandatory)
|
||||||
let url = "form-field-definition/" + vm.$route.params.formCustomTemplateKey;
|
let url = "form-field-definition/" + vm.$route.params.formCustomTemplateKey;
|
||||||
return window.$gz.api.get(url).then(res => {
|
let res = await window.$gz.api.get(url);
|
||||||
if (res.error) {
|
if (res.error) {
|
||||||
throw res.error;
|
throw res.error;
|
||||||
}
|
}
|
||||||
|
//set vm.obj to the combined synthesized snapshot array of template and availble fields for working data for this form
|
||||||
|
// - {key, ltdisplay, hideable, custom, required, hide, type}
|
||||||
|
//Iterate ObjectFields
|
||||||
|
//create a new object based on the f.a.f. item and any existing template values for that item
|
||||||
|
|
||||||
//set vm.obj to the combined synthesized snapshot array of template and availble fields for working data for this form
|
for (let i = 0; i < res.data.length; i++) {
|
||||||
// - {key, ltdisplay, hideable, custom, required, hide, type}
|
//get the formAvailableField record into an object to save typing
|
||||||
//Iterate ObjectFields
|
let faf = res.data[i];
|
||||||
//create a new object based on the f.a.f. item and any existing template values for that item
|
//get the customTemplate record for this field if it exists
|
||||||
|
|
||||||
for (let i = 0; i < res.data.length; i++) {
|
let templateItem = window.$gz.formCustomTemplate.getFieldTemplateValue(
|
||||||
//get the formAvailableField record into an object to save typing
|
vm.formCustomTemplateKey,
|
||||||
let faf = res.data[i];
|
faf.fieldKey
|
||||||
//get the customTemplate record for this field if it exists
|
);
|
||||||
|
|
||||||
let templateItem = window.$gz.formCustomTemplate.getFieldTemplateValue(
|
//handle non-existent template item (expected)
|
||||||
vm.formCustomTemplateKey,
|
if (templateItem == null) {
|
||||||
faf.fieldKey
|
templateItem = {
|
||||||
);
|
required: false,
|
||||||
|
hide: faf.isCustomField ? true : false, //hide if custom because it's not set to display if it's not present, all others are stock fields
|
||||||
//handle non-existent template item (expected)
|
type: 4 //text
|
||||||
if (templateItem == null) {
|
|
||||||
templateItem = {
|
|
||||||
required: false,
|
|
||||||
hide: faf.isCustomField ? true : false, //hide if custom because it's not set to display if it's not present, all others are stock fields
|
|
||||||
type: 4 //text
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
let objItem = {
|
|
||||||
key: faf.fieldKey,
|
|
||||||
title: vm.$ay.t(faf.tKey),
|
|
||||||
stockRequired: !faf.hideable,
|
|
||||||
custom: faf.isCustomField,
|
|
||||||
required: faf.hideable === false || templateItem.required === true,
|
|
||||||
visible: templateItem.hide !== true,
|
|
||||||
type: templateItem.type
|
|
||||||
};
|
};
|
||||||
|
|
||||||
vm.obj.push(objItem);
|
|
||||||
vm.concurrency = window.$gz.formCustomTemplate.getTemplateConcurrencyToken(
|
|
||||||
vm.formCustomTemplateKey
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
});
|
|
||||||
|
let objItem = {
|
||||||
|
key: faf.fieldKey,
|
||||||
|
title: vm.$ay.t(faf.tKey),
|
||||||
|
stockRequired: !faf.hideable,
|
||||||
|
custom: faf.isCustomField,
|
||||||
|
required: faf.hideable === false || templateItem.required === true,
|
||||||
|
visible: templateItem.hide !== true,
|
||||||
|
type: templateItem.type
|
||||||
|
};
|
||||||
|
|
||||||
|
vm.obj.push(objItem);
|
||||||
|
vm.concurrency = window.$gz.formCustomTemplate.getTemplateConcurrencyToken(
|
||||||
|
vm.formCustomTemplateKey
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -428,30 +428,26 @@ export default {
|
|||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
window.$gz.eventBus.$off("menu-click", clickHandler);
|
window.$gz.eventBus.$off("menu-click", clickHandler);
|
||||||
},
|
},
|
||||||
created() {
|
async created() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
|
try {
|
||||||
//set route values in data object so init form can handle
|
//set route values in data object so init form can handle
|
||||||
vm.dataListKey = this.$route.params.dataListKey;
|
vm.dataListKey = this.$route.params.dataListKey;
|
||||||
vm.listViewId = this.$route.params.listViewId;
|
vm.listViewId = this.$route.params.listViewId;
|
||||||
vm.formKey = this.$route.params.formKey;
|
vm.formKey = this.$route.params.formKey;
|
||||||
|
await initForm(vm);
|
||||||
initForm(vm)
|
vm.formState.ready = true;
|
||||||
.then(() => {
|
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||||
vm.formState.ready = true;
|
//NOTE: this would normally be in getDataFromAPI but this form doesn't really need that function so doing it here
|
||||||
|
//modify the menu as necessary
|
||||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
generateMenu(vm, false); //default is never read only and passing in this vm
|
||||||
//NOTE: this would normally be in getDataFromAPI but this form doesn't really need that function so doing it here
|
//init disable save button so it can be enabled only on edit to show dirty form
|
||||||
//modify the menu as necessary
|
window.$gz.eventBus.$emit("menu-disable-item", FORM_KEY + ":save");
|
||||||
generateMenu(vm, false); //default is never read only and passing in this vm
|
vm.formState.loading = false;
|
||||||
//init disable save button so it can be enabled only on edit to show dirty form
|
} catch (err) {
|
||||||
window.$gz.eventBus.$emit("menu-disable-item", FORM_KEY + ":save");
|
vm.formState.ready = true;
|
||||||
vm.formState.loading = false;
|
window.$gz.errorHandler.handleFormError(err, vm);
|
||||||
})
|
}
|
||||||
.catch(err => {
|
|
||||||
vm.formState.ready = true;
|
|
||||||
window.$gz.errorHandler.handleFormError(err, vm);
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -678,7 +674,7 @@ export default {
|
|||||||
window.$gz.form.fieldValueChanged(this, ref);
|
window.$gz.form.fieldValueChanged(this, ref);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
submit() {
|
async submit() {
|
||||||
if (this.canSave) {
|
if (this.canSave) {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
//check that "unsaved filter" is not the name
|
//check that "unsaved filter" is not the name
|
||||||
@@ -709,109 +705,103 @@ export default {
|
|||||||
|
|
||||||
//clear any errors vm might be around from previous submit
|
//clear any errors vm might be around from previous submit
|
||||||
window.$gz.form.deleteAllErrorBoxErrors(this);
|
window.$gz.form.deleteAllErrorBoxErrors(this);
|
||||||
window.$gz.api
|
try {
|
||||||
.upsert(url, lvSave)
|
let res = await window.$gz.api.upsert(url, lvSave);
|
||||||
.then(res => {
|
|
||||||
vm.formState.loading = false;
|
vm.formState.loading = false;
|
||||||
if (res.error) {
|
if (res.error) {
|
||||||
vm.formState.serverError = res.error;
|
vm.formState.serverError = res.error;
|
||||||
window.$gz.form.setErrorBoxErrors(vm);
|
window.$gz.form.setErrorBoxErrors(vm);
|
||||||
|
} else {
|
||||||
|
//successfully updated regardless if POST or PUT so update the local cache
|
||||||
|
//Update the formSettings now that it's saved
|
||||||
|
let formSettings = window.$gz.form.getFormSettings(vm.formKey);
|
||||||
|
formSettings.temp.cachedListView = lvSave.listView;
|
||||||
|
formSettings.saved.dataTable.unsavedListView = null;
|
||||||
|
formSettings.saved.dataTable.listViewId =
|
||||||
|
res.data.id || vm.listViewId; //if res.data.id then a post, if null then a put and vm.listviewId has the id
|
||||||
|
window.$gz.form.setFormSettings(vm.formKey, formSettings);
|
||||||
|
|
||||||
|
//Logic for detecting if a post or put: if id then it was a post, if no id then it was a put
|
||||||
|
if (res.data.id) {
|
||||||
|
//Handle "post" of new record (CREATE)
|
||||||
|
|
||||||
|
//No longer dirty
|
||||||
|
window.$gz.form.setFormState({
|
||||||
|
vm: vm,
|
||||||
|
dirty: false
|
||||||
|
});
|
||||||
|
|
||||||
|
//change url to new record
|
||||||
|
vm.$router.replace(
|
||||||
|
window.$gz.api.replaceAfterLastSlash(
|
||||||
|
vm.$route.fullPath,
|
||||||
|
res.data.id
|
||||||
|
)
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
//successfully updated regardless if POST or PUT so update the local cache
|
//Handle "put" of an existing record (UPDATE)
|
||||||
//Update the formSettings now that it's saved
|
vm.obj.concurrency = res.data.concurrency;
|
||||||
let formSettings = window.$gz.form.getFormSettings(vm.formKey);
|
window.$gz.form.setFormState({
|
||||||
formSettings.temp.cachedListView = lvSave.listView;
|
vm: vm,
|
||||||
formSettings.saved.dataTable.unsavedListView = null;
|
dirty: false
|
||||||
formSettings.saved.dataTable.listViewId =
|
});
|
||||||
res.data.id || vm.listViewId; //if res.data.id then a post, if null then a put and vm.listviewId has the id
|
|
||||||
window.$gz.form.setFormSettings(vm.formKey, formSettings);
|
|
||||||
|
|
||||||
//Logic for detecting if a post or put: if id then it was a post, if no id then it was a put
|
|
||||||
if (res.data.id) {
|
|
||||||
//Handle "post" of new record (CREATE)
|
|
||||||
|
|
||||||
//No longer dirty
|
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
dirty: false
|
|
||||||
});
|
|
||||||
|
|
||||||
//change url to new record
|
|
||||||
vm.$router.replace(
|
|
||||||
window.$gz.api.replaceAfterLastSlash(
|
|
||||||
vm.$route.fullPath,
|
|
||||||
res.data.id
|
|
||||||
)
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
//Handle "put" of an existing record (UPDATE)
|
|
||||||
vm.obj.concurrency = res.data.concurrency;
|
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
dirty: false
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
}
|
||||||
.catch(function handleSubmitError(error) {
|
} catch (error) {
|
||||||
vm.formState.loading = false;
|
vm.formState.loading = false;
|
||||||
window.$gz.errorHandler.handleFormError(error, vm);
|
window.$gz.errorHandler.handleFormError(error, vm);
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
remove() {
|
async remove() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
window.$gz.dialog.confirmDelete().then(dialogResult => {
|
try {
|
||||||
if (dialogResult == true) {
|
if ((await window.$gz.dialog.confirmDelete()) !== true) {
|
||||||
//do the delete
|
return;
|
||||||
vm.formState.loading = true;
|
}
|
||||||
//No need to delete a non saved record, just abandon it...
|
//do the delete
|
||||||
if (vm.listViewId < 1) {
|
vm.formState.loading = true;
|
||||||
//this should not get offered for delete but to be safe and clear just in case:
|
//No need to delete a non saved record, just abandon it...
|
||||||
|
if (vm.listViewId < 1) {
|
||||||
|
//this should not get offered for delete but to be safe and clear just in case:
|
||||||
|
JUST_DELETED = true;
|
||||||
|
// navigate backwards
|
||||||
|
vm.$router.go(-1);
|
||||||
|
} else {
|
||||||
|
let url = API_BASE_URL + vm.listViewId;
|
||||||
|
|
||||||
|
window.$gz.form.deleteAllErrorBoxErrors(vm);
|
||||||
|
let res = await window.$gz.api.remove(url);
|
||||||
|
|
||||||
|
if (res.error) {
|
||||||
|
vm.formState.serverError = res.error;
|
||||||
|
window.$gz.form.setErrorBoxErrors(vm);
|
||||||
|
} else {
|
||||||
|
//workaround to prevent warning about leaving dirty record
|
||||||
|
//For some reason I couldn't just reset isdirty in formstate
|
||||||
JUST_DELETED = true;
|
JUST_DELETED = true;
|
||||||
|
|
||||||
|
//set it to the default list view so the caller doesn't try to load the non-existant deleted view it was just working with
|
||||||
|
let formSettings = window.$gz.form.getFormSettings(vm.formKey);
|
||||||
|
formSettings.temp.cachedListView = null;
|
||||||
|
formSettings.saved.dataTable.unsavedListView = null;
|
||||||
|
formSettings.saved.dataTable.listViewId = 0;
|
||||||
|
window.$gz.form.setFormSettings(vm.formKey, formSettings);
|
||||||
// navigate backwards
|
// navigate backwards
|
||||||
vm.$router.go(-1);
|
vm.$router.go(-1);
|
||||||
} else {
|
|
||||||
let url = API_BASE_URL + vm.listViewId;
|
|
||||||
|
|
||||||
window.$gz.form.deleteAllErrorBoxErrors(vm);
|
|
||||||
window.$gz.api
|
|
||||||
.remove(url)
|
|
||||||
.then(res => {
|
|
||||||
if (res.error) {
|
|
||||||
vm.formState.serverError = res.error;
|
|
||||||
window.$gz.form.setErrorBoxErrors(vm);
|
|
||||||
} else {
|
|
||||||
//workaround to prevent warning about leaving dirty record
|
|
||||||
//For some reason I couldn't just reset isdirty in formstate
|
|
||||||
JUST_DELETED = true;
|
|
||||||
|
|
||||||
//set it to the default list view so the caller doesn't try to load the non-existant deleted view it was just working with
|
|
||||||
let formSettings = window.$gz.form.getFormSettings(
|
|
||||||
vm.formKey
|
|
||||||
);
|
|
||||||
formSettings.temp.cachedListView = null;
|
|
||||||
formSettings.saved.dataTable.unsavedListView = null;
|
|
||||||
formSettings.saved.dataTable.listViewId = 0;
|
|
||||||
window.$gz.form.setFormSettings(vm.formKey, formSettings);
|
|
||||||
|
|
||||||
// navigate backwards
|
|
||||||
vm.$router.go(-1);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.catch(function handleGetDataFromAPIError(error) {
|
|
||||||
//Update the form status
|
|
||||||
window.$gz.form.setFormState({
|
|
||||||
vm: vm,
|
|
||||||
loading: false
|
|
||||||
});
|
|
||||||
window.$gz.errorHandler.handleFormError(error, vm);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
} catch (error) {
|
||||||
|
//Update the form status
|
||||||
|
window.$gz.form.setFormState({
|
||||||
|
vm: vm,
|
||||||
|
loading: false
|
||||||
|
});
|
||||||
|
window.$gz.errorHandler.handleFormError(error, vm);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
duplicate() {
|
async duplicate() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
if (this.canDuplicate && vm.listViewId > 0) {
|
if (this.canDuplicate && vm.listViewId > 0) {
|
||||||
this.formState.loading = true;
|
this.formState.loading = true;
|
||||||
@@ -820,40 +810,39 @@ export default {
|
|||||||
|
|
||||||
//clear any errors vm might be around from previous submit
|
//clear any errors vm might be around from previous submit
|
||||||
window.$gz.form.deleteAllErrorBoxErrors(this);
|
window.$gz.form.deleteAllErrorBoxErrors(this);
|
||||||
window.$gz.api
|
try {
|
||||||
.duplicate(url)
|
let res = await 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 {
|
|
||||||
//switch to the new record in the formsettings
|
|
||||||
let formSettings = window.$gz.form.getFormSettings(vm.formKey);
|
|
||||||
formSettings.temp.cachedListView = null;
|
|
||||||
formSettings.saved.dataTable.unsavedListView = null;
|
|
||||||
formSettings.saved.dataTable.listViewId = res.data.id;
|
|
||||||
window.$gz.form.setFormSettings(vm.formKey, formSettings);
|
|
||||||
|
|
||||||
//Set some values that otherwise don't get updated because we're not really navigating fresh
|
vm.formState.loading = false;
|
||||||
vm.obj.name = res.data.name;
|
if (res.error) {
|
||||||
vm.obj.concurrency = res.data.concurrency;
|
vm.formState.serverError = res.error;
|
||||||
vm.listViewId = res.data.id;
|
window.$gz.form.setErrorBoxErrors(vm);
|
||||||
//Navigate to new record
|
} else {
|
||||||
//NOTE: this doesn't really update the form at all so need to set some th9ings
|
//switch to the new record in the formsettings
|
||||||
vm.$router.push(
|
let formSettings = window.$gz.form.getFormSettings(vm.formKey);
|
||||||
vm.$route.fullPath.slice(0, -1) + res.data.id
|
formSettings.temp.cachedListView = null;
|
||||||
// window.$gz.api.replaceAfterLastSlash(
|
formSettings.saved.dataTable.unsavedListView = null;
|
||||||
// vm.$route.fullPath,
|
formSettings.saved.dataTable.listViewId = res.data.id;
|
||||||
// res.data.id
|
window.$gz.form.setFormSettings(vm.formKey, formSettings);
|
||||||
// )
|
|
||||||
);
|
//Set some values that otherwise don't get updated because we're not really navigating fresh
|
||||||
}
|
vm.obj.name = res.data.name;
|
||||||
})
|
vm.obj.concurrency = res.data.concurrency;
|
||||||
.catch(function handleDuplicateError(error) {
|
vm.listViewId = res.data.id;
|
||||||
vm.formState.loading = false;
|
//Navigate to new record
|
||||||
window.$gz.errorHandler.handleFormError(error, vm);
|
//NOTE: this doesn't really update the form at all so need to set some th9ings
|
||||||
});
|
vm.$router.push(
|
||||||
|
vm.$route.fullPath.slice(0, -1) + res.data.id
|
||||||
|
// window.$gz.api.replaceAfterLastSlash(
|
||||||
|
// vm.$route.fullPath,
|
||||||
|
// res.data.id
|
||||||
|
// )
|
||||||
|
);
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
vm.formState.loading = false;
|
||||||
|
window.$gz.errorHandler.handleFormError(error, vm);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -958,8 +947,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
let tKeysRequired = [
|
await window.$gz.translation.cacheTranslations([
|
||||||
"DataListView",
|
"DataListView",
|
||||||
"GridFilterName",
|
"GridFilterName",
|
||||||
"Include",
|
"Include",
|
||||||
@@ -1004,9 +993,7 @@ function fetchTranslatedText(vm) {
|
|||||||
"True",
|
"True",
|
||||||
"False",
|
"False",
|
||||||
"Name"
|
"Name"
|
||||||
];
|
]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////////
|
/////////////////////////////////
|
||||||
@@ -1158,39 +1145,35 @@ function populateSelectionLists(vm) {
|
|||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
//
|
//
|
||||||
function populateFieldDefinitions(vm) {
|
async function populateFieldDefinitions(vm) {
|
||||||
//http://localhost:7575/api/v8/data-list/listfields?DataListKey=TestWidgetDataList
|
//http://localhost:7575/api/v8/data-list/listfields?DataListKey=TestWidgetDataList
|
||||||
return window.$gz.api
|
let res = await window.$gz.api.get(
|
||||||
.get("data-list/listfields?DataListKey=" + vm.dataListKey)
|
"data-list/listfields?DataListKey=" + vm.dataListKey
|
||||||
.then(res => {
|
);
|
||||||
if (res.error) {
|
if (res.error) {
|
||||||
throw res.error;
|
throw res.error;
|
||||||
} else {
|
} else {
|
||||||
vm.fieldDefinitions = res.data;
|
vm.fieldDefinitions = res.data;
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// Ensures column names are present in translation table
|
// Ensures column names are present in translation table
|
||||||
//
|
//
|
||||||
function fetchTranslatedFieldNames(vm) {
|
async function fetchTranslatedFieldNames(vm) {
|
||||||
let columnKeys = [];
|
let columnKeys = [];
|
||||||
for (let i = 1; i < vm.fieldDefinitions.length; i++) {
|
for (let i = 1; i < vm.fieldDefinitions.length; i++) {
|
||||||
let cm = vm.fieldDefinitions[i];
|
let cm = vm.fieldDefinitions[i];
|
||||||
columnKeys.push(cm.tKey);
|
columnKeys.push(cm.tKey);
|
||||||
}
|
}
|
||||||
//Now fetch all the keys and await the response before returning
|
await window.$gz.translation.cacheTranslations(columnKeys);
|
||||||
return window.$gz.translation.cacheTranslations(columnKeys).then(() => {
|
|
||||||
return;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////////
|
/////////////////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
function setEffectiveListView(vm) {
|
async function setEffectiveListView(vm) {
|
||||||
/*
|
/*
|
||||||
effectiveListView
|
effectiveListView
|
||||||
- Second get the ListView that is currently in use so can setup the page view
|
- Second get the ListView that is currently in use so can setup the page view
|
||||||
@@ -1217,29 +1200,28 @@ function setEffectiveListView(vm) {
|
|||||||
} else if (vm.listViewId == 0) {
|
} else if (vm.listViewId == 0) {
|
||||||
//get default list view
|
//get default list view
|
||||||
//http://localhost:7575/api/v8/DataListView/default/TestWidgetDataList
|
//http://localhost:7575/api/v8/DataListView/default/TestWidgetDataList
|
||||||
return window.$gz.api
|
let res = await window.$gz.api.get(
|
||||||
.get("data-list-view/default/" + vm.dataListKey)
|
"data-list-view/default/" + vm.dataListKey
|
||||||
.then(res => {
|
);
|
||||||
if (res.error) {
|
|
||||||
throw res.error;
|
if (res.error) {
|
||||||
} else {
|
throw res.error;
|
||||||
vm.effectiveListView = JSON.parse(res.data);
|
} else {
|
||||||
vm.obj.name = vm.$ay.t("FilterUnsaved");
|
vm.effectiveListView = JSON.parse(res.data);
|
||||||
}
|
vm.obj.name = vm.$ay.t("FilterUnsaved");
|
||||||
});
|
}
|
||||||
} else {
|
} else {
|
||||||
//listview has an id value
|
//listview has an id value
|
||||||
return window.$gz.api.get("data-list-view/" + vm.listViewId).then(res => {
|
let res = await window.$gz.api.get("data-list-view/" + vm.listViewId);
|
||||||
if (res.error) {
|
if (res.error) {
|
||||||
throw res.error;
|
throw res.error;
|
||||||
} else {
|
} else {
|
||||||
vm.effectiveListView = JSON.parse(res.data.listView);
|
vm.effectiveListView = JSON.parse(res.data.listView);
|
||||||
vm.obj.public = res.data.public;
|
vm.obj.public = res.data.public;
|
||||||
vm.obj.name = res.data.name;
|
vm.obj.name = res.data.name;
|
||||||
vm.obj.concurrency = res.data.concurrency;
|
vm.obj.concurrency = res.data.concurrency;
|
||||||
vm.obj.userId = res.data.userId;
|
vm.obj.userId = res.data.userId;
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -79,25 +79,25 @@
|
|||||||
|
|
||||||
const FORM_KEY = "ay-evaluate";
|
const FORM_KEY = "ay-evaluate";
|
||||||
export default {
|
export default {
|
||||||
created() {
|
async created() {
|
||||||
let vm = this;
|
let vm = this;
|
||||||
initForm(vm)
|
try {
|
||||||
.then(() => {
|
await initForm(vm);
|
||||||
vm.obj.timeZoneOffset =
|
|
||||||
Math.floor(new Date().getTimezoneOffset() / 60) * -1;
|
vm.obj.timeZoneOffset =
|
||||||
//get rights to generate sample data and erase db I guess
|
Math.floor(new Date().getTimezoneOffset() / 60) * -1;
|
||||||
vm.rights = window.$gz.role.getRights(window.$gz.type.TrialSeeder);
|
//get rights to generate sample data and erase db I guess
|
||||||
//set form readonly if it's so
|
vm.rights = window.$gz.role.getRights(window.$gz.type.TrialSeeder);
|
||||||
vm.formState.readOnly = !vm.rights.change;
|
//set form readonly if it's so
|
||||||
generateMenu(vm);
|
vm.formState.readOnly = !vm.rights.change;
|
||||||
vm.formState.ready = true;
|
generateMenu(vm);
|
||||||
vm.formState.loading = false;
|
vm.formState.ready = true;
|
||||||
window.$gz.eventBus.$on("menu-click", clickHandler);
|
vm.formState.loading = false;
|
||||||
})
|
window.$gz.eventBus.$on("menu-click", clickHandler);
|
||||||
.catch(err => {
|
} catch (err) {
|
||||||
vm.formState.ready = true;
|
vm.formState.ready = true;
|
||||||
window.$gz.errorHandler.handleFormError(err, vm);
|
window.$gz.errorHandler.handleFormError(err, vm);
|
||||||
});
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
@@ -300,8 +300,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"Welcome",
|
"Welcome",
|
||||||
"GenerateSampleData",
|
"GenerateSampleData",
|
||||||
"EvaluationGuide",
|
"EvaluationGuide",
|
||||||
|
|||||||
@@ -465,8 +465,8 @@ function populateEventTypeList(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"EventDeleted",
|
"EventDeleted",
|
||||||
"EventCreated",
|
"EventCreated",
|
||||||
"EventRetrieved",
|
"EventRetrieved",
|
||||||
|
|||||||
@@ -310,8 +310,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"UserLogin",
|
"UserLogin",
|
||||||
"OldPassword",
|
"OldPassword",
|
||||||
"NewPassword",
|
"NewPassword",
|
||||||
|
|||||||
@@ -375,8 +375,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"TooManyResults",
|
"TooManyResults",
|
||||||
"NoResults",
|
"NoResults",
|
||||||
"Object"
|
"Object"
|
||||||
|
|||||||
@@ -430,8 +430,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"CurrencyCode",
|
"CurrencyCode",
|
||||||
"LanguageCode",
|
"LanguageCode",
|
||||||
"TimeZone",
|
"TimeZone",
|
||||||
|
|||||||
@@ -427,8 +427,8 @@ function initForm(vm) {
|
|||||||
//////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"BackupSettings",
|
"BackupSettings",
|
||||||
"BackupTime",
|
"BackupTime",
|
||||||
"BackupLast",
|
"BackupLast",
|
||||||
|
|||||||
@@ -257,9 +257,7 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
let tKeysRequired = ["OpsTestJob"];
|
await window.$gz.translation.cacheTranslations(["OpsTestJob"]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -213,10 +213,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
let tKeysRequired = ["OpsTestJob", "Log"];
|
await window.$gz.translation.cacheTranslations(["OpsTestJob", "Log"]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//////////////////////
|
//////////////////////
|
||||||
|
|||||||
@@ -543,8 +543,8 @@ function populateSelectionLists(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
let tKeysRequired = [
|
await window.$gz.translation.cacheTranslations([
|
||||||
"DateRangePast6Hours",
|
"DateRangePast6Hours",
|
||||||
"DateRangePast24Hours",
|
"DateRangePast24Hours",
|
||||||
"DateRangePast7Days",
|
"DateRangePast7Days",
|
||||||
@@ -563,8 +563,6 @@ function fetchTranslatedText(vm) {
|
|||||||
"MetricAllocatedMemory",
|
"MetricAllocatedMemory",
|
||||||
"MetricWorkingSet",
|
"MetricWorkingSet",
|
||||||
"MetricPrivateBytes"
|
"MetricPrivateBytes"
|
||||||
];
|
]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -149,9 +149,7 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
let tKeysRequired = ["ServerProfiler"];
|
await window.$gz.translation.cacheTranslations(["ServerProfiler"]);
|
||||||
|
|
||||||
return window.$gz.translation.cacheTranslations(tKeysRequired);
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -299,8 +299,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"ServerStateOpen",
|
"ServerStateOpen",
|
||||||
"ServerStateOps",
|
"ServerStateOps",
|
||||||
"ServerStateReason"
|
"ServerStateReason"
|
||||||
|
|||||||
@@ -738,8 +738,8 @@ function initForm(vm) {
|
|||||||
//
|
//
|
||||||
// Ensures UI translated text is available
|
// Ensures UI translated text is available
|
||||||
//
|
//
|
||||||
function fetchTranslatedText(vm) {
|
async function fetchTranslatedText(vm) {
|
||||||
return window.$gz.translation.cacheTranslations([
|
await window.$gz.translation.cacheTranslations([
|
||||||
"Widget",
|
"Widget",
|
||||||
"WidgetName",
|
"WidgetName",
|
||||||
"WidgetSerial",
|
"WidgetSerial",
|
||||||
|
|||||||
Reference in New Issue
Block a user