This commit is contained in:
2020-02-21 23:36:19 +00:00
parent 11a6e933de
commit ac39d0b1b7
2 changed files with 15 additions and 16 deletions

View File

@@ -767,8 +767,8 @@ function loadFormSettings(vm) {
if (vm.listViewId == -1) { if (vm.listViewId == -1) {
//-1 is code for unsaved list view //-1 is code for unsaved list view
//check if there is a local copy of a listview vm was edited but not saved //check if there is a local copy of a listview vm was edited but not saved
if (formSettings.saved.dataTable.editedListView != undefined) { if (formSettings.saved.dataTable.unsavedListView != undefined) {
vm.listView = formSettings.saved.dataTable.editedListView; vm.listView = formSettings.saved.dataTable.unsavedListView;
} else { } else {
//listviewid is for unsaved but we have no unsaved so fix that up //listviewid is for unsaved but we have no unsaved so fix that up
vm.listView = undefined; vm.listView = undefined;

View File

@@ -434,16 +434,17 @@ export default {
// }, // },
//unsaved changes are actually valid for this form so no need to warn //unsaved changes are actually valid for this form so no need to warn
beforeRouteLeave(to, from, next) { beforeRouteLeave(to, from, next) {
//var vm = this; var vm = this;
if (this.formState.dirty) { if (this.formState.dirty) {
//Put in unsaved listview //Put in unsaved listview
//get current settings //debugger;
var formSettings = window.$gz.form.getFormSettings(vm.formKey); var formSettings = window.$gz.form.getFormSettings(vm.formKey);
formSettings.saved.dataTable.editedListView = generateListViewFromEdited( formSettings.saved.dataTable.unsavedListView = generateListViewFromEdited(
this vm
); );
formSettings.saved.dataTable.listViewId = -1;
window.$gz.form.setFormSettings(vm.formKey, formSettings); window.$gz.form.setFormSettings(vm.formKey, formSettings);
next();
} else { } else {
next(); next();
} }
@@ -486,10 +487,7 @@ export default {
dataListKey: undefined, dataListKey: undefined,
formKey: undefined, formKey: undefined,
fieldDefinitions: [], fieldDefinitions: [],
effectiveListView: undefined, effectiveListView: undefined,
editedListView: undefined,
editedName: "",
editedPublic: true,
concurrencyToken: undefined, concurrencyToken: undefined,
pickLists: { pickLists: {
dateFilterOperators: [], dateFilterOperators: [],
@@ -1129,8 +1127,9 @@ function setEffectiveListView(vm) {
var formSettings = window.$gz.form.getFormSettings(vm.formKey); var formSettings = window.$gz.form.getFormSettings(vm.formKey);
if (vm.listViewId == -1) { if (vm.listViewId == -1) {
if (formSettings.saved.dataTable.editedListView != null) { debugger;
vm.effectiveListView = formSettings.saved.dataTable.editedListView; if (formSettings.saved.dataTable.unsavedListView != null) {
vm.effectiveListView = formSettings.saved.dataTable.unsavedListView;
vm.obj.name = vm.lt("FilterUnsaved"); vm.obj.name = vm.lt("FilterUnsaved");
return Promise.resolve(); return Promise.resolve();
} }
@@ -1404,10 +1403,10 @@ function generateListViewFromEdited(vm) {
if (ev.filter.any) { if (ev.filter.any) {
f.any = true; f.any = true;
} }
for (var j = 0; j < e.filter.items; j++) { for (var j = 0; j < ev.filter.items; j++) {
f.items.push({ f.items.push({
op: e.filter.items[j].op, op: ev.filter.items[j].op,
value: e.filter.items[j].value value: ev.filter.items[j].value
}); });
} }
} }