Projektabgabe Übersicht: added phrases

This commit is contained in:
Alexei Karpenko
2025-11-10 17:37:24 +01:00
parent 6861e26ed6
commit 91d24ebae8
4 changed files with 286 additions and 20 deletions
@@ -141,7 +141,7 @@ class PaabgabeUebersicht extends FHCAPI_Controller
$personSearchString = $this->input->get('personSearchString');
if (!isset($studiengang_kz) && !isset($abgabetyp_kurzbz) && !isset($abgabedatum) && !isset($personSearchString))
$this->terminateWithFileOutput('text/plain', $this->p->t('abgabetool', 'keineAuswahl'));
$this->terminateWithFileOutput('text/plain', $this->p->t('abgabetool', 'nichtsAusgewaehlt'));
$this->load->library('zip');
@@ -177,7 +177,7 @@ class Paabgabe_model extends DB_Model
$qry = "
SELECT
DISTINCT campus.tbl_paabgabe.datum as termin, to_char(campus.tbl_paabgabe.datum, 'DD.MM.YYYY') as termin_anzeige
DISTINCT tbl_paabgabe.datum as termin, to_char(tbl_paabgabe.datum, 'DD.MM.YYYY') as termin_anzeige
FROM
lehre.tbl_projektarbeit
JOIN campus.tbl_paabgabe USING(projektarbeit_id)
@@ -24,15 +24,15 @@ export const ProjektabgabeUebersicht = {
abgaben: null,
defaultStudiengang: {
studiengang_kz: null,
kuerzel: Vue.computed(() => this.$p.t('abgabetool/studiengangWaehlen'))
kuerzel: '-'
},
defaultTyp: {
paabgabetyp_kurzbz: null,
bezeichnung: Vue.computed(() => this.$p.t('abgabetool/abgabetypWaehlen'))
bezeichnung: '-'
},
defaultTermin: {
termin: null,
termin_anzeige: Vue.computed(() => this.$p.t('abgabetool/terminWaehlen'))
termin_anzeige: Vue.computed(() => this.$p.t('ui/alle'))
},
selectedStudiengang: null,
selectedAbgabetyp: null,
@@ -74,8 +74,8 @@ export const ProjektabgabeUebersicht = {
return container;
}
},
{title: Vue.computed(() => this.$p.t('abgabetool/paabgabeid')), field: 'paabgabe_id', widthGrow: 1, visible: false},
{title: Vue.computed(() => this.$p.t('abgabetool/projektarbeitid')), field: 'projektarbeit_id', widthGrow: 1, visible: false},
{title: Vue.computed(() => this.$p.t('abgabetool/paabgabeid')), field: 'paabgabe_id', visible: false},
{title: Vue.computed(() => this.$p.t('abgabetool/projektarbeitid')), field: 'projektarbeit_id', visible: false},
{
title: Vue.computed(() => this.$p.t('abgabetool/termin')),
field: "termin",
@@ -93,15 +93,15 @@ export const ProjektabgabeUebersicht = {
});
}
},
{title: Vue.computed(() => this.$p.t('abgabetool/c4abgabetyp')), field: 'paabgabetyp_bezeichnung', widthGrow: 1},
{title: Vue.computed(() => this.$p.t('person/uid')), field: 'uid', widthGrow: 1},
{title: Vue.computed(() => this.$p.t('person/vorname')), field: 'vorname', widthGrow: 1},
{title: Vue.computed(() => this.$p.t('person/nachname')), field: 'nachname', widthGrow: 1},
{title: Vue.computed(() => this.$p.t('abgabetool/typ')), field: 'projekttyp_kurzbz', widthGrow: 1},
{title: Vue.computed(() => this.$p.t('abgabetool/titel')), field: 'titel', widthGrow: 1},
{title: Vue.computed(() => this.$p.t('abgabetool/status')), field: 'status', widthGrow: 2},
{title: Vue.computed(() => this.$p.t('abgabetool/c4abgabetyp')), field: 'paabgabetyp_bezeichnung'},
{title: Vue.computed(() => this.$p.t('person/uid')), field: 'uid'},
{title: Vue.computed(() => this.$p.t('person/vorname')), field: 'vorname'},
{title: Vue.computed(() => this.$p.t('person/nachname')), field: 'nachname'},
{title: Vue.computed(() => this.$p.t('abgabetool/c4projekttyp')), field: 'projekttyp_kurzbz'},
{title: Vue.computed(() => this.$p.t('abgabetool/c4titel')), field: 'titel'},
{title: Vue.computed(() => this.$p.t('abgabetool/personStatus')), field: 'personStatus'},
{
title: Vue.computed(() => this.$p.t('abgabetool/inVisualLibrary')),
title: "in Visual Library",
field: 'in_visual_library',
widthGrow: 1,
formatter: (cell) => {
@@ -245,6 +245,7 @@ export const ProjektabgabeUebersicht = {
<div class="row">
<div class="col-12 col-lg-2">
<h6>{{ $p.t('abgabetool/studiengang') }}:</h6>
<select
ref="studiengang"
id="studiengangSelect"
@@ -260,12 +261,13 @@ export const ProjektabgabeUebersicht = {
</div>
<div class="col-12 col-lg-2">
<h6>{{ $p.t('abgabetool/c4abgabetyp') }}:</h6>
<select
ref="abgabetyp"
id="abgabetypSelect"
v-model="selectedAbgabetyp"
class="form-select"
:aria-label="$p.t('abgabetool/termin_auswaehlen')"
:aria-label="$p.t('abgabetool/abgabetyp_auswaehlen')"
:disabled="!abgabeSearchEnabled"
@change="loadTermine();"
>
@@ -275,12 +277,13 @@ export const ProjektabgabeUebersicht = {
</div>
<div class="col-12 col-lg-2">
<h6>{{ $p.t('abgabetool/termin') }}:</h6>
<select
ref="termin"
id="terminSelect"
v-model="selectedTermin"
class="form-select"
:aria-label="$p.t('abgabetool/abgabetyp_auswaehlen')"
:aria-label="$p.t('abgabetool/termin_auswaehlen')"
:disabled="!abgabeSearchEnabled"
>
<option :key="defaultTermin.termin" selected :value="defaultTermin.termin">{{defaultTermin.termin_anzeige}}</option>
@@ -289,21 +292,22 @@ export const ProjektabgabeUebersicht = {
</div>
<div class="col-12 col-lg-2">
<h6>{{ $p.t('abgabetool/personsuche') }}:</h6>
<input
type="text"
name="person-search"
class="form-control"
:placeholder="$p.t('abgabetool/nach_person_suchen')"
:placeholder="'name, uid, person ID, prestudent ID'"
:disabled="!personSearchEnabled"
v-on:keyup.enter="loadPaAbgaben"
v-model="personSearchString"
/>
</div>
<div class="col-12 col-lg-2">
<div class="col-12 col-lg-2 align-content-end">
<button class="btn btn-primary border-0" @click="loadPaAbgaben">{{ $p.t('abgabetool/anzeigen') }}</button>
</div>
<div class="col-12 col-lg-2">
<div class="col-12 col-lg-2 align-content-end">
<button class="btn btn-secondary border-0" @click="actionDownloadZip">{{ $p.t('abgabetool/zipDownload') }}</button>
</div>
+262
View File
@@ -49981,8 +49981,270 @@ I have been informed that I am under no obligation to consent to the transmissio
'description' => '',
'insertvon' => 'system'
)
)
),
//**************************** CIS Projektabgabeuebersicht start
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'studiengang',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Studiengang',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'study program',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'studiengangWaehlen',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Studiengang auswählen',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Select study program',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'abgabetypWaehlen',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Abgabetyp auswählen',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Select type of submission',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'terminWaehlen',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Termin auswählen',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Select due date',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'personsuche',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Personsuche',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'person search',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'anzeigen',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Abgaben anzeigen',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Show submissions',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'zipDownload',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'ZIP herunterladen',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'Download ZIP',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'paabgabeid',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Projektabgabe ID',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'thesis submission ID',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'projektarbeitid',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Projektarbeit ID',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'projekt work ID',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'termin',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Termin',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'due date',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'personStatus',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Personstatus',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'person status',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'nichtsAusgewaehlt',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Nichts ausgewählt',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'No selection',
'description' => '',
'insertvon' => 'system'
)
)
),
array(
'app' => 'core',
'category' => 'abgabetool',
'phrase' => 'keineDateienVorhanden',
'insertvon' => 'system',
'phrases' => array(
array(
'sprache' => 'German',
'text' => 'Keine Dateien vorhanden',
'description' => '',
'insertvon' => 'system'
),
array(
'sprache' => 'English',
'text' => 'No files available',
'description' => '',
'insertvon' => 'system'
)
)
)
//**************************** CIS Projektabgabeuebersicht ende
);