From cb2ed4696c2680aa15f009eece519adac454ec70 Mon Sep 17 00:00:00 2001 From: ma0068 Date: Mon, 16 Jun 2025 16:01:41 +0200 Subject: [PATCH] Tab Betriebsmittel: change type of field Kaution to number, add validation if numeric --- .../api/frontend/v1/betriebsmittel/BetriebsmittelP.php | 9 +++++++++ public/js/components/Betriebsmittel/Betriebsmittel.js | 9 ++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/application/controllers/api/frontend/v1/betriebsmittel/BetriebsmittelP.php b/application/controllers/api/frontend/v1/betriebsmittel/BetriebsmittelP.php index 8e9d931f2..4405952a4 100644 --- a/application/controllers/api/frontend/v1/betriebsmittel/BetriebsmittelP.php +++ b/application/controllers/api/frontend/v1/betriebsmittel/BetriebsmittelP.php @@ -158,6 +158,11 @@ class BetriebsmittelP extends FHCAPI_Controller ], [ 'uid_in_person' => $this->p->t('person', 'error_uidNotInPerson') ]); + + $this->form_validation->set_rules('kaution', 'Kaution', 'numeric', [ + 'numeric' => $this->p->t('ui', 'error_fieldNotNumeric', ['field' => 'Kaution']) + ]); + $this->validateNewOrUpdate(); $betriebsmitteltyp = $this->input->post('betriebsmitteltyp'); @@ -241,6 +246,10 @@ class BetriebsmittelP extends FHCAPI_Controller public function updateBetriebsmittel($betriebsmittelperson_id) { + $this->form_validation->set_rules('kaution', 'Kaution', 'numeric', [ + 'numeric' => $this->p->t('ui', 'error_fieldNotNumeric', ['field' => 'Kaution']) + ]); + $this->validateNewOrUpdate(); $betriebsmitteltyp = $this->input->post('betriebsmitteltyp'); diff --git a/public/js/components/Betriebsmittel/Betriebsmittel.js b/public/js/components/Betriebsmittel/Betriebsmittel.js index 39681ffb4..95678d8dd 100644 --- a/public/js/components/Betriebsmittel/Betriebsmittel.js +++ b/public/js/components/Betriebsmittel/Betriebsmittel.js @@ -292,6 +292,12 @@ export default { this.formData.anmerkung = null; this.formData.beschreibung = null; this.statusNew = true; + }, + //helper function: workaround to trigger validation if input is not a number + normalizeKaution() { + if (this.formData.kaution === null || this.formData.kaution === '') { + this.formData.kaution = 'xxx' + } } }, created() { @@ -401,9 +407,10 @@ export default {