mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-10-28 14:53:01 +00:00
Compare commits
12
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fe638e926a | ||
|
|
e68634cf6f | ||
|
|
e3ed6066c2 | ||
|
|
39ea868f08 | ||
|
|
b2f3b5a3bc | ||
|
|
864b56e62c | ||
|
|
424ed0c5bb | ||
|
|
b0f1572576 | ||
|
|
03efc55c93 | ||
|
|
95c4dc2734 | ||
|
|
94c019888a | ||
|
|
756b9b995d |
@@ -74,6 +74,9 @@ $config['tabs'] =
|
||||
],
|
||||
],
|
||||
],
|
||||
'hiddenFields' => [
|
||||
'uhrzeit'
|
||||
]
|
||||
],
|
||||
'exemptions' => [
|
||||
//if true, Anrechnungen can be added and edited in tab Anrechnungen
|
||||
|
||||
@@ -379,7 +379,8 @@ class LvMenu extends FHCAPI_Controller
|
||||
'name'=>$this->p->t('lehre', 'gesamtnote'),
|
||||
'phrase' => 'lehre/gesamtnote',
|
||||
'c4_icon'=> base_url('skin/images/button_endnote.png'),
|
||||
'c4_link'=> site_url('Cis/Benotungstool/'.urlencode($lvid).'/'.urlencode($angezeigtes_stsem))
|
||||
'c4_link'=> base_url('cis.php/Cis/Compat/legacy/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php?lvid='.urlencode($lvid).'&stsem='.urlencode($angezeigtes_stsem))
|
||||
//'c4_link'=> site_url('Cis/Benotungstool/'.urlencode($lvid).'/'.urlencode($angezeigtes_stsem))
|
||||
//'c4_link'=> base_url('cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php?lvid='.urlencode($lvid).'&stsem='.urlencode($angezeigtes_stsem))
|
||||
//'c4_link'=> base_url('benotungstool/lvgesamtnoteverwalten.php?lvid='.urlencode($lvid).'&stsem='.urlencode($angezeigtes_stsem))
|
||||
);
|
||||
|
||||
@@ -32,7 +32,6 @@ class Funktionen extends FHCAPI_Controller
|
||||
]);
|
||||
|
||||
// Load models
|
||||
$this->load->model('extensions/FHC-Core-Personalverwaltung/Api_model', 'ApiModel');
|
||||
$this->load->model('ressource/Funktion_model', 'FunktionModel');
|
||||
$this->load->model('person/Benutzerfunktion_model', 'BenutzerfunktionModel');
|
||||
|
||||
|
||||
@@ -315,6 +315,7 @@ class Abschlusspruefung extends FHCAPI_Controller
|
||||
'abschlussbeurteilung_kurzbz' => $formData['abschlussbeurteilung_kurzbz'],
|
||||
'datum' => $formData['datum'], //TODO(Manu) check if minute format like FAS
|
||||
'sponsion' => $formData['sponsion'],
|
||||
'uhrzeit' => $formData['uhrzeit'],
|
||||
'pruefer1' => $formData['pruefer1'],
|
||||
'pruefer2' => $formData['pruefer2'],
|
||||
'pruefer3' => $formData['pruefer3'],
|
||||
@@ -387,6 +388,7 @@ class Abschlusspruefung extends FHCAPI_Controller
|
||||
'abschlussbeurteilung_kurzbz' => $formData['abschlussbeurteilung_kurzbz'],
|
||||
'datum' => $datum,
|
||||
'sponsion' => $sponsion,
|
||||
'uhrzeit' => $formData['uhrzeit'],
|
||||
'pruefer1' => $pruefer1,
|
||||
'pruefer2' => $pruefer2,
|
||||
'pruefer3' => $pruefer3,
|
||||
|
||||
@@ -103,13 +103,6 @@ export default {
|
||||
keyboard: this.keyboard
|
||||
});
|
||||
},
|
||||
//to avoid pagelocks if more than one instance
|
||||
beforeUnmount() {
|
||||
if (this.modal) {
|
||||
this.modal.dispose();
|
||||
this.modal = null;
|
||||
}
|
||||
},
|
||||
popup(body, options, title, footer) {
|
||||
const BsModal = this,
|
||||
slots = {};
|
||||
@@ -164,7 +157,17 @@ export default {
|
||||
});
|
||||
});
|
||||
},
|
||||
template: `<div ref="modal" class="bootstrap-modal modal" tabindex="-1" @[\`hide.bs.modal\`]="$emit('hideBsModal')" @[\`hidden.bs.modal\`]="$emit('hiddenBsModal')" @[\`hidePrevented.bs.modal\`]="$emit('hidePreventedBsModal')" @[\`show.bs.modal\`]="$emit('showBsModal')" @[\`shown.bs.modal\`]="$emit('shownBsModal')">
|
||||
template: `
|
||||
<div
|
||||
ref="modal"
|
||||
class="bootstrap-modal modal"
|
||||
tabindex="-1"
|
||||
@[\`hide.bs.modal\`]="$emit('hideBsModal', $event)"
|
||||
@[\`hidden.bs.modal\`]="$emit('hiddenBsModal', $event)"
|
||||
@[\`hidePrevented.bs.modal\`]="$emit('hidePreventedBsModal', $event)"
|
||||
@[\`show.bs.modal\`]="$emit('showBsModal', $event)"
|
||||
@[\`shown.bs.modal\`]="$emit('shownBsModal', $event)"
|
||||
>
|
||||
<div class="modal-dialog" :class="fullscreen ? 'modal-fullscreen' : dialogClass">
|
||||
<div class="modal-content">
|
||||
<div v-if="$slots.title" class="modal-header" :class="headerClass">
|
||||
|
||||
+23
-4
@@ -56,7 +56,8 @@ export default {
|
||||
anmerkung: null,
|
||||
protokoll: null,
|
||||
note: null,
|
||||
link: null
|
||||
link: null,
|
||||
uhrzeit: null
|
||||
},
|
||||
statusNew: true,
|
||||
arrTypen: [],
|
||||
@@ -310,6 +311,7 @@ export default {
|
||||
|
||||
this.formData.pruefungstyp_kurzbz = data.pruefungstyp_kurzbz;
|
||||
this.formData.datum = data.datum;
|
||||
this.formData.uhrzeit = data.uhrzeit;
|
||||
this.formData.sponsion = data.sponsion;
|
||||
this.formData.akadgrad_id = data.akadgrad_id;
|
||||
this.formData.pruefungsantritt_kurzbz = data.pruefungsantritt_kurzbz;
|
||||
@@ -411,6 +413,7 @@ export default {
|
||||
pruefer3_label: this.selectedPruefer3?.label || null,
|
||||
akadgrad_id: this.formData.akadgrad_id,
|
||||
datum: this.formData.datum,
|
||||
uhrzeit: this.formData.uhrzeit || null,
|
||||
sponsion: this.formData.sponsion
|
||||
};
|
||||
localStorage.setItem(STORAGE_KEY, JSON.stringify(stored));
|
||||
@@ -527,6 +530,7 @@ export default {
|
||||
this.formData.abschlussbeurteilung_kurzbz = null;
|
||||
this.formData.datum = null;
|
||||
this.formData.sponsion = null;
|
||||
this.formData.uhrzeit = null;
|
||||
this.formData.pruefer1 = null;
|
||||
this.formData.pruefer2 = null;
|
||||
this.formData.pruefer3 = null;
|
||||
@@ -620,7 +624,7 @@ export default {
|
||||
);
|
||||
}
|
||||
});
|
||||
},
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.$api
|
||||
@@ -715,7 +719,6 @@ export default {
|
||||
</template>
|
||||
|
||||
<form-form ref="formFinalExam" @submit.prevent>
|
||||
|
||||
<legend>{{this.$p.t('global','details')}}</legend>
|
||||
<p v-if="statusNew">[{{$p.t('ui', 'neu')}}]</p>
|
||||
|
||||
@@ -916,6 +919,22 @@ export default {
|
||||
</form-input>
|
||||
</div>
|
||||
|
||||
<div v-if="!config.hiddenFields?.includes('uhrzeit')" class="row mb-3">
|
||||
<form-input
|
||||
container-class="col-6 stv-details-uhrzeit"
|
||||
:label="$p.t('global', 'uhrzeit')"
|
||||
type="DatePicker"
|
||||
v-model="formData.uhrzeit"
|
||||
model-type="HH:mm:ss"
|
||||
time-picker
|
||||
text-input
|
||||
name="uhrzeit"
|
||||
:teleport="true"
|
||||
:cancel-text="$p.t('ui', 'abbrechen')"
|
||||
:select-text="$p.t('ui', 'ok')"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<form-input
|
||||
container-class="col-6 stv-details-abschlusspruefung-sponsion"
|
||||
@@ -979,7 +998,7 @@ export default {
|
||||
:cisRoot="cisRoot"
|
||||
@linkGenerated="printDocument"
|
||||
></abschlusspruefung-dropdown>
|
||||
</Teleport>
|
||||
</Teleport>
|
||||
</div>
|
||||
`
|
||||
}
|
||||
|
||||
@@ -31,10 +31,24 @@ export default {
|
||||
return {};
|
||||
},
|
||||
methods: {
|
||||
printDokument(url, scope){
|
||||
printDokument(url, scope, event){
|
||||
let output = 'pdf';
|
||||
|
||||
if(this.showAllFormats)
|
||||
{
|
||||
console.log("BERECHTIUNG VORHANDEN");
|
||||
if (event.ctrlKey) {
|
||||
output = 'doc';
|
||||
} else if (event.shiftKey) {
|
||||
output = 'odt';
|
||||
}
|
||||
url = url.replace("output=pdf","output="+output);
|
||||
}
|
||||
//TODO Manu(check if logic not in content (Zutrittkarte also in content folder))
|
||||
let linkToPdf = FHC_JS_DATA_STORAGE_OBJECT.app_root + 'content/' + url;
|
||||
window.open(linkToPdf, '_blank');
|
||||
let linkToDocument = FHC_JS_DATA_STORAGE_OBJECT.app_root + 'content/' + url;
|
||||
|
||||
console.log('Documentlink:', linkToDocument);
|
||||
window.open(linkToDocument, '_blank');
|
||||
}
|
||||
},
|
||||
template: `
|
||||
@@ -53,7 +67,7 @@ export default {
|
||||
<ul class="dropdown-menu dropdown-menu-right">
|
||||
<template v-for="doc in documents" :key="doc.id">
|
||||
<li v-if="doc.type === 'documenturl'">
|
||||
<button class="dropdown-item" type="button" @click="printDokument(doc.url, doc.scope)">
|
||||
<button class="dropdown-item" type="button" @click="printDokument(doc.url, doc.scope, $event)">
|
||||
{{ doc.name }}
|
||||
</button>
|
||||
</li>
|
||||
@@ -72,7 +86,7 @@ export default {
|
||||
<ul class="dropdown-menu">
|
||||
<template v-for="child in doc.data" :key="child.id">
|
||||
<li v-if="child.type === 'documenturl'">
|
||||
<button class="dropdown-item" type="button" @click="printDokument(child.url, child.scope)">
|
||||
<button class="dropdown-item" type="button" @click="printDokument(child.url, child.scope, $event)">
|
||||
{{ child.name }}
|
||||
</button>
|
||||
</li>
|
||||
|
||||
@@ -317,7 +317,7 @@ export default {
|
||||
<div class="stv-details-kontakt-contact h-100 pt-3">
|
||||
|
||||
<!--Modal: contactModal-->
|
||||
<bs-modal ref="contactModal">
|
||||
<bs-modal ref="contactModal" @hideBsModal.stop="">
|
||||
<template #title>
|
||||
<p v-if="statusNew" class="fw-bold mt-3">{{$p.t('person', 'kontakt_new')}}</p>
|
||||
<p v-else class="fw-bold mt-3">{{$p.t('person', 'kontakt_edit')}}</p>
|
||||
|
||||
+3
-1
@@ -604,9 +604,11 @@ export default {
|
||||
|
||||
<!--Modal: KontaktdatenModal -->
|
||||
<bs-modal
|
||||
v-if="autocompleteSelectedBetreuer && autocompleteSelectedBetreuer.person_id"
|
||||
@hideBsModal.stop=""
|
||||
ref="kontaktdatenModal"
|
||||
dialog-class="modal-xl modal-dialog-scrollable"
|
||||
v-if="autocompleteSelectedBetreuer && autocompleteSelectedBetreuer.person_id">
|
||||
>
|
||||
|
||||
<template #title>
|
||||
<p class="fw-bold mt-3">{{$p.t('projektarbeit', 'kontaktdatenBearbeiten')}}</p>
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
../vendor
|
||||
Reference in New Issue
Block a user