From 7548d7b55fcaa70371a3e8b5c18764663d86f335 Mon Sep 17 00:00:00 2001 From: Alexei Karpenko Date: Sun, 18 May 2025 16:35:30 +0200 Subject: [PATCH] Projektbetreuer: new and edit mode --- .../api/frontend/v1/stv/Projektbetreuer.php | 2 +- .../Details/Projektarbeit/Projektbetreuer.js | 16 +++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/application/controllers/api/frontend/v1/stv/Projektbetreuer.php b/application/controllers/api/frontend/v1/stv/Projektbetreuer.php index 58b963ede..33e31c39a 100644 --- a/application/controllers/api/frontend/v1/stv/Projektbetreuer.php +++ b/application/controllers/api/frontend/v1/stv/Projektbetreuer.php @@ -171,7 +171,7 @@ class Projektbetreuer extends FHCAPI_Controller $betreuerart_kurzbz = $this->input->post('betreuerart_kurzbz'); if (!isset($projektarbeit_id) || !is_numeric($projektarbeit_id)) - return $this->terminateWithError($this->p->t('ui', 'error_missingId', ['id'=> 'Projektbetreuer ID'], self::ERROR_TYPE_GENERAL)); + return $this->terminateWithError($this->p->t('ui', 'error_missingId', ['id'=> 'Projektarbeit ID'], self::ERROR_TYPE_GENERAL)); if (!isset($person_id) || !is_numeric($person_id)) return $this->terminateWithError($this->p->t('ui', 'error_missingId', ['id'=> 'Person ID'], self::ERROR_TYPE_GENERAL)); diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Projektarbeit/Projektbetreuer.js b/public/js/components/Stv/Studentenverwaltung/Details/Projektarbeit/Projektbetreuer.js index ea8dba94f..9ebe3de7e 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Projektarbeit/Projektbetreuer.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Projektarbeit/Projektbetreuer.js @@ -15,6 +15,9 @@ export default { inject: { }, computed: { + betreuerFormOpened() { + return this.newMode || this.editMode; + } }, props: { config: { @@ -93,6 +96,7 @@ export default { stunden: null, stundensatz: null }, + newMode: false, editMode: false, initialFormData: null, defaultFormDataValues: {stunden: null, stundensatz: null}, @@ -112,7 +116,8 @@ export default { actionNewProjektbetreuer() { this.resetForm(); this.statusNew = true; - this.editMode = !this.editMode; + this.newMode = !this.newMode; + this.editMode = false; this.captureFormData(); }, actionEditProjektbetreuer(projektarbeit_id, person_id, betreuerart_kurzbz) { @@ -197,7 +202,7 @@ export default { } }, confirmProjektbetreuer() { - if (!this.editMode) return; + if (!this.betreuerFormOpened) return; if (typeof this.formData.betreuer_id == 'undefined') { this.formData.betreuer_id = this.getNewBetreuerId(); @@ -207,6 +212,7 @@ export default { this.statusNew = true; } + this.newMode = false; this.editMode = false; }, confirmProjektbetreuerAfterValidation() { @@ -248,7 +254,7 @@ export default { validateProjektbetreuer() { let alleBetreuer = this.$refs.table.tabulator.getData(); - if (this.editMode) { + if (this.betreuerFormOpened) { alleBetreuer.push(this.addAutoCompleteBetreuerToFormData(this.formData)); } @@ -347,7 +353,7 @@ export default { > - +
- +
` }