moved t function to global and misc cleanup

This commit is contained in:
2020-04-04 17:06:25 +00:00
parent 90c388ecc2
commit 43de3c8fb0
20 changed files with 242 additions and 286 deletions

View File

@@ -52,6 +52,8 @@ todo: global vue
- find all stuff defined in vue data objects as methods solely for the consumption of the template like translation (t()) and move to global vue object in main - find all stuff defined in vue data objects as methods solely for the consumption of the template like translation (t()) and move to global vue object in main
- stuff not needed by templates should stay where it is in window - stuff not needed by templates should stay where it is in window
- Lodash might be an exception - Lodash might be an exception
- search and change this: if (window.$gz.errorHandler.devMode()) { if possible
- search change this: this.$root.$gz.translation.get("More") // if possible, also is it really needed to be on that root thing anyway now that I know how to do global
todo: change all testing data-cy attributes to conditional see ay-customize for example todo: change all testing data-cy attributes to conditional see ay-customize for example
- :data-cy="!!enableCypress ? item.key : false" - :data-cy="!!enableCypress ? item.key : false"

View File

@@ -47,9 +47,6 @@ export default {
} }
}, },
methods: { methods: {
translation() {
return window.$gz.translation;
},
handleInput(value) { handleInput(value) {
let ret = parseCurrency(value, { let ret = parseCurrency(value, {
currency: this.currencyName, currency: this.currencyName,

View File

@@ -1,7 +1,7 @@
<template> <template>
<div v-if="templateHasVisibleCustomFields()"> <div v-if="templateHasVisibleCustomFields()">
<span class="v-label v-label--active theme--light"> <span class="v-label v-label--active theme--light">
{{ t("ObjectCustomFieldCustomGrid") }} {{ $ay.t("ObjectCustomFieldCustomGrid") }}
</span> </span>
<div> <div>
<v-row align-center justify-left row wrap> <v-row align-center justify-left row wrap>
@@ -20,12 +20,17 @@
<gz-date-time-picker <gz-date-time-picker
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
></gz-date-time-picker> ></gz-date-time-picker>
</div> </div>
@@ -35,12 +40,17 @@
<gz-date-picker <gz-date-picker
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
></gz-date-picker> ></gz-date-picker>
</div> </div>
@@ -49,12 +59,17 @@
<gz-time-picker <gz-time-picker
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
></gz-time-picker> ></gz-time-picker>
</div> </div>
@@ -63,12 +78,17 @@
<v-textarea <v-textarea
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
auto-grow auto-grow
clearable clearable
@@ -79,12 +99,17 @@
<v-text-field <v-text-field
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
clearable clearable
:counter="10" :counter="10"
@@ -97,12 +122,17 @@
<v-checkbox <v-checkbox
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
></v-checkbox> ></v-checkbox>
</div> </div>
@@ -111,12 +141,17 @@
<gz-decimal <gz-decimal
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
></gz-decimal> ></gz-decimal>
</div> </div>
@@ -125,12 +160,17 @@
<gz-currency <gz-currency
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readOnly" :readonly="readOnly"
:label="t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="item.fld" :data-cy="item.fld"
:error-messages="form().serverErrors(parentVM, item.fld)" :error-messages="form().serverErrors(parentVM, item.fld)"
:rules="[ :rules="[
form().customFieldsCheck(parentVM, item, _self, t(item.fld)) form().customFieldsCheck(
parentVM,
item,
_self,
$ay.t(item.fld)
)
]" ]"
></gz-currency> ></gz-currency>
</div> </div>
@@ -166,9 +206,6 @@ export default {
}, },
methods: { methods: {
t: function(tKey) {
return window.$gz.translation.get(tKey);
},
form() { form() {
//nothing //nothing
return window.$gz.form; return window.$gz.form;
@@ -433,9 +470,6 @@ export default {
if (!window.$gz._) { if (!window.$gz._) {
throw "custom-fields-control: $gz._ (lodash) is required and missing"; throw "custom-fields-control: $gz._ (lodash) is required and missing";
} }
if (!window.$gz.translation) {
throw "custom-fields-control: $gz.translation is required and missing";
}
} }
}, },
created() { created() {

View File

@@ -18,7 +18,7 @@
<v-date-picker :locale="defaultLocale" v-model="dateOnly"> <v-date-picker :locale="defaultLocale" v-model="dateOnly">
<v-spacer></v-spacer> <v-spacer></v-spacer>
<v-btn text color="primary" @click="dlgdate = false">{{ <v-btn text color="primary" @click="dlgdate = false">{{
t("OK") $ay.t("OK")
}}</v-btn> }}</v-btn>
</v-date-picker> </v-date-picker>
</v-dialog> </v-dialog>
@@ -59,11 +59,6 @@ export default {
required: false required: false
} }
}, },
methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
}
},
watch: { watch: {
date() { date() {
//this tortuous fuckery is required so that the input and change events only fire on a real change, not initial page load //this tortuous fuckery is required so that the input and change events only fire on a real change, not initial page load

View File

@@ -29,7 +29,7 @@
> >
<v-spacer></v-spacer> <v-spacer></v-spacer>
<v-btn text color="primary" @click="dlgdate = false">{{ <v-btn text color="primary" @click="dlgdate = false">{{
t("OK") $ay.t("OK")
}}</v-btn> }}</v-btn>
</v-date-picker> </v-date-picker>
</v-dialog> </v-dialog>
@@ -62,7 +62,7 @@
> >
<v-spacer></v-spacer> <v-spacer></v-spacer>
<v-btn text color="primary" @click="dlgtime = false">{{ <v-btn text color="primary" @click="dlgtime = false">{{
t("OK") $ay.t("OK")
}}</v-btn> }}</v-btn>
</v-time-picker> </v-time-picker>
</v-dialog> </v-dialog>
@@ -105,11 +105,6 @@ export default {
}, },
testId: String testId: String
}, },
methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
}
},
watch: { watch: {
date() { date() {
//this tortuous fuckery is required so that the input and change events only fire on a real change, not initial page load //this tortuous fuckery is required so that the input and change events only fire on a real change, not initial page load

View File

@@ -47,9 +47,6 @@ export default {
} }
}, },
methods: { methods: {
translation() {
return window.$gz.translation;
},
handleInput(value) { handleInput(value) {
this.$emit( this.$emit(
"input", "input",

View File

@@ -17,7 +17,7 @@
:items="selectLists.listViews" :items="selectLists.listViews"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('DataListView')" :label="$ay.t('DataListView')"
@input="listViewChanged" @input="listViewChanged"
data-cy="selectlistview" data-cy="selectlistview"
> >
@@ -37,7 +37,7 @@
class="headline ml-3 accent--text" class="headline ml-3 accent--text"
v-if="!loading && records.length < 1" v-if="!loading && records.length < 1"
> >
{{ t("NoData") }} {{ $ay.t("NoData") }}
</div> </div>
<!-- WIDE TABLE VIEW --> <!-- WIDE TABLE VIEW -->
<template v-if="$vuetify.breakpoint.smAndUp"> <template v-if="$vuetify.breakpoint.smAndUp">
@@ -55,11 +55,11 @@
showCurrentPage: true, showCurrentPage: true,
showFirstLastPage: true, showFirstLastPage: true,
itemsPerPageOptions: rowsPerPageItems, itemsPerPageOptions: rowsPerPageItems,
itemsPerPageText: t('RowsPerPage'), itemsPerPageText: $ay.t('RowsPerPage'),
pageText: t('PageOfPageText') pageText: $ay.t('PageOfPageText')
}" }"
:loading-text="t('Loading')" :loading-text="$ay.t('Loading')"
:no-data-text="t('NoData')" :no-data-text="$ay.t('NoData')"
class="elevation-1" class="elevation-1"
data-cy="datatable-wide" data-cy="datatable-wide"
> >
@@ -173,15 +173,15 @@
showCurrentPage: true, showCurrentPage: true,
showFirstLastPage: true, showFirstLastPage: true,
itemsPerPageOptions: rowsPerPageItems, itemsPerPageOptions: rowsPerPageItems,
itemsPerPageText: t('RowsPerPage'), itemsPerPageText: $ay.t('RowsPerPage'),
pageText: t('PageOfPageText') pageText: $ay.t('PageOfPageText')
}" }"
:loading-text="t('Loading')" :loading-text="$ay.t('Loading')"
class="elevation-1" class="elevation-1"
data-cy="datatable-mobile" data-cy="datatable-mobile"
> >
<template v-slot:header="props"> <template v-slot:header="props">
<!-- Mimic the full width data table select all toggle :no-data-text="t('NoData')"--> <!-- Mimic the full width data table select all toggle :no-data-text="$ay.t('NoData')"-->
<div <div
id="divSelectAll" id="divSelectAll"
@click="props.toggleSelectAll(!props.everyItem)" @click="props.toggleSelectAll(!props.everyItem)"
@@ -492,9 +492,6 @@ export default {
//i is the actual AyaNova index of vm record so we have all we need to open vm object //i is the actual AyaNova index of vm record so we have all we need to open vm object
window.$gz.eventBus.$emit("openobject", { type: typeToOpen, id: i }); window.$gz.eventBus.$emit("openobject", { type: typeToOpen, id: i });
}, },
t(tKey) {
return window.$gz.translation.get(tKey);
},
getDataFromApi() { getDataFromApi() {
let vm = this; let vm = this;
if (vm.loading) { if (vm.loading) {
@@ -867,7 +864,7 @@ function loadFormSettings(vm) {
//add UNSAVED FILTER if -1 //add UNSAVED FILTER if -1
vm.selectLists.listViews.unshift({ vm.selectLists.listViews.unshift({
name: vm.t("FilterUnsaved"), name: vm.$ay.t("FilterUnsaved"),
id: -1 id: -1
}); });

View File

@@ -11,7 +11,7 @@
item-disabled="!active" item-disabled="!active"
:error-messages="errors" :error-messages="errors"
:loading="fetching" :loading="fetching"
:placeholder="t('Search')" :placeholder="$ay.t('Search')"
:search-input.sync="searchEntry" :search-input.sync="searchEntry"
:filter="customFilter" :filter="customFilter"
hide-no-data hide-no-data
@@ -107,9 +107,6 @@ export default {
} }
}, },
methods: { methods: {
t: function(tKey) {
return window.$gz.translation.get(tKey);
},
hasError: function() { hasError: function() {
return this.errors.length > 0; return this.errors.length > 0;
}, },
@@ -283,7 +280,7 @@ export default {
if (val.includes(" ")) { if (val.includes(" ")) {
queryTerms = val.split(" "); queryTerms = val.split(" ");
if (queryTerms.length > 2) { if (queryTerms.length > 2) {
vm.errors.push(vm.t("ErrorPickListQueryInvalid")); vm.errors.push(vm.$ay.t("ErrorPickListQueryInvalid"));
return; return;
} }
isATwoTermQuery = true; isATwoTermQuery = true;
@@ -318,7 +315,7 @@ export default {
window.$gz._.startsWith(queryTerms[0], "..") && window.$gz._.startsWith(queryTerms[0], "..") &&
window.$gz._.startsWith(queryTerms[1], "..") window.$gz._.startsWith(queryTerms[1], "..")
) { ) {
vm.errors.push(vm.t("ErrorPickListQueryInvalid")); vm.errors.push(vm.$ay.t("ErrorPickListQueryInvalid"));
return; return;
} }
@@ -327,7 +324,7 @@ export default {
!window.$gz._.startsWith(queryTerms[0], "..") && !window.$gz._.startsWith(queryTerms[0], "..") &&
!window.$gz._.startsWith(queryTerms[1], "..") !window.$gz._.startsWith(queryTerms[1], "..")
) { ) {
vm.errors.push(vm.t("ErrorPickListQueryInvalid")); vm.errors.push(vm.$ay.t("ErrorPickListQueryInvalid"));
return; return;
} }
} }
@@ -349,17 +346,6 @@ export default {
this.getList(urlParams); this.getList(urlParams);
//------------ //------------
}, 300) //did some checking, 200-300ms seems to be the most common debounce time for ajax search queries }, 300) //did some checking, 200-300ms seems to be the most common debounce time for ajax search queries
},
beforeCreate() {
//check pre-requisites exist just in case
if (window.$gz.errorHandler.devMode()) {
// if (!window.$gz._) {
// throw "tag-picker: $gz._ (lodash) is required and missing";
// }
if (!window.$gz.translation) {
throw "tag-picker: $gz.translation is required and missing";
}
}
} }
}; };
</script> </script>

View File

@@ -1,15 +1,15 @@
<template> <template>
<div> <div>
<span class="v-label v-label--active theme--light"> <span class="v-label v-label--active theme--light">
{{ t("Tags") }} {{ $ay.t("Tags") }}
</span> </span>
<v-autocomplete <v-autocomplete
v-bind:value="value" v-bind:value="value"
v-on:input="$emit('input', $event)" v-on:input="$emit('input', $event)"
:items="sourcetags" :items="sourcetags"
:loading="tagSearchUnderway" :loading="tagSearchUnderway"
:placeholder="t('TypeToSearchOrAdd')" :placeholder="$ay.t('TypeToSearchOrAdd')"
:no-data-text="t('NoData')" :no-data-text="$ay.t('NoData')"
:search-input.sync="tagSearchEntry" :search-input.sync="tagSearchEntry"
hide-selected hide-selected
multiple multiple
@@ -95,9 +95,6 @@ export default {
}, },
methods: { methods: {
t: function(tKey) {
return window.$gz.translation.get(tKey);
},
addTag() { addTag() {
let theTag = this.tagSearchEntry; let theTag = this.tagSearchEntry;
theTag = this.normalizeTag(theTag); theTag = this.normalizeTag(theTag);
@@ -113,17 +110,6 @@ export default {
tagName = tagName.length > 255 ? tagName.substr(0, 255 - 1) : tagName; tagName = tagName.length > 255 ? tagName.substr(0, 255 - 1) : tagName;
return tagName; return tagName;
} }
},
beforeCreate() {
//check pre-requisites exist just in case
if (window.$gz.errorHandler.devMode()) {
if (!window.$gz._) {
throw "tag-picker: $gz._ (lodash) is required and missing";
}
if (!window.$gz.translation) {
throw "tag-picker: $gz.translation is required and missing";
}
}
} }
}; };
</script> </script>

View File

@@ -22,7 +22,7 @@
> >
<v-spacer></v-spacer> <v-spacer></v-spacer>
<v-btn text color="primary" @click="dlgtime = false">{{ <v-btn text color="primary" @click="dlgtime = false">{{
t("OK") $ay.t("OK")
}}</v-btn> }}</v-btn>
</v-time-picker> </v-time-picker>
</v-dialog> </v-dialog>
@@ -64,11 +64,6 @@ export default {
required: false required: false
} }
}, },
methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
}
},
watch: { watch: {
date() { date() {
//this tortuous fuckery is required so that the input and change events only fire on a real change, not initial page load //this tortuous fuckery is required so that the input and change events only fire on a real change, not initial page load

View File

@@ -179,7 +179,6 @@ Vue.directive("focus", {
} }
}); });
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// INSTANTIATE // INSTANTIATE
// //
@@ -194,5 +193,5 @@ new Vue({
vuetify: Vuetify, vuetify: Vuetify,
router, router,
store, store,
render: (h) => h(App) render: h => h(App)
}).$mount("#app"); }).$mount("#app");

View File

@@ -22,7 +22,7 @@
:items="selectLists.pickListTemplates" :items="selectLists.pickListTemplates"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('PickListTemplates')" :label="$ay.t('PickListTemplates')"
@input="templateSelected" @input="templateSelected"
> >
</v-select> </v-select>
@@ -51,7 +51,7 @@
<v-checkbox <v-checkbox
v-model="item.include" v-model="item.include"
:readOnly="formState.readOnly" :readOnly="formState.readOnly"
:label="t('Include')" :label="$ay.t('Include')"
:ref="item.key" :ref="item.key"
:disabled="item.required" :disabled="item.required"
@change="includeChanged(item)" @change="includeChanged(item)"
@@ -183,9 +183,6 @@ export default {
} }
}, },
methods: { methods: {
t: function(tKey) {
return window.$gz.translation.get(tKey);
},
includeChanged: function(item) { includeChanged: function(item) {
window.$gz.form.setFormState({ window.$gz.form.setFormState({
vm: this, vm: this,
@@ -503,7 +500,7 @@ function synthesizeWorkingArray(vm) {
key: afItem.fieldKey, key: afItem.fieldKey,
required: afItem.isRowId == true, required: afItem.isRowId == true,
include: true, include: true,
title: vm.t(afItem.tKey) title: vm.$ay.t(afItem.tKey)
}); });
} }
} }
@@ -525,7 +522,7 @@ function synthesizeWorkingArray(vm) {
key: afItem.fieldKey, key: afItem.fieldKey,
required: afItem.isRowId == true, required: afItem.isRowId == true,
include: false, include: false,
title: vm.t(afItem.tKey) title: vm.$ay.t(afItem.tKey)
}); });
} }
} }

View File

@@ -1,9 +1,9 @@
<template> <template>
<v-card class="mx-auto" v-if="formState.ready"> <v-card class="mx-auto" v-if="formState.ready">
<v-list subheader> <v-list subheader>
<v-subheader>{{ t("UserInterfaceSettings") }}</v-subheader> <v-subheader>{{ $ay.t("UserInterfaceSettings") }}</v-subheader>
<v-list-item link to="adm-global-select-templates"> <v-list-item link to="adm-global-select-templates">
<v-list-item-title>{{ t("PickListTemplates") }}</v-list-item-title> <v-list-item-title>{{ $ay.t("PickListTemplates") }}</v-list-item-title>
</v-list-item> </v-list-item>
</v-list> </v-list>
</v-card> </v-card>
@@ -56,11 +56,6 @@ export default {
}, },
rights: window.$gz.role.defaultRightsObject() rights: window.$gz.role.defaultRightsObject()
}; };
},
methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
}
} }
}; };

View File

@@ -14,13 +14,13 @@
</v-col> </v-col>
<v-col> <v-col>
<v-card id="ayaNovaVersioncard"> <v-card id="ayaNovaVersioncard">
<v-subheader>{{ t("ClientApp") }}</v-subheader> <v-subheader>{{ $ay.t("ClientApp") }}</v-subheader>
<div> <div>
<span class="ml-6 body-1">{{ t("Version") }}: </span> <span class="ml-6 body-1">{{ $ay.t("Version") }}: </span>
<span class="body-2">{{ clientInfo.version }}</span> <span class="body-2">{{ clientInfo.version }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("User") }}: </span> <span class="ml-6 body-1">{{ $ay.t("User") }}: </span>
<span class="body-2">{{ this.$store.state.userName }}</span> <span class="body-2">{{ this.$store.state.userName }}</span>
</div> </div>
@@ -32,78 +32,78 @@
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("TimeZone") }}: </span> <span class="ml-6 body-1">{{ $ay.t("TimeZone") }}: </span>
<span class="body-2"> <span class="body-2">
{{ locale().getBrowserTimeZoneName() }} {{ locale().getBrowserTimeZoneName() }}
</span> </span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("LanguageCode") }}: </span> <span class="ml-6 body-1">{{ $ay.t("LanguageCode") }}: </span>
<span class="body-2">{{ locale().getBrowserFirstLanguage() }}</span> <span class="body-2">{{ locale().getBrowserFirstLanguage() }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("CurrencyCode") }}: </span> <span class="ml-6 body-1">{{ $ay.t("CurrencyCode") }}: </span>
<span class="body-2">{{ locale().getCurrencyName() }}</span> <span class="body-2">{{ locale().getCurrencyName() }}</span>
</div> </div>
<v-divider class="mt-6"></v-divider> <v-divider class="mt-6"></v-divider>
<v-subheader>{{ t("Browser") }}</v-subheader> <v-subheader>{{ $ay.t("Browser") }}</v-subheader>
<div v-for="(value, name) in browser" :key="name"> <div v-for="(value, name) in browser" :key="name">
<span class="ml-6 body-1">{{ name }}: </span> <span class="ml-6 body-1">{{ name }}: </span>
<span class="body-2">{{ value }}</span> <span class="body-2">{{ value }}</span>
</div> </div>
<v-divider class="mt-6"></v-divider> <v-divider class="mt-6"></v-divider>
<v-subheader>{{ t("Server") }}</v-subheader> <v-subheader>{{ $ay.t("Server") }}</v-subheader>
<div> <div>
<span class="ml-6 body-1">{{ t("ServerAddress") }}: </span> <span class="ml-6 body-1">{{ $ay.t("ServerAddress") }}: </span>
<span class="body-2">{{ this.$store.state.apiUrl }}</span> <span class="body-2">{{ this.$store.state.apiUrl }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("Version") }}: </span> <span class="ml-6 body-1">{{ $ay.t("Version") }}: </span>
<span class="body-2">{{ serverInfo.serverVersion }}</span> <span class="body-2">{{ serverInfo.serverVersion }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("SchemaVersion") }}: </span> <span class="ml-6 body-1">{{ $ay.t("SchemaVersion") }}: </span>
<span class="body-2">{{ serverInfo.dbSchemaVersion }}</span> <span class="body-2">{{ serverInfo.dbSchemaVersion }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("ServerTime") }}: </span> <span class="ml-6 body-1">{{ $ay.t("ServerTime") }}: </span>
<span class="body-2">{{ serverInfo.serverLocalTime }}</span> <span class="body-2">{{ serverInfo.serverLocalTime }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("TimeZone") }}: </span> <span class="ml-6 body-1">{{ $ay.t("TimeZone") }}: </span>
<span class="body-2">{{ serverInfo.serverTimeZone }}</span> <span class="body-2">{{ serverInfo.serverTimeZone }}</span>
</div> </div>
<div v-if="canViewLicenseInfo()"> <div v-if="canViewLicenseInfo()">
<v-divider class="mt-6"></v-divider> <v-divider class="mt-6"></v-divider>
<v-subheader>{{ t("HelpLicense") }}</v-subheader> <v-subheader>{{ $ay.t("HelpLicense") }}</v-subheader>
<div> <div>
<span class="ml-6 body-1">{{ t("RegisteredUser") }}: </span> <span class="ml-6 body-1">{{ $ay.t("RegisteredUser") }}: </span>
<span class="body-2">{{ <span class="body-2">{{
serverInfo.license.license.licensedTo serverInfo.license.license.licensedTo
}}</span> }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("DatabaseID") }}: </span> <span class="ml-6 body-1">{{ $ay.t("DatabaseID") }}: </span>
<span class="body-2">{{ serverInfo.license.license.dbId }}</span> <span class="body-2">{{ serverInfo.license.license.dbId }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("LicenseSerial") }}: </span> <span class="ml-6 body-1">{{ $ay.t("LicenseSerial") }}: </span>
<span class="body-2">{{ <span class="body-2">{{
serverInfo.license.license.keySerial serverInfo.license.license.keySerial
}}</span> }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("LicenseExpiration") }}: </span> <span class="ml-6 body-1">{{ $ay.t("LicenseExpiration") }}: </span>
<span class="body-2">{{ <span class="body-2">{{
serverInfo.license.license.licenseExpiration serverInfo.license.license.licenseExpiration
}}</span> }}</span>
</div> </div>
<div> <div>
<span class="ml-6 body-1">{{ t("SupportedUntil") }}: </span> <span class="ml-6 body-1">{{ $ay.t("SupportedUntil") }}: </span>
<span class="body-2">{{ <span class="body-2">{{
serverInfo.license.license.maintenanceExpiration serverInfo.license.license.maintenanceExpiration
}}</span> }}</span>
@@ -111,7 +111,7 @@
<v-divider class="mt-6"></v-divider> <v-divider class="mt-6"></v-divider>
<v-subheader data-cy="aboutlicensedoptions">{{ <v-subheader data-cy="aboutlicensedoptions">{{
t("LicensedOptions") $ay.t("LicensedOptions")
}}</v-subheader> }}</v-subheader>
<div <div
@@ -173,9 +173,6 @@ export default {
}; };
}, },
methods: { methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
},
translation() { translation() {
return window.$gz.translation; return window.$gz.translation;
}, },

View File

@@ -30,7 +30,7 @@
<v-checkbox <v-checkbox
v-model="item.visible" v-model="item.visible"
:readOnly="formState.readOnly" :readOnly="formState.readOnly"
:label="t('FormFieldVisible')" :label="$ay.t('FormFieldVisible')"
:ref="item.key" :ref="item.key"
:disabled="item.stockRequired" :disabled="item.stockRequired"
@change="visibleChanged(item)" @change="visibleChanged(item)"
@@ -38,7 +38,7 @@
<v-checkbox <v-checkbox
v-model="item.required" v-model="item.required"
:readOnly="formState.readOnly" :readOnly="formState.readOnly"
:label="t('FormFieldEntryRequired')" :label="$ay.t('FormFieldEntryRequired')"
:disabled="item.stockRequired" :disabled="item.stockRequired"
@change="requiredChanged(item)" @change="requiredChanged(item)"
></v-checkbox> ></v-checkbox>
@@ -49,7 +49,7 @@
:items="selectLists.uiFieldDataTypes" :items="selectLists.uiFieldDataTypes"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('UiFieldDataType')" :label="$ay.t('UiFieldDataType')"
@input="dataTypeChanged(item)" @input="dataTypeChanged(item)"
></v-select> ></v-select>
<!-- <v-divider></v-divider> <!-- <v-divider></v-divider>
@@ -134,9 +134,6 @@ export default {
}, },
methods: { methods: {
t: function(tKey) {
return window.$gz.translation.get(tKey);
},
visibleChanged: function(item) { visibleChanged: function(item) {
//Note: stock items can't be changed so no need to take that into account //Note: stock items can't be changed so no need to take that into account
if (item.required && item.visible == false) { if (item.required && item.visible == false) {
@@ -357,14 +354,14 @@ function fetchTranslatedText(vm) {
function populateSelectionLists(vm) { function populateSelectionLists(vm) {
vm.selectLists.uiFieldDataTypes.push( vm.selectLists.uiFieldDataTypes.push(
...[ ...[
{ name: vm.t("UiFieldDataTypesDateTime"), id: 1 }, { name: vm.$ay.t("UiFieldDataTypesDateTime"), id: 1 },
{ name: vm.t("UiFieldDataTypesDateOnly"), id: 2 }, { name: vm.$ay.t("UiFieldDataTypesDateOnly"), id: 2 },
{ name: vm.t("UiFieldDataTypesTimeOnly"), id: 3 }, { name: vm.$ay.t("UiFieldDataTypesTimeOnly"), id: 3 },
{ name: vm.t("UiFieldDataTypesText"), id: 4 }, { name: vm.$ay.t("UiFieldDataTypesText"), id: 4 },
{ name: vm.t("UiFieldDataTypesTrueFalse"), id: 6 }, { name: vm.$ay.t("UiFieldDataTypesTrueFalse"), id: 6 },
{ name: vm.t("UiFieldDataTypesInteger"), id: 5 }, { name: vm.$ay.t("UiFieldDataTypesInteger"), id: 5 },
{ name: vm.t("UiFieldDataTypesDecimal"), id: 7 }, { name: vm.$ay.t("UiFieldDataTypesDecimal"), id: 7 },
{ name: vm.t("UiFieldDataTypesCurrency"), id: 8 } { name: vm.$ay.t("UiFieldDataTypesCurrency"), id: 8 }
] ]
); );
} }

View File

@@ -39,7 +39,7 @@
clearable clearable
@click:clear="fieldValueChanged('name')" @click:clear="fieldValueChanged('name')"
:counter="255" :counter="255"
:label="t('Name')" :label="$ay.t('Name')"
:rules="[ :rules="[
form().max255(this, 'name'), form().max255(this, 'name'),
form().required(this, 'name') form().required(this, 'name')
@@ -54,7 +54,7 @@
<v-checkbox <v-checkbox
v-model="obj.public" v-model="obj.public"
:readonly="this.formState.readOnly" :readonly="this.formState.readOnly"
:label="t('AnyUser')" :label="$ay.t('AnyUser')"
ref="public" ref="public"
@change="fieldValueChanged('public')" @change="fieldValueChanged('public')"
></v-checkbox> ></v-checkbox>
@@ -73,7 +73,7 @@
<v-switch <v-switch
v-if="!item.rid" v-if="!item.rid"
v-model="item.include" v-model="item.include"
:label="t('Include')" :label="$ay.t('Include')"
:ref="item.key" :ref="item.key"
:disabled=" :disabled="
item.sort != null || item.filter.items.length > 0 item.sort != null || item.filter.items.length > 0
@@ -81,7 +81,7 @@
@change="includeChanged(item)" @change="includeChanged(item)"
></v-switch> ></v-switch>
<div v-if="item.rid" class="v-label mb-8 mt-6"> <div v-if="item.rid" class="v-label mb-8 mt-6">
{{ t("Include") }} {{ $ay.t("Include") }}
</div> </div>
<!-- RE-ORDER CONTROL --> <!-- RE-ORDER CONTROL -->
<div class="d-flex justify-space-between"> <div class="d-flex justify-space-between">
@@ -123,7 +123,7 @@
></v-btn ></v-btn
> >
<label class="v-label theme--light" <label class="v-label theme--light"
>&nbsp;{{ t("Sort") }}</label >&nbsp;{{ $ay.t("Sort") }}</label
> >
</div> </div>
</template> </template>
@@ -139,7 +139,7 @@
:items="selectLists.dateFilterTokens" :items="selectLists.dateFilterTokens"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
<div v-if="item.tempFilterToken == '*select*'"> <div v-if="item.tempFilterToken == '*select*'">
@@ -179,7 +179,7 @@
:items="selectLists.stringFilterOperators" :items="selectLists.stringFilterOperators"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
<v-text-field <v-text-field
@@ -207,7 +207,7 @@
:items="selectLists.integerFilterOperators" :items="selectLists.integerFilterOperators"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
<v-text-field <v-text-field
@@ -235,7 +235,7 @@
:items="selectLists.boolFilterOperators" :items="selectLists.boolFilterOperators"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
<v-radio-group <v-radio-group
@@ -248,10 +248,13 @@
row row
> >
<v-radio <v-radio
:label="t('False')" :label="$ay.t('False')"
:value="false" :value="false"
></v-radio> ></v-radio>
<v-radio :label="t('True')" :value="true"></v-radio> <v-radio
:label="$ay.t('True')"
:value="true"
></v-radio>
</v-radio-group> </v-radio-group>
<v-btn <v-btn
@@ -270,7 +273,7 @@
:items="selectLists.decimalFilterOperators" :items="selectLists.decimalFilterOperators"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
<gz-decimal <gz-decimal
@@ -297,7 +300,7 @@
:items="selectLists.decimalFilterOperators" :items="selectLists.decimalFilterOperators"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
<gz-currency <gz-currency
@@ -324,7 +327,7 @@
:items="selectLists.tagFilterOperators" :items="selectLists.tagFilterOperators"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
@@ -348,7 +351,7 @@
:items="selectLists.enumFilterOperators" :items="selectLists.enumFilterOperators"
item-text="name" item-text="name"
item-value="id" item-value="id"
:label="t('Filter')" :label="$ay.t('Filter')"
prepend-icon="fa-filter" prepend-icon="fa-filter"
></v-select> ></v-select>
@@ -382,11 +385,11 @@
<!-- AND / OR FILTER CONDITIONS --> <!-- AND / OR FILTER CONDITIONS -->
<v-radio-group v-model="item.filter.any" row> <v-radio-group v-model="item.filter.any" row>
<v-radio <v-radio
:label="t('GridFilterDialogAndRadioText')" :label="$ay.t('GridFilterDialogAndRadioText')"
:value="false" :value="false"
></v-radio> ></v-radio>
<v-radio <v-radio
:label="t('GridFilterDialogOrRadioText')" :label="$ay.t('GridFilterDialogOrRadioText')"
:value="true" :value="true"
></v-radio> </v-radio-group ></v-radio> </v-radio-group
></v-subheader> ></v-subheader>
@@ -558,9 +561,6 @@ export default {
} }
}, },
methods: { methods: {
t: function(tKey) {
return window.$gz.translation.get(tKey);
},
enumSelectionList: function(enumKey) { enumSelectionList: function(enumKey) {
return window.$gz.enums.getSelectionList(enumKey); return window.$gz.enums.getSelectionList(enumKey);
}, },
@@ -700,13 +700,6 @@ export default {
form() { form() {
return window.$gz.form; return window.$gz.form;
}, },
// setAsUnsavedListView() {
// //switch to unsaved listview if not already
// if (this.listViewId != -1) {
// this.listViewId = -1;
// vm.obj.name = vm.t("FilterUnsaved");
// }
// },
fieldValueChanged(ref) { fieldValueChanged(ref) {
if (!this.formState.loading && !this.formState.readOnly) { if (!this.formState.loading && !this.formState.readOnly) {
window.$gz.form.fieldValueChanged(this, ref); window.$gz.form.fieldValueChanged(this, ref);
@@ -717,7 +710,7 @@ export default {
let vm = this; let vm = this;
//check that "unsaved filter" is not the name //check that "unsaved filter" is not the name
//if it is, set it empty and force user to set a name //if it is, set it empty and force user to set a name
if (vm.obj.name == vm.t("FilterUnsaved")) { if (vm.obj.name == vm.$ay.t("FilterUnsaved")) {
vm.obj.name = ""; vm.obj.name = "";
return; return;
} }
@@ -1052,143 +1045,143 @@ function fetchTranslatedText(vm) {
function populateSelectionLists(vm) { function populateSelectionLists(vm) {
vm.selectLists.dateFilterOperators.push( vm.selectLists.dateFilterOperators.push(
...[ ...[
{ name: vm.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" }, { name: vm.$ay.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" },
{ {
name: vm.t("GridRowFilterDropDownNonBlanksItem"), name: vm.$ay.t("GridRowFilterDropDownNonBlanksItem"),
id: "*HASVALUE*" id: "*HASVALUE*"
}, },
{ name: vm.t("GridRowFilterDropDownEquals"), id: "=" }, { name: vm.$ay.t("GridRowFilterDropDownEquals"), id: "=" },
{ name: vm.t("GridRowFilterDropDownGreaterThan"), id: ">" }, { name: vm.$ay.t("GridRowFilterDropDownGreaterThan"), id: ">" },
{ {
name: vm.t("GridRowFilterDropDownGreaterThanOrEqualTo"), name: vm.$ay.t("GridRowFilterDropDownGreaterThanOrEqualTo"),
id: ">=" id: ">="
}, },
{ name: vm.t("GridRowFilterDropDownLessThan"), id: "<" }, { name: vm.$ay.t("GridRowFilterDropDownLessThan"), id: "<" },
{ name: vm.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" }, { name: vm.$ay.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" },
{ name: vm.t("GridRowFilterDropDownNotEquals"), id: "!=" } { name: vm.$ay.t("GridRowFilterDropDownNotEquals"), id: "!=" }
] ]
); );
vm.selectLists.dateFilterTokens.push( vm.selectLists.dateFilterTokens.push(
...[ ...[
{ name: "(" + vm.t("SelectItem") + ")", id: "*select*" }, //If select then use entry in date /time picker { name: "(" + vm.$ay.t("SelectItem") + ")", id: "*select*" }, //If select then use entry in date /time picker
{ name: vm.t("DateRangeYesterday"), id: "*yesterday*" }, { name: vm.$ay.t("DateRangeYesterday"), id: "*yesterday*" },
{ name: vm.t("DateRangeToday"), id: "*today*" }, { name: vm.$ay.t("DateRangeToday"), id: "*today*" },
{ name: vm.t("DateRangeTomorrow"), id: "*tomorrow*" }, { name: vm.$ay.t("DateRangeTomorrow"), id: "*tomorrow*" },
{ name: vm.t("DateRangeLastWeek"), id: "*lastweek*" }, { name: vm.$ay.t("DateRangeLastWeek"), id: "*lastweek*" },
{ name: vm.t("DateRangeThisWeek"), id: "*thisweek*" }, { name: vm.$ay.t("DateRangeThisWeek"), id: "*thisweek*" },
{ name: vm.t("DateRangeNextWeek"), id: "*nextweek*" }, { name: vm.$ay.t("DateRangeNextWeek"), id: "*nextweek*" },
{ name: vm.t("DateRangeLastMonth"), id: "*lastmonth*" }, { name: vm.$ay.t("DateRangeLastMonth"), id: "*lastmonth*" },
{ name: vm.t("DateRangeThisMonth"), id: "*thismonth*" }, { name: vm.$ay.t("DateRangeThisMonth"), id: "*thismonth*" },
{ name: vm.t("DateRangeNextMonth"), id: "*nextmonth*" }, { name: vm.$ay.t("DateRangeNextMonth"), id: "*nextmonth*" },
{ name: vm.t("DateRange14DayWindow"), id: "*14daywindow*" }, { name: vm.$ay.t("DateRange14DayWindow"), id: "*14daywindow*" },
{ name: vm.t("DateRangePast"), id: "*past*" }, { name: vm.$ay.t("DateRangePast"), id: "*past*" },
{ name: vm.t("DateRangeFuture"), id: "*future*" }, { name: vm.$ay.t("DateRangeFuture"), id: "*future*" },
{ name: vm.t("DateRangeLastYear"), id: "*lastyear*" }, //prior year from jan to dec { name: vm.$ay.t("DateRangeLastYear"), id: "*lastyear*" }, //prior year from jan to dec
{ name: vm.t("DateRangeThisYear"), id: "*thisyear*" }, { name: vm.$ay.t("DateRangeThisYear"), id: "*thisyear*" },
{ {
name: vm.t("DateRangeInTheLastThreeMonths"), name: vm.$ay.t("DateRangeInTheLastThreeMonths"),
id: "*last3months*" id: "*last3months*"
}, },
{ {
name: vm.t("DateRangeInTheLastSixMonths"), name: vm.$ay.t("DateRangeInTheLastSixMonths"),
id: "*last6months*" id: "*last6months*"
}, },
{ name: vm.t("DateRangePastYear"), id: "*pastyear*" }, //last 365 days { name: vm.$ay.t("DateRangePastYear"), id: "*pastyear*" }, //last 365 days
{ name: vm.t("DateRangePast90Days"), id: "*past90days*" }, { name: vm.$ay.t("DateRangePast90Days"), id: "*past90days*" },
{ name: vm.t("DateRangePast30Days"), id: "*past30days*" }, { name: vm.$ay.t("DateRangePast30Days"), id: "*past30days*" },
{ name: vm.t("DateRangePast24Hours"), id: "*past24hours*" } { name: vm.$ay.t("DateRangePast24Hours"), id: "*past24hours*" }
] ]
); );
vm.selectLists.stringFilterOperators.push( vm.selectLists.stringFilterOperators.push(
...[ ...[
{ name: vm.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" }, { name: vm.$ay.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" },
{ {
name: vm.t("GridRowFilterDropDownNonBlanksItem"), name: vm.$ay.t("GridRowFilterDropDownNonBlanksItem"),
id: "*HASVALUE*" id: "*HASVALUE*"
}, },
{ name: vm.t("GridRowFilterDropDownEquals"), id: "=" }, { name: vm.$ay.t("GridRowFilterDropDownEquals"), id: "=" },
{ name: vm.t("GridRowFilterDropDownGreaterThan"), id: ">" }, { name: vm.$ay.t("GridRowFilterDropDownGreaterThan"), id: ">" },
{ {
name: vm.t("GridRowFilterDropDownGreaterThanOrEqualTo"), name: vm.$ay.t("GridRowFilterDropDownGreaterThanOrEqualTo"),
id: ">=" id: ">="
}, },
{ name: vm.t("GridRowFilterDropDownLessThan"), id: "<" }, { name: vm.$ay.t("GridRowFilterDropDownLessThan"), id: "<" },
{ name: vm.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" }, { name: vm.$ay.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" },
{ name: vm.t("GridRowFilterDropDownNotEquals"), id: "!=" }, { name: vm.$ay.t("GridRowFilterDropDownNotEquals"), id: "!=" },
{ name: vm.t("GridRowFilterDropDownDoesNotContain"), id: "!-%-" }, { name: vm.$ay.t("GridRowFilterDropDownDoesNotContain"), id: "!-%-" },
{ name: vm.t("GridRowFilterDropDownContains"), id: "-%-" }, { name: vm.$ay.t("GridRowFilterDropDownContains"), id: "-%-" },
{ name: vm.t("GridRowFilterDropDownStartsWith"), id: "%-" }, { name: vm.$ay.t("GridRowFilterDropDownStartsWith"), id: "%-" },
{ name: vm.t("GridRowFilterDropDownEndsWith"), id: "-%" } { name: vm.$ay.t("GridRowFilterDropDownEndsWith"), id: "-%" }
] ]
); );
vm.selectLists.integerFilterOperators.push( vm.selectLists.integerFilterOperators.push(
...[ ...[
{ name: vm.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" }, { name: vm.$ay.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" },
{ {
name: vm.t("GridRowFilterDropDownNonBlanksItem"), name: vm.$ay.t("GridRowFilterDropDownNonBlanksItem"),
id: "*HASVALUE*" id: "*HASVALUE*"
}, },
{ name: vm.t("GridRowFilterDropDownEquals"), id: "=" }, { name: vm.$ay.t("GridRowFilterDropDownEquals"), id: "=" },
{ name: vm.t("GridRowFilterDropDownGreaterThan"), id: ">" }, { name: vm.$ay.t("GridRowFilterDropDownGreaterThan"), id: ">" },
{ {
name: vm.t("GridRowFilterDropDownGreaterThanOrEqualTo"), name: vm.$ay.t("GridRowFilterDropDownGreaterThanOrEqualTo"),
id: ">=" id: ">="
}, },
{ name: vm.t("GridRowFilterDropDownLessThan"), id: "<" }, { name: vm.$ay.t("GridRowFilterDropDownLessThan"), id: "<" },
{ name: vm.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" }, { name: vm.$ay.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" },
{ name: vm.t("GridRowFilterDropDownNotEquals"), id: "!=" } { name: vm.$ay.t("GridRowFilterDropDownNotEquals"), id: "!=" }
] ]
); );
vm.selectLists.boolFilterOperators.push( vm.selectLists.boolFilterOperators.push(
...[ ...[
{ name: vm.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" }, { name: vm.$ay.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" },
{ {
name: vm.t("GridRowFilterDropDownNonBlanksItem"), name: vm.$ay.t("GridRowFilterDropDownNonBlanksItem"),
id: "*HASVALUE*" id: "*HASVALUE*"
}, },
{ name: vm.t("GridRowFilterDropDownEquals"), id: "=" }, { name: vm.$ay.t("GridRowFilterDropDownEquals"), id: "=" },
{ name: vm.t("GridRowFilterDropDownNotEquals"), id: "!=" } { name: vm.$ay.t("GridRowFilterDropDownNotEquals"), id: "!=" }
] ]
); );
vm.selectLists.decimalFilterOperators.push( vm.selectLists.decimalFilterOperators.push(
...[ ...[
{ name: vm.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" }, { name: vm.$ay.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" },
{ {
name: vm.t("GridRowFilterDropDownNonBlanksItem"), name: vm.$ay.t("GridRowFilterDropDownNonBlanksItem"),
id: "*HASVALUE*" id: "*HASVALUE*"
}, },
{ name: vm.t("GridRowFilterDropDownEquals"), id: "=" }, { name: vm.$ay.t("GridRowFilterDropDownEquals"), id: "=" },
{ name: vm.t("GridRowFilterDropDownGreaterThan"), id: ">" }, { name: vm.$ay.t("GridRowFilterDropDownGreaterThan"), id: ">" },
{ {
name: vm.t("GridRowFilterDropDownGreaterThanOrEqualTo"), name: vm.$ay.t("GridRowFilterDropDownGreaterThanOrEqualTo"),
id: ">=" id: ">="
}, },
{ name: vm.t("GridRowFilterDropDownLessThan"), id: "<" }, { name: vm.$ay.t("GridRowFilterDropDownLessThan"), id: "<" },
{ name: vm.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" }, { name: vm.$ay.t("GridRowFilterDropDownLessThanOrEqualTo"), id: "<=" },
{ name: vm.t("GridRowFilterDropDownNotEquals"), id: "!=" } { name: vm.$ay.t("GridRowFilterDropDownNotEquals"), id: "!=" }
] ]
); );
//tags filter only by equals in initial release, see DataListSqlFilterCriteriaBuilder.cs line 523 for deets //tags filter only by equals in initial release, see DataListSqlFilterCriteriaBuilder.cs line 523 for deets
vm.selectLists.tagFilterOperators.push({ vm.selectLists.tagFilterOperators.push({
name: vm.t("GridRowFilterDropDownEquals"), name: vm.$ay.t("GridRowFilterDropDownEquals"),
id: "=" id: "="
}); });
vm.selectLists.enumFilterOperators.push( vm.selectLists.enumFilterOperators.push(
...[ ...[
{ name: vm.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" }, { name: vm.$ay.t("GridRowFilterDropDownBlanksItem"), id: "*NOVALUE*" },
{ {
name: vm.t("GridRowFilterDropDownNonBlanksItem"), name: vm.$ay.t("GridRowFilterDropDownNonBlanksItem"),
id: "*HASVALUE*" id: "*HASVALUE*"
}, },
{ name: vm.t("GridRowFilterDropDownEquals"), id: "=" }, { name: vm.$ay.t("GridRowFilterDropDownEquals"), id: "=" },
{ name: vm.t("GridRowFilterDropDownNotEquals"), id: "!=" } { name: vm.$ay.t("GridRowFilterDropDownNotEquals"), id: "!=" }
] ]
); );
} }
@@ -1248,7 +1241,7 @@ function setEffectiveListView(vm) {
vm.effectiveListView = JSON.parse( vm.effectiveListView = JSON.parse(
formSettings.saved.dataTable.unsavedListView formSettings.saved.dataTable.unsavedListView
); );
vm.obj.name = vm.t("FilterUnsaved"); vm.obj.name = vm.$ay.t("FilterUnsaved");
return Promise.resolve(); return Promise.resolve();
} }
} else if (vm.listViewId == 0) { } else if (vm.listViewId == 0) {
@@ -1261,7 +1254,7 @@ function setEffectiveListView(vm) {
throw res.error; throw res.error;
} else { } else {
vm.effectiveListView = JSON.parse(res.data); vm.effectiveListView = JSON.parse(res.data);
vm.obj.name = vm.t("FilterUnsaved"); vm.obj.name = vm.$ay.t("FilterUnsaved");
} }
}); });
} else { } else {
@@ -1299,7 +1292,7 @@ function initDataObject(vm) {
let fld = window.$gz._.find(vm.fieldDefinitions, ["fieldKey", lvItem.fld]); let fld = window.$gz._.find(vm.fieldDefinitions, ["fieldKey", lvItem.fld]);
let o = { let o = {
key: fld.fieldKey, key: fld.fieldKey,
title: vm.t(fld.tKey), title: vm.$ay.t(fld.tKey),
include: true, include: true,
isFilterable: fld.isFilterable, isFilterable: fld.isFilterable,
isSortable: fld.isSortable, isSortable: fld.isSortable,
@@ -1347,7 +1340,7 @@ function initDataObject(vm) {
//nope, so add it //nope, so add it
let o = { let o = {
key: fld.fieldKey, key: fld.fieldKey,
title: vm.t(fld.tKey), title: vm.$ay.t(fld.tKey),
include: false, include: false,
isFilterable: fld.isFilterable, isFilterable: fld.isFilterable,
isSortable: fld.isSortable, isSortable: fld.isSortable,
@@ -1475,7 +1468,7 @@ function getDisplayForFilter(
case 6: //BOOL translate case 6: //BOOL translate
//debugger; //debugger;
let tKey = filterValue ? "True" : "False"; let tKey = filterValue ? "True" : "False";
valueDisplay = vm.t(tKey); valueDisplay = vm.$ay.t(tKey);
break; break;
case 10: //ENUM translate case 10: //ENUM translate
valueDisplay = window.$gz.enums.get(enumType, filterValue); valueDisplay = window.$gz.enums.get(enumType, filterValue);

View File

@@ -3,7 +3,7 @@
<gz-pick-list <gz-pick-list
v-model="selectedWidget" v-model="selectedWidget"
:ayaType="ayaType().Widget" :ayaType="ayaType().Widget"
:label="t('Widget')" :label="$ay.t('Widget')"
:showEditIcon="true" :showEditIcon="true"
> >
</gz-pick-list> </gz-pick-list>
@@ -11,7 +11,7 @@
<gz-pick-list <gz-pick-list
v-model="selectedUser" v-model="selectedUser"
:ayaType="ayaType().User" :ayaType="ayaType().User"
:label="t('User')" :label="$ay.t('User')"
> >
</gz-pick-list> </gz-pick-list>
<v-divider></v-divider> <v-divider></v-divider>
@@ -52,9 +52,6 @@ export default {
}; };
}, },
methods: { methods: {
t: function(tKey) {
return window.$gz.translation.get(tKey);
},
ayaType: function() { ayaType: function() {
return window.$gz.type; return window.$gz.type;
} }

View File

@@ -29,7 +29,7 @@
autocapitalize="off" autocapitalize="off"
spellcheck="false" spellcheck="false"
v-focus v-focus
:label="t('UserLogin')" :label="$ay.t('UserLogin')"
:rules="[form().required(this, 'loginName')]" :rules="[form().required(this, 'loginName')]"
:error-messages="form().serverErrors(this, 'loginName')" :error-messages="form().serverErrors(this, 'loginName')"
ref="loginName" ref="loginName"
@@ -45,7 +45,7 @@
:readonly="formState.readOnly" :readonly="formState.readOnly"
:append-outer-icon="reveal ? 'fa-eye' : 'fa-eye-slash'" :append-outer-icon="reveal ? 'fa-eye' : 'fa-eye-slash'"
prepend-icon="fa-key" prepend-icon="fa-key"
:label="t('OldPassword')" :label="$ay.t('OldPassword')"
:type="reveal ? 'text' : 'password'" :type="reveal ? 'text' : 'password'"
:rules="[form().required(this, 'oldPassword')]" :rules="[form().required(this, 'oldPassword')]"
:error-messages="form().serverErrors(this, 'oldPassword')" :error-messages="form().serverErrors(this, 'oldPassword')"
@@ -61,7 +61,7 @@
:readonly="formState.readOnly" :readonly="formState.readOnly"
:append-outer-icon="reveal ? 'fa-eye' : 'fa-eye-slash'" :append-outer-icon="reveal ? 'fa-eye' : 'fa-eye-slash'"
prepend-icon="fa-key" prepend-icon="fa-key"
:label="t('NewPassword')" :label="$ay.t('NewPassword')"
:type="reveal ? 'text' : 'password'" :type="reveal ? 'text' : 'password'"
:rules="[form().required(this, 'newPassword')]" :rules="[form().required(this, 'newPassword')]"
:error-messages="form().serverErrors(this, 'newPassword')" :error-messages="form().serverErrors(this, 'newPassword')"
@@ -77,7 +77,7 @@
:readonly="formState.readOnly" :readonly="formState.readOnly"
:append-outer-icon="reveal ? 'fa-eye' : 'fa-eye-slash'" :append-outer-icon="reveal ? 'fa-eye' : 'fa-eye-slash'"
prepend-icon="fa-key" prepend-icon="fa-key"
:label="t('ConfirmPassword')" :label="$ay.t('ConfirmPassword')"
:type="reveal ? 'text' : 'password'" :type="reveal ? 'text' : 'password'"
:rules="[ :rules="[
form().required(this, 'confirmPassword'), form().required(this, 'confirmPassword'),
@@ -191,9 +191,6 @@ export default {
} }
}, },
methods: { methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
},
translation() { translation() {
return window.$gz.translation; return window.$gz.translation;
}, },

View File

@@ -24,7 +24,7 @@
item-text="name" item-text="name"
item-value="id" item-value="id"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="t('Translation')" :label="$ay.t('Translation')"
ref="translationId" ref="translationId"
:error-messages="form().serverErrors(this, 'translationId')" :error-messages="form().serverErrors(this, 'translationId')"
@input="fieldValueChanged('translationId')" @input="fieldValueChanged('translationId')"
@@ -37,7 +37,7 @@
:readonly="formState.readOnly" :readonly="formState.readOnly"
clearable clearable
@click:clear="fieldValueChanged('emailAddress')" @click:clear="fieldValueChanged('emailAddress')"
:label="t('UserEmailAddress')" :label="$ay.t('UserEmailAddress')"
:error-messages="form().serverErrors(this, 'emailAddress')" :error-messages="form().serverErrors(this, 'emailAddress')"
ref="emailAddress" ref="emailAddress"
@input="fieldValueChanged('emailAddress')" @input="fieldValueChanged('emailAddress')"
@@ -51,7 +51,7 @@
:readonly="formState.readOnly" :readonly="formState.readOnly"
clearable clearable
@click:clear="fieldValueChanged('currencyName')" @click:clear="fieldValueChanged('currencyName')"
:label="t('CurrencyCode')" :label="$ay.t('CurrencyCode')"
:rules="[form().required(this, 'currencyName')]" :rules="[form().required(this, 'currencyName')]"
:error-messages="form().serverErrors(this, 'currencyName')" :error-messages="form().serverErrors(this, 'currencyName')"
ref="currencyName" ref="currencyName"
@@ -62,7 +62,7 @@
<v-checkbox <v-checkbox
v-model="obj.hour12" v-model="obj.hour12"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="t('Hour12')" :label="$ay.t('Hour12')"
ref="hour12" ref="hour12"
:error-messages="form().serverErrors(this, 'hour12')" :error-messages="form().serverErrors(this, 'hour12')"
@change="fieldValueChanged('hour12')" @change="fieldValueChanged('hour12')"
@@ -71,7 +71,7 @@
<v-col cols="12" sm="6" lg="4" xl="3"> <v-col cols="12" sm="6" lg="4" xl="3">
<!-- https://vuetifyjs.com/en/components/color-pickers --> <!-- https://vuetifyjs.com/en/components/color-pickers -->
<span class="v-label v-label--active theme--light"> <span class="v-label v-label--active theme--light">
{{ t("UserColor") }} {{ $ay.t("UserColor") }}
</span> </span>
<v-color-picker <v-color-picker
v-model="obj.uiColor" v-model="obj.uiColor"
@@ -91,7 +91,7 @@
:readonly="formState.readOnly" :readonly="formState.readOnly"
clearable clearable
@click:clear="fieldValueChanged('languageOverride')" @click:clear="fieldValueChanged('languageOverride')"
:label="t('LanguageCode')" :label="$ay.t('LanguageCode')"
:error-messages="form().serverErrors(this, 'languageOverride')" :error-messages="form().serverErrors(this, 'languageOverride')"
ref="languageOverride" ref="languageOverride"
@input="fieldValueChanged('languageOverride')" @input="fieldValueChanged('languageOverride')"
@@ -105,7 +105,7 @@
:readonly="formState.readOnly" :readonly="formState.readOnly"
clearable clearable
@click:clear="fieldValueChanged('timeZoneOverride')" @click:clear="fieldValueChanged('timeZoneOverride')"
:label="t('TimeZone')" :label="$ay.t('TimeZone')"
:error-messages="form().serverErrors(this, 'timeZoneOverride')" :error-messages="form().serverErrors(this, 'timeZoneOverride')"
ref="timeZoneOverride" ref="timeZoneOverride"
@input="fieldValueChanged('timeZoneOverride')" @input="fieldValueChanged('timeZoneOverride')"
@@ -231,9 +231,6 @@ export default {
} }
}, },
methods: { methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
},
translation() { translation() {
return window.$gz.translation; return window.$gz.translation;
}, },
@@ -263,7 +260,10 @@ export default {
//Not found? //Not found?
if (res.error.code == "2010") { if (res.error.code == "2010") {
//notify not found error then navigate backwards //notify not found error then navigate backwards
window.$gz.eventBus.$emit("notify-error", vm.t("ErrorAPI2010")); window.$gz.eventBus.$emit(
"notify-error",
vm.$ay.t("ErrorAPI2010")
);
// navigate backwards // navigate backwards
window.$gz._.delay(function() { window.$gz._.delay(function() {
vm.$router.go(-1); vm.$router.go(-1);

View File

@@ -24,7 +24,7 @@
clearable clearable
@click:clear="fieldValueChanged('name')" @click:clear="fieldValueChanged('name')"
:counter="255" :counter="255"
:label="t('WidgetName')" :label="$ay.t('WidgetName')"
:rules="[ :rules="[
form().max255(this, 'name'), form().max255(this, 'name'),
form().required(this, 'name') form().required(this, 'name')
@@ -45,7 +45,7 @@
<v-text-field <v-text-field
v-model="obj.serial" v-model="obj.serial"
:readonly="true" :readonly="true"
:label="t('WidgetSerial')" :label="$ay.t('WidgetSerial')"
data-cy="serial" data-cy="serial"
></v-text-field> ></v-text-field>
</v-col> </v-col>
@@ -62,7 +62,7 @@
clearable clearable
@click:clear="fieldValueChanged('count')" @click:clear="fieldValueChanged('count')"
:counter="10" :counter="10"
:label="t('WidgetCount')" :label="$ay.t('WidgetCount')"
ref="count" ref="count"
data-cy="count" data-cy="count"
:rules="[form().integerValid(this, 'count')]" :rules="[form().integerValid(this, 'count')]"
@@ -82,7 +82,7 @@
<gz-currency <gz-currency
v-model="obj.dollarAmount" v-model="obj.dollarAmount"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="t('WidgetDollarAmount')" :label="$ay.t('WidgetDollarAmount')"
ref="dollarAmount" ref="dollarAmount"
data-cy="dollarAmount" data-cy="dollarAmount"
:rules="[ :rules="[
@@ -96,7 +96,7 @@
<v-col cols="12" sm="6" lg="4" xl="3"> <v-col cols="12" sm="6" lg="4" xl="3">
<gz-date-time-picker <gz-date-time-picker
:label="t('WidgetStartDate')" :label="$ay.t('WidgetStartDate')"
v-model="obj.startDate" v-model="obj.startDate"
:readonly="formState.readOnly" :readonly="formState.readOnly"
ref="startDate" ref="startDate"
@@ -108,7 +108,7 @@
<v-col cols="12" sm="6" lg="4" xl="3"> <v-col cols="12" sm="6" lg="4" xl="3">
<gz-date-time-picker <gz-date-time-picker
:label="t('WidgetEndDate')" :label="$ay.t('WidgetEndDate')"
:rules="[form().datePrecedence(this, 'startDate', 'endDate')]" :rules="[form().datePrecedence(this, 'startDate', 'endDate')]"
:error-messages="form().serverErrors(this, 'endDate')" :error-messages="form().serverErrors(this, 'endDate')"
v-model="obj.endDate" v-model="obj.endDate"
@@ -128,7 +128,7 @@
<v-checkbox <v-checkbox
v-model="obj.active" v-model="obj.active"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="t('Active')" :label="$ay.t('Active')"
ref="active" ref="active"
data-cy="active" data-cy="active"
:error-messages="form().serverErrors(this, 'active')" :error-messages="form().serverErrors(this, 'active')"
@@ -148,7 +148,7 @@
:showEditIcon="true" :showEditIcon="true"
v-model="obj.userId" v-model="obj.userId"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="t('User')" :label="$ay.t('User')"
ref="userid" ref="userid"
data-cy="userid" data-cy="userid"
:error-messages="form().serverErrors(this, 'userid')" :error-messages="form().serverErrors(this, 'userid')"
@@ -169,7 +169,7 @@
item-text="name" item-text="name"
item-value="id" item-value="id"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="t('UserType')" :label="$ay.t('UserType')"
ref="usertype" ref="usertype"
data-cy="usertype" data-cy="usertype"
:rules="[form().integerValid(this, 'usertype')]" :rules="[form().integerValid(this, 'usertype')]"
@@ -182,7 +182,7 @@
<v-textarea <v-textarea
v-model="obj.notes" v-model="obj.notes"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:label="t('WidgetNotes')" :label="$ay.t('WidgetNotes')"
:error-messages="form().serverErrors(this, 'notes')" :error-messages="form().serverErrors(this, 'notes')"
ref="notes" ref="notes"
data-cy="notes" data-cy="notes"
@@ -374,9 +374,6 @@ export default {
} }
}, },
methods: { methods: {
t(tKey) {
return window.$gz.translation.get(tKey);
},
translation() { translation() {
return window.$gz.translation; return window.$gz.translation;
}, },
@@ -408,7 +405,10 @@ export default {
//Not found? //Not found?
if (res.error.code == "2010") { if (res.error.code == "2010") {
//notify not found error then navigate backwards //notify not found error then navigate backwards
window.$gz.eventBus.$emit("notify-error", vm.t("ErrorAPI2010")); window.$gz.eventBus.$emit(
"notify-error",
vm.$ay.t("ErrorAPI2010")
);
// navigate backwards // navigate backwards
window.$gz._.delay(function() { window.$gz._.delay(function() {
vm.$router.go(-1); vm.$router.go(-1);