fixed profile tables headings localization

This commit is contained in:
adisposkofh
2026-04-24 10:50:32 +02:00
parent 331381c94d
commit 868599a7fe
3 changed files with 25 additions and 42 deletions
@@ -34,7 +34,7 @@ export default {
return {
showModal: false,
editDataFilter: null,
preloadedPhrasen:{},
arePhrasesPreloaded: false,
// tabulator options
funktionen_table_options: {
persistenceID: "filterTableMaProfilFunktionen",
@@ -61,7 +61,7 @@ export default {
responsive: 0,
},
{
title: Vue.computed(() => this.preloadedPhrasen.bezeichnungPhrase),
title: Vue.computed(() => this.$p.t('ui/bezeichnung')),
field: "Bezeichnung",
headerFilter: true,
minWidth: 200,
@@ -69,7 +69,7 @@ export default {
responsive: 0,
},
{
title: Vue.computed(() => this.preloadedPhrasen.organisationseinheitPhrase),
title: Vue.computed(() => this.$p.t('lehre/organisationseinheit')),
field: "Organisationseinheit",
headerFilter: true,
minWidth: 200,
@@ -77,7 +77,7 @@ export default {
responsive: 1,
},
{
title: Vue.computed(() => this.preloadedPhrasen.gueltigVonPhrase),
title: Vue.computed(() => this.$p.t('global/gueltigVon')),
field: "Gültig_von",
headerFilterFunc: 'dates',
headerFilter: dateFilter,
@@ -89,7 +89,7 @@ export default {
responsive: 4,
},
{
title: Vue.computed(() => this.preloadedPhrasen.gueltigBisPhrase),
title: Vue.computed(() => this.$p.t('global/gueltigBis')),
field: "Gültig_bis",
headerFilterFunc: 'dates',
headerFilter: dateFilter,
@@ -101,7 +101,7 @@ export default {
responsive: 3,
},
{
title: Vue.computed(() => this.preloadedPhrasen.wochenstundenPhrase),
title: Vue.computed(() => this.$p.t('profil/wochenstunden')),
field: "Wochenstunden",
headerFilter: true,
minWidth: 200,
@@ -137,7 +137,7 @@ export default {
responsive: 0,
},
{
title: Vue.computed(() => this.$p.t('ui/bezeichnung')),
title: Vue.computed(() => this.$p.t('profil/entlehnteBetriebsmittel')),
field: "betriebsmittel",
headerFilter: true,
minWidth: 200,
@@ -145,7 +145,7 @@ export default {
responsive: 0,
},
{
title: Vue.computed(() => this.preloadedPhrasen.inventarnummerPhrase),
title: Vue.computed(() => this.$p.t('profil/inventarnummer')),
field: "Nummer",
headerFilter: true,
resizable: true,
@@ -154,7 +154,7 @@ export default {
responsive: 2,
},
{
title: Vue.computed(() => this.preloadedPhrasen.ausgabedatumPhrase),
title: Vue.computed(() => this.$p.t('profil/ausgabedatum')),
field: "Ausgegeben_am",
headerFilterFunc: 'dates',
headerFilter: dateFilter,
@@ -229,8 +229,8 @@ export default {
});
},
setTableColumnTitles() { // reevaluates computed phrasen
if(this.$refs.betriebsmittelTable) this.$refs.betriebsmittelTable.tabulator.setColumns(this.betriebsmittel_table_options.columns)
if(this.$refs.funktionenTable) this.$refs.funktionenTable.tabulator.setColumns(this.funktionen_table_options.columns)
if(this.$refs.betriebsmittelTable) this.$refs.betriebsmittelTable.tabulator.setColumns(this.betriebsmittel_table_options.columns);
if(this.$refs.funktionenTable) this.$refs.funktionenTable.tabulator.setColumns(this.funktionen_table_options.columns);
},
datetimeFormatterParams: function() {
const params = {
@@ -311,15 +311,7 @@ export default {
created() {
// preload phrasen
this.$p.loadCategory(["ui","lehre","global","profil"]).then(() => {
this.preloadedPhrasen.bezeichnungPhrase = this.$p.t('ui/bezeichnung');
this.preloadedPhrasen.organisationseinheitPhrase = this.$p.t('lehre/organisationseinheit');
this.preloadedPhrasen.gueltigVonPhrase = this.$p.t('global/gueltigVon');
this.preloadedPhrasen.gueltigBisPhrase = this.$p.t('global/gueltigBis');
this.preloadedPhrasen.wochenstundenPhrase = this.$p.t('profil/wochenstunden');
this.preloadedPhrasen.entlehnteBetriebsmittelPhrase = this.$p.t('profil/entlehnteBetriebsmittel');
this.preloadedPhrasen.inventarnummerPhrase = this.$p.t('profil/inventarnummer');
this.preloadedPhrasen.ausgabedatumPhrase = this.$p.t('profil/ausgabedatum');
this.preloadedPhrasen.loaded=true;
this.arePhrasesPreloaded = true;
});
//? sorts the profil Updates: pending -> accepted -> rejected
this.data.profilUpdates?.sort(this.sortProfilUpdates);
@@ -450,7 +442,7 @@ export default {
<div class="col-12 mb-4" >
<!-- FUNKTIONEN TABELLE -->
<core-filter-cmpt
v-if="preloadedPhrasen.loaded"
v-if="arePhrasesPreloaded"
@tableBuilt="funktionenTableBuilt"
:title="$p.t('person','funktionen')"
ref="funktionenTable"
@@ -462,7 +454,7 @@ export default {
<div class="col-12 mb-4" >
<!-- BETRIEBSMITTEL TABELLE -->
<core-filter-cmpt
v-if="preloadedPhrasen.loaded"
v-if="arePhrasesPreloaded"
@tableBuilt="betriebsmittelTableBuilt"
:title="$p.t('profil','entlehnteBetriebsmittel')"
ref="betriebsmittelTable"
@@ -20,7 +20,7 @@ export default {
data() {
return {
collapseIconFunktionen: true,
preloadedPhrasen:{},
arePhrasesPreloaded: false,
funktionen_table_options: {
persistenceID: "filterTableMaViewProfilFunktionen",
persistence: {
@@ -182,12 +182,7 @@ export default {
},
created(){
this.$p.loadCategory(["ui", "lehre", "global", "profil"]).then(() => {
this.preloadedPhrasen.bezeichnungPhrase = this.$p.t('ui/bezeichnung');
this.preloadedPhrasen.organisationseinheitPhrase = this.$p.t('lehre/organisationseinheit');
this.preloadedPhrasen.gueltigVonPhrase = this.$p.t('global/gueltigVon');
this.preloadedPhrasen.gueltigBisPhrase = this.$p.t('global/gueltigBis');
this.preloadedPhrasen.wochenstundenPhrase = this.$p.t('profil/wochenstunden');
this.preloadedPhrasen.loaded = true;
this.arePhrasesPreloaded = true;
});
},
@@ -247,7 +242,7 @@ export default {
<div class="row">
<!-- FIRST TABLE -->
<div class="col-12 mb-4" >
<core-filter-cmpt v-if="preloadedPhrasen.loaded" @tableBuilt="funktionenTableBuilt" :title="$p.t('person','funktionen')" ref="funktionenTable" :tabulator-options="funktionen_table_options" tableOnly :sideMenu="false" />
<core-filter-cmpt v-if="arePhrasesPreloaded" @tableBuilt="funktionenTableBuilt" :title="$p.t('person','funktionen')" ref="funktionenTable" :tabulator-options="funktionen_table_options" tableOnly :sideMenu="false" />
</div>
<!-- END OF THE ROW WITH THE TABLES UNDER THE PROFIL INFORMATION -->
</div>
@@ -33,7 +33,7 @@ export default {
showModal: false,
collapseIconBetriebsmittel: true,
editDataFilter: null,
preloadedPhrasen:{},
arePhrasesPreloaded: false,
// tabulator options
zutrittsgruppen_table_options: {
persistenceID: "filterTableStudentProfilZutrittsgruppen",
@@ -44,7 +44,7 @@ export default {
layout: "fitColumns",
columns: [
{
title: Vue.computed(() => this.preloadedPhrasen.zutrittsGruppenPhrase),
title: Vue.computed(() => this.$p.t('profil/zutrittsGruppen')),
field: "bezeichnung"
}
],
@@ -73,7 +73,7 @@ export default {
responsive: 0,
},
{
title: Vue.computed(()=>this.preloadedPhrasen.entlehnteBetriebsmittelPhrase),
title: Vue.computed(()=>this.$p.t('profil/entlehnteBetriebsmittel')),
field: "betriebsmittel",
headerFilter: true,
minWidth: 200,
@@ -81,7 +81,7 @@ export default {
responsive: 0,
},
{
title: Vue.computed(() =>this.preloadedPhrasen.inventarnummerPhrase) ,
title: Vue.computed(() => this.$p.t('profil/inventarnummer')) ,
field: "Nummer",
headerFilter: true,
resizable: true,
@@ -90,7 +90,7 @@ export default {
responsive: 2,
},
{
title: Vue.computed(() =>this.preloadedPhrasen.ausgabedatum) ,
title: Vue.computed(() => this.$p.t('profil/ausgabedatum')) ,
field: "Ausgegeben_am",
headerFilterFunc: 'dates',
headerFilter: dateFilter,
@@ -249,11 +249,7 @@ export default {
created() {
// preload phrasen
this.$p.loadCategory('profil').then(() => {
this.preloadedPhrasen.zutrittsGruppenPhrase = this.$p.t('profil/zutrittsGruppen');
this.preloadedPhrasen.entlehnteBetriebsmittelPhrase = this.$p.t('profil/entlehnteBetriebsmittel');
this.preloadedPhrasen.inventarnummerPhrase = this.$p.t('profil/inventarnummer');
this.preloadedPhrasen.ausgabedatum = this.$p.t('profil/ausgabedatum');
this.preloadedPhrasen.loaded = true;
this.arePhrasesPreloaded = true;
});
//? sorts the profil Updates: pending -> accepted -> rejected
this.data.profilUpdates?.sort(this.sortProfilUpdates);
@@ -384,7 +380,7 @@ export default {
<div class="row">
<div class="col-12 mb-4" >
<core-filter-cmpt
v-if="preloadedPhrasen.loaded"
v-if="arePhrasesPreloaded"
@tableBuilt="betriebsmittelTableBuilt"
:title="$p.t('profil','entlehnteBetriebsmittel')"
ref="betriebsmittelTable"
@@ -394,7 +390,7 @@ export default {
</div>
<div class="col-12 mb-4" >
<core-filter-cmpt
v-if="preloadedPhrasen.loaded"
v-if="arePhrasesPreloaded"
@tableBuilt="zutrittsgruppenTableBuilt"
:title="$p.t('profil','zutrittsGruppen')"
ref="zutrittsgruppenTable"