mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-26 09:04:28 +00:00
funktionen/betriebsmittel table in profil & viewprofil got computed phrasen title; provide computed language reference in fhc app from phrasen plugin to watch for language changes to reevaluate computed phrasen in columns with; added some phrasen;
This commit is contained in:
@@ -89,6 +89,11 @@ const app = Vue.createApp({
|
|||||||
return /Mobi|Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
|
return /Mobi|Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
provide() {
|
||||||
|
return { // provide injectable & watchable language property
|
||||||
|
language: Vue.computed(() => this.$p.user_language)
|
||||||
|
}
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
isInternalRoute(href) {
|
isInternalRoute(href) {
|
||||||
const internalBase = window.location.origin
|
const internalBase = window.location.origin
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ export default {
|
|||||||
ProfilInformation,
|
ProfilInformation,
|
||||||
},
|
},
|
||||||
|
|
||||||
inject: ["sortProfilUpdates", "collapseFunction"],
|
inject: ["sortProfilUpdates", "collapseFunction", "language"],
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@@ -56,21 +56,21 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Bezeichnung",
|
title: Vue.computed(() => this.$p.t('ui/bezeichnung')),
|
||||||
field: "Bezeichnung",
|
field: "Bezeichnung",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Organisationseinheit",
|
title: Vue.computed(() => this.$p.t('lehre/organisationseinheit')),
|
||||||
field: "Organisationseinheit",
|
field: "Organisationseinheit",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Gültig_von",
|
title: Vue.computed(() => this.$p.t('global/gueltigVon')),
|
||||||
field: "Gültig_von",
|
field: "Gültig_von",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
resizable: true,
|
resizable: true,
|
||||||
@@ -78,7 +78,7 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Gültig_bis",
|
title: Vue.computed(() => this.$p.t('global/gueltigBis')),
|
||||||
field: "Gültig_bis",
|
field: "Gültig_bis",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
resizable: true,
|
resizable: true,
|
||||||
@@ -86,7 +86,7 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Wochenstunden",
|
title: Vue.computed(() => this.$p.t('profil/wochenstunden')),
|
||||||
field: "Wochenstunden",
|
field: "Wochenstunden",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
@@ -96,6 +96,10 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
betriebsmittel_table_options: {
|
betriebsmittel_table_options: {
|
||||||
|
persistenceID: "filterTableMaProfilBetriebsmittel",
|
||||||
|
persistence: {
|
||||||
|
columns: false
|
||||||
|
},
|
||||||
height: 300,
|
height: 300,
|
||||||
layout: "fitColumns",
|
layout: "fitColumns",
|
||||||
responsiveLayout: "collapse",
|
responsiveLayout: "collapse",
|
||||||
@@ -115,14 +119,14 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Betriebsmittel",
|
title: Vue.computed(() => this.$p.t('profil/entlehnteBetriebsmittel')),
|
||||||
field: "betriebsmittel",
|
field: "betriebsmittel",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Nummer",
|
title: Vue.computed(() => this.$p.t('profil/inventarnummer')),
|
||||||
field: "Nummer",
|
field: "Nummer",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
resizable: true,
|
resizable: true,
|
||||||
@@ -130,7 +134,7 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Ausgegeben_am",
|
title: Vue.computed(() => this.$p.t('profil/ausgabedatum')),
|
||||||
field: "Ausgegeben_am",
|
field: "Ausgegeben_am",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
@@ -145,17 +149,14 @@ export default {
|
|||||||
data: Object,
|
data: Object,
|
||||||
editData: Object,
|
editData: Object,
|
||||||
},
|
},
|
||||||
'data.funktionen'(newVal) {
|
|
||||||
if(this.$refs.funktionenTable) this.$refs.funktionenTable.tabulator.setData(newVal);
|
|
||||||
},
|
|
||||||
'data.mittel'(newVal) {
|
|
||||||
if(this.$refs.betriebsmittelTable) this.$refs.betriebsmittelTable.tabulator.setData(newVal);
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
betriebsmittelTableBuilt: function () {
|
betriebsmittelTableBuilt: function () {
|
||||||
|
this.$refs.betriebsmittelTable.tabulator.setColumns(this.betriebsmittel_table_options.columns)
|
||||||
this.$refs.betriebsmittelTable.tabulator.setData(this.data.mittel);
|
this.$refs.betriebsmittelTable.tabulator.setData(this.data.mittel);
|
||||||
},
|
},
|
||||||
funktionenTableBuilt: function () {
|
funktionenTableBuilt: function () {
|
||||||
|
this.$refs.funktionenTable.tabulator.setColumns(this.funktionen_table_options.columns)
|
||||||
this.$refs.funktionenTable.tabulator.setData(this.data.funktionen);
|
this.$refs.funktionenTable.tabulator.setData(this.data.funktionen);
|
||||||
},
|
},
|
||||||
hideEditProfilModal: function () {
|
hideEditProfilModal: function () {
|
||||||
@@ -202,6 +203,10 @@ 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)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
@@ -274,10 +279,17 @@ export default {
|
|||||||
this.data.profilUpdates?.sort(this.sortProfilUpdates);
|
this.data.profilUpdates?.sort(this.sortProfilUpdates);
|
||||||
|
|
||||||
},
|
},
|
||||||
mounted() {
|
watch: {
|
||||||
|
'data.funktionen'(newVal) {
|
||||||
|
if(this.$refs.funktionenTable) this.$refs.funktionenTable.tabulator.setData(newVal);
|
||||||
|
},
|
||||||
|
'data.mittel'(newVal) {
|
||||||
|
if(this.$refs.betriebsmittelTable) this.$refs.betriebsmittelTable.tabulator.setData(newVal);
|
||||||
|
},
|
||||||
|
'language.value'(newVal) {
|
||||||
|
this.setTableColumnTitles()
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
template: /*html*/ `
|
template: /*html*/ `
|
||||||
<div class="container-fluid text-break fhc-form" >
|
<div class="container-fluid text-break fhc-form" >
|
||||||
<edit-profil v-if="showModal" ref="editModal" @hideBsModal="hideEditProfilModal" :value="JSON.parse(JSON.stringify(filteredEditData))" :title="$p.t('profil','profilBearbeiten')"></edit-profil>
|
<edit-profil v-if="showModal" ref="editModal" @hideBsModal="hideEditProfilModal" :value="JSON.parse(JSON.stringify(filteredEditData))" :title="$p.t('profil','profilBearbeiten')"></edit-profil>
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ export default {
|
|||||||
ProfilEmails,
|
ProfilEmails,
|
||||||
ProfilInformation,
|
ProfilInformation,
|
||||||
},
|
},
|
||||||
inject: ["collapseFunction"],
|
inject: ["collapseFunction", "language"],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
collapseIconFunktionen: true,
|
collapseIconFunktionen: true,
|
||||||
@@ -44,21 +44,21 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Bezeichnung",
|
title: Vue.computed(() => this.$p.t('ui/bezeichnung')),
|
||||||
field: "Bezeichnung",
|
field: "Bezeichnung",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Organisationseinheit",
|
title: Vue.computed(() => this.$p.t('lehre/organisationseinheit')),
|
||||||
field: "Organisationseinheit",
|
field: "Organisationseinheit",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Gültig_von",
|
title: Vue.computed(() => this.$p.t('global/gueltigVon')),
|
||||||
field: "Gültig_von",
|
field: "Gültig_von",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
resizable: true,
|
resizable: true,
|
||||||
@@ -66,7 +66,7 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Gültig_bis",
|
title: Vue.computed(() => this.$p.t('global/gueltigBis')),
|
||||||
field: "Gültig_bis",
|
field: "Gültig_bis",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
resizable: true,
|
resizable: true,
|
||||||
@@ -74,7 +74,7 @@ export default {
|
|||||||
visible: true
|
visible: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Wochenstunden",
|
title: Vue.computed(() => this.$p.t('profil/wochenstunden')),
|
||||||
field: "Wochenstunden",
|
field: "Wochenstunden",
|
||||||
headerFilter: true,
|
headerFilter: true,
|
||||||
minWidth: 200,
|
minWidth: 200,
|
||||||
@@ -96,6 +96,9 @@ export default {
|
|||||||
'data.funktionen'(newVal) {
|
'data.funktionen'(newVal) {
|
||||||
if(this.$refs.funktionenTable) this.$refs.funktionenTable.tabulator.setData(newVal);
|
if(this.$refs.funktionenTable) this.$refs.funktionenTable.tabulator.setData(newVal);
|
||||||
},
|
},
|
||||||
|
'language.value'(newVal) { // reevaluates computed phrasen
|
||||||
|
if(this.$refs.funktionenTable) this.$refs.funktionenTable.tabulator.setColumns(this.funktionen_table_options.columns)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
getTelefonValue() {
|
getTelefonValue() {
|
||||||
|
|||||||
@@ -27536,6 +27536,66 @@ array(
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
array(
|
||||||
|
'app' => 'core',
|
||||||
|
'category' => 'profil',
|
||||||
|
'phrase' => 'inventarnummer',
|
||||||
|
'insertvon' => 'system',
|
||||||
|
'phrases' => array(
|
||||||
|
array(
|
||||||
|
'sprache' => 'German',
|
||||||
|
'text' => 'Inventarnummer',
|
||||||
|
'description' => '',
|
||||||
|
'insertvon' => 'system'
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'sprache' => 'English',
|
||||||
|
'text' => 'inventory number',
|
||||||
|
'description' => '',
|
||||||
|
'insertvon' => 'system'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'app' => 'core',
|
||||||
|
'category' => 'profil',
|
||||||
|
'phrase' => 'ausgabedatum',
|
||||||
|
'insertvon' => 'system',
|
||||||
|
'phrases' => array(
|
||||||
|
array(
|
||||||
|
'sprache' => 'German',
|
||||||
|
'text' => 'Ausgabedatum',
|
||||||
|
'description' => '',
|
||||||
|
'insertvon' => 'system'
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'sprache' => 'English',
|
||||||
|
'text' => 'issue date',
|
||||||
|
'description' => '',
|
||||||
|
'insertvon' => 'system'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'app' => 'core',
|
||||||
|
'category' => 'profil',
|
||||||
|
'phrase' => 'wochenstunden',
|
||||||
|
'insertvon' => 'system',
|
||||||
|
'phrases' => array(
|
||||||
|
array(
|
||||||
|
'sprache' => 'German',
|
||||||
|
'text' => 'Wochenstunden',
|
||||||
|
'description' => '',
|
||||||
|
'insertvon' => 'system'
|
||||||
|
),
|
||||||
|
array(
|
||||||
|
'sprache' => 'English',
|
||||||
|
'text' => 'working hours',
|
||||||
|
'description' => '',
|
||||||
|
'insertvon' => 'system'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
),
|
||||||
//Profil Phrasen ende
|
//Profil Phrasen ende
|
||||||
//ProfilUpdate Phrasen start
|
//ProfilUpdate Phrasen start
|
||||||
array(
|
array(
|
||||||
|
|||||||
Reference in New Issue
Block a user