mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
move dropdown profileUpdateStates to FilterComponent, delete not needed code
This commit is contained in:
@@ -1,51 +0,0 @@
|
||||
<?php
|
||||
$filterCmptArray = array(
|
||||
"app" => 'core',
|
||||
'datasetName' => 'profileupdate',
|
||||
'query' => '
|
||||
SELECT
|
||||
profil_update_id,
|
||||
tbl_profil_update.uid,
|
||||
(tbl_person.vorname || \' \' || tbl_person.nachname) AS name ,
|
||||
topic,
|
||||
requested_change,
|
||||
tbl_profil_update.updateamum,
|
||||
tbl_profil_update.updatevon,
|
||||
tbl_profil_update.insertamum,
|
||||
tbl_profil_update.insertvon,
|
||||
status,
|
||||
public.tbl_profil_update_status.bezeichnung_mehrsprachig[(" . $lang . ")] as status_translated,
|
||||
status_timestamp,
|
||||
status_message,
|
||||
attachment_id,
|
||||
UPPER(public.tbl_studiengang.typ || public.tbl_studiengang.kurzbz) AS studiengang,
|
||||
COALESCE(of.orgform_kurzbz, public.tbl_studiengang.orgform_kurzbz) AS orgform,
|
||||
NULL as oezuordnung,
|
||||
tbl_student.semester
|
||||
FROM public.tbl_profil_update
|
||||
JOIN public.tbl_profil_update_status ON public.tbl_profil_update_status.status_kurzbz = public.tbl_profil_update.status
|
||||
JOIN public.tbl_student ON public.tbl_student.student_uid=public.tbl_profil_update.uid
|
||||
JOIN public.tbl_benutzer ON public.tbl_benutzer.uid = public.tbl_student.student_uid
|
||||
JOIN public.tbl_person ON public.tbl_benutzer.person_id=public.tbl_person.person_id
|
||||
JOIN public.tbl_studiengang ON public.tbl_studiengang.studiengang_kz=public.tbl_student.studiengang_kz
|
||||
LEFT JOIN (
|
||||
select
|
||||
pss.prestudent_id, COALESCE(sp.orgform_kurzbz, pss.orgform_kurzbz) as orgform_kurzbz
|
||||
from (
|
||||
select
|
||||
prestudent_id, max(insertamum) as insertamum
|
||||
from
|
||||
public.tbl_prestudentstatus
|
||||
where
|
||||
datum <= NOW()
|
||||
group by
|
||||
prestudent_id
|
||||
) mpss
|
||||
join
|
||||
public.tbl_prestudentstatus pss on pss.prestudent_id = mpss.prestudent_id and pss.insertamum = mpss.insertamum
|
||||
left join
|
||||
lehre.tbl_studienplan sp on pss.studienplan_id = sp.studienplan_id
|
||||
) of ON of.prestudent_id = public.tbl_student.prestudent_id
|
||||
',
|
||||
'requiredPermissions' => 'student/stammdaten'
|
||||
);
|
||||
@@ -212,7 +212,13 @@ export default {
|
||||
headerFilterParams: {valuesLookup:true, listOnEmpty:true, autocomplete:true, sort:"asc"},
|
||||
//responsive:0,
|
||||
},
|
||||
{
|
||||
{
|
||||
title: this.$p.t("profil", "sem_short") + ' (' + this.$p.t("profil", "studentIn") + ')',
|
||||
field: "semester",
|
||||
headerFilter: "list",
|
||||
headerFilterParams: {valuesLookup:true, listOnEmpty:true, autocomplete:true, sort:"asc"}
|
||||
},
|
||||
{
|
||||
title: this.$p.t("profil", "orgform_short") + ' (' + this.$p.t("profil", "studentIn") + ')',
|
||||
field: "orgform",
|
||||
minWidth: 50,
|
||||
@@ -221,8 +227,8 @@ export default {
|
||||
headerFilterParams: {valuesLookup:true, listOnEmpty:true, autocomplete:true, sort:"asc"},
|
||||
//responsive:0,
|
||||
},
|
||||
{
|
||||
title: this.$p.t("lehre", "organisationseinheit") + ' (' + this.$p.t("profil", "mitarbeiterIn") + ')',
|
||||
{
|
||||
title: this.$p.t("profil", "orgeinheit_short") + ' (' + this.$p.t("profil", "mitarbeiterIn") + ')',
|
||||
field: "oezuordnung",
|
||||
minWidth: 200,
|
||||
resizable: true,
|
||||
@@ -230,7 +236,7 @@ export default {
|
||||
headerFilterParams: {valuesLookup:true, listOnEmpty:true, autocomplete:true, sort:"asc"},
|
||||
//responsive:0,
|
||||
},
|
||||
{
|
||||
{
|
||||
title: this.$p.t("profilUpdate", "Topic"),
|
||||
field: "topic",
|
||||
resizable: true,
|
||||
@@ -239,7 +245,7 @@ export default {
|
||||
headerFilterParams: {valuesLookup:true, listOnEmpty:true, autocomplete:true, sort:"asc"},
|
||||
//responsive:0,
|
||||
},
|
||||
{
|
||||
{
|
||||
title: this.$p.t("profilUpdate", "insertamum"),
|
||||
field: "insertamum_iso",
|
||||
resizable: true,
|
||||
@@ -250,7 +256,7 @@ export default {
|
||||
formatterParams: this.datetimeFormatterParams(),
|
||||
//responsive:0,
|
||||
},
|
||||
{
|
||||
{
|
||||
title: this.$p.t("profilUpdate", "Status"),
|
||||
field: "status_translated",
|
||||
hozAlign: "center",
|
||||
@@ -272,17 +278,10 @@ export default {
|
||||
}
|
||||
return `<div class='row justify-content-center'><div class='col-2'><i class='${iconClasses}'></i></div> <div class='col-4'><span>${cell.getValue()}</span></div></div>`;
|
||||
},
|
||||
|
||||
resizable: true,
|
||||
minWidth: 200,
|
||||
//responsive:0,
|
||||
},
|
||||
{
|
||||
title: this.$p.t("lehre", "ausbildungssemester"),
|
||||
field: "semester",
|
||||
headerFilter: "list",
|
||||
headerFilterParams: {valuesLookup:true, listOnEmpty:true, autocomplete:true, sort:"asc"}
|
||||
},
|
||||
{
|
||||
title: this.$p.t("profilUpdate", "actions"),
|
||||
headerSort: false,
|
||||
@@ -314,7 +313,6 @@ export default {
|
||||
],
|
||||
};
|
||||
}
|
||||
|
||||
},
|
||||
methods: {
|
||||
denyProfilUpdate: function (data) {
|
||||
@@ -356,7 +354,6 @@ export default {
|
||||
this.showModal = false;
|
||||
this.modalData = null;
|
||||
},
|
||||
|
||||
showAcceptDenyModal(value) {
|
||||
this.modalData = value;
|
||||
if (!this.modalData) {
|
||||
@@ -369,7 +366,6 @@ export default {
|
||||
this.$refs.AcceptDenyModal.show();
|
||||
});
|
||||
},
|
||||
|
||||
updateData: function (event) {
|
||||
this.$refs.UpdatesTable.tabulator.setData();
|
||||
//? store the selected view in the session storage of the browser
|
||||
@@ -417,105 +413,33 @@ export default {
|
||||
if (sessionStorage.getItem("filter")) {
|
||||
this.filter = sessionStorage.getItem("filter");
|
||||
}
|
||||
|
||||
/*
|
||||
<div class="form-underline flex-fill ">
|
||||
<div class="form-underline-titel">{{$p.t('ui','anzeigen')}} </div>
|
||||
|
||||
<select class="mb-4 form-select" v-model="filter" @change="updateData" aria-label="Profil updates display selection">
|
||||
<option :selected="true" :value="profilUpdateStates['Pending']" >{{$p.t('profilUpdate','pendingRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Accepted']">{{$p.t('profilUpdate','acceptedRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Rejected']">{{$p.t('profilUpdate','rejectedRequests')}}</option>
|
||||
<option :value="'Alle'">{{$p.t('profilUpdate','allRequests')}}</option>
|
||||
</select>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
:title="$p.t('profilUpdate','profilUpdateRequests')"
|
||||
|
||||
<h3>{{$p.t('profilUpdate', 'profilUpdateRequests')}}</h3>
|
||||
|
||||
|
||||
<div class="col-auto row row-cols-lg-auto d-flex justify-content-end">
|
||||
<div class="col-12">
|
||||
<select class="mb-4 form-select" v-model="filter" @change="updateData" aria-label="Profil updates display selection">
|
||||
<option :selected="true" :value="profilUpdateStates['Pending']" >{{$p.t('profilUpdate','pendingRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Accepted']">{{$p.t('profilUpdate','acceptedRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Rejected']">{{$p.t('profilUpdate','rejectedRequests')}}</option>
|
||||
<option :value="'Alle'">{{$p.t('profilUpdate','allRequests')}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
//Version mit filter rechts in eigener zeile
|
||||
<template #filter>
|
||||
<div class="col-auto row row-cols-lg-auto g-3 d-flex justify-content-end">
|
||||
<div class="col-12">
|
||||
<select class="mb-4 form-select" v-model="filter" @change="updateData" aria-label="Profil updates display selection">
|
||||
<option :selected="true" :value="profilUpdateStates['Pending']" >{{$p.t('profilUpdate','pendingRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Accepted']">{{$p.t('profilUpdate','acceptedRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Rejected']">{{$p.t('profilUpdate','rejectedRequests')}}</option>
|
||||
<option :value="'Alle'">{{$p.t('profilUpdate','allRequests')}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
<div class="justify-content-end pb-3">
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-auto row row-cols-lg-auto g-3 d-flex justify-content-end">
|
||||
|
||||
//backendfilter not working: no parameters provided
|
||||
<core-filter-cmpt
|
||||
v-if="profilUpdateStates && categoryLoaded"
|
||||
ref="UpdatesTable"
|
||||
:tabulatorEvents="profilUpdateEvents"
|
||||
:tabulator-options="profilUpdateOptions"
|
||||
filter-type="Profileupdate"
|
||||
:sideMenu="false">
|
||||
</core-filter-cmpt>
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
},
|
||||
template: /*html*/ `
|
||||
<div>
|
||||
<accept-deny-update :title="$p.t('profilUpdate','profilUpdateRequest')" v-if="showModal" ref="AcceptDenyModal" @hideBsModal="hideAcceptDenyModal" :value="JSON.parse(JSON.stringify(modalData))" :setLoading="setLoading" ></accept-deny-update>
|
||||
<h3>{{$p.t('profilUpdate', 'profilUpdateRequests')}}</h3>
|
||||
<loading ref="loadingModalRef" :timeout="0"></loading>
|
||||
|
||||
<accept-deny-update :title="$p.t('profilUpdate','profilUpdateRequest')" v-if="showModal" ref="AcceptDenyModal" @hideBsModal="hideAcceptDenyModal" :value="JSON.parse(JSON.stringify(modalData))" :setLoading="setLoading" ></accept-deny-update>
|
||||
|
||||
<h3>{{$p.t('profilUpdate', 'profilUpdateRequests')}}</h3>
|
||||
|
||||
<loading ref="loadingModalRef" :timeout="0"></loading>
|
||||
|
||||
<div class="col-auto row row-cols-lg-auto g-3 d-flex justify-content-end">
|
||||
|
||||
<div class="col-12">
|
||||
<select class="mb-0 form-select" v-model="filter" @change="updateData" aria-label="Profil updates display selection">
|
||||
<option :selected="true" :value="profilUpdateStates['Pending']" >{{$p.t('profilUpdate','pendingRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Accepted']">{{$p.t('profilUpdate','acceptedRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Rejected']">{{$p.t('profilUpdate','rejectedRequests')}}</option>
|
||||
<option :value="'Alle'">{{$p.t('profilUpdate','allRequests')}}</option>
|
||||
</select>
|
||||
<core-filter-cmpt
|
||||
v-if="profilUpdateStates && categoryLoaded"
|
||||
ref="UpdatesTable"
|
||||
:tabulatorEvents="profilUpdateEvents"
|
||||
:tabulator-options="profilUpdateOptions"
|
||||
table-only
|
||||
:sideMenu="false">
|
||||
<template #actions>
|
||||
<div style="width: 94vw;" class="d-flex justify-content-end">
|
||||
<div>
|
||||
<select class="mb-4 form-select" v-model="filter" @change="updateData" aria-label="Profil updates display selection">
|
||||
<option :selected="true" :value="profilUpdateStates['Pending']" >{{$p.t('profilUpdate','pendingRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Accepted']">{{$p.t('profilUpdate','acceptedRequests')}}</option>
|
||||
<option :value="profilUpdateStates['Rejected']">{{$p.t('profilUpdate','rejectedRequests')}}</option>
|
||||
<option :value="'Alle'">{{$p.t('profilUpdate','allRequests')}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</core-filter-cmpt>
|
||||
|
||||
|
||||
<core-filter-cmpt
|
||||
v-if="profilUpdateStates && categoryLoaded"
|
||||
ref="UpdatesTable"
|
||||
:tabulatorEvents="profilUpdateEvents"
|
||||
:tabulator-options="profilUpdateOptions"
|
||||
table-only
|
||||
:sideMenu="false">
|
||||
</core-filter-cmpt>
|
||||
|
||||
</div>`,
|
||||
</div>`,
|
||||
};
|
||||
|
||||
@@ -1558,64 +1558,6 @@ $filters = array(
|
||||
}',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'profileupdate',
|
||||
'filter_kurzbz' => 'ProfilupdatePending',
|
||||
'description' => '{Ausstehende Anfragen}',
|
||||
'sort' => 1,
|
||||
'default_filter' => true,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "Ausstehende Anfragen",
|
||||
"columns": [
|
||||
{"name": "uid"},
|
||||
{"name": "name"},
|
||||
{"name": "studiengang"},
|
||||
{"name": "orgform"},
|
||||
{"name": "oezuordnung"},
|
||||
{"name": "status_translated"},
|
||||
{"name": "topic"},
|
||||
{"name": "insertamum_iso"},
|
||||
{"name": "semester"}
|
||||
],
|
||||
"filters": [
|
||||
{
|
||||
"name": "status_translated",
|
||||
"option": "",
|
||||
"operation": "equal",
|
||||
"condition": "true"
|
||||
}
|
||||
]
|
||||
}',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'dataset_name' => 'profileupdate',
|
||||
'filter_kurzbz' => 'ProfilupdateAlle',
|
||||
'description' => '{Alle Anfragen}',
|
||||
'sort' => 1,
|
||||
'default_filter' => false,
|
||||
'filter' => '
|
||||
{
|
||||
"name": "Alle Anfragen",
|
||||
"columns": [
|
||||
{"name": "uid"},
|
||||
{"name": "name"},
|
||||
{"name": "studiengang"},
|
||||
{"name": "orgform"},
|
||||
{"name": "oezuordnung"},
|
||||
{"name": "status_translated"},
|
||||
{"name": "topic"},
|
||||
{"name": "insertamum_iso"},
|
||||
{"name": "semester"}
|
||||
],
|
||||
"filters": []
|
||||
}',
|
||||
'oe_kurzbz' => null,
|
||||
),
|
||||
|
||||
);
|
||||
|
||||
// Loop through the filters array
|
||||
|
||||
@@ -28636,6 +28636,45 @@ array(
|
||||
)
|
||||
)
|
||||
),
|
||||
array(
|
||||
'app' => 'core',
|
||||
'category' => 'profil',
|
||||
'phrase' => 'orgeinheit_short',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'OrgEH',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'org Unit',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
), array(
|
||||
'app' => 'core',
|
||||
'category' => 'profil',
|
||||
'phrase' => 'sem_short',
|
||||
'insertvon' => 'system',
|
||||
'phrases' => array(
|
||||
array(
|
||||
'sprache' => 'German',
|
||||
'text' => 'Sem',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
),
|
||||
array(
|
||||
'sprache' => 'English',
|
||||
'text' => 'sem',
|
||||
'description' => '',
|
||||
'insertvon' => 'system'
|
||||
)
|
||||
)
|
||||
),
|
||||
//Profil Phrasen ende
|
||||
// LvPlan Phrasen start
|
||||
array(
|
||||
|
||||
Reference in New Issue
Block a user