From ca55b63e01758d0f7a407c5e859b1429c3ddd97f Mon Sep 17 00:00:00 2001 From: cgfhtw Date: Wed, 20 Dec 2023 09:30:44 +0100 Subject: [PATCH] =?UTF-8?q?Load=20Language=20before=20Antr=C3=A4ge?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../models/education/Studierendenantrag_model.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/application/models/education/Studierendenantrag_model.php b/application/models/education/Studierendenantrag_model.php index da9d53aba..3d688eb82 100644 --- a/application/models/education/Studierendenantrag_model.php +++ b/application/models/education/Studierendenantrag_model.php @@ -26,9 +26,10 @@ class Studierendenantrag_model extends DB_Model return $this->loadForStudiengaenge($studiengaenge, $typ, $this->StudierendenantragstatusModel::STATUS_CREATED); } - public function loadForStudiengaenge($studiengaenge, $typ = null, $status = null) + public function loadForStudiengaenge($studiengaenge, $typ = null, $status = null, $sql = null) { - $sql = "SELECT index FROM public.tbl_sprache WHERE sprache='" . getUserLanguage() . "' LIMIT 1"; + if ($sql == null) + $sql = "SELECT index FROM public.tbl_sprache WHERE sprache='" . getUserLanguage() . "' LIMIT 1"; $this->addSelect('UPPER(stg.typ) || UPPER(stg.kurzbz) || \' \' || stg.bezeichnung AS bezeichnung'); $this->addSelect('bezeichnung_mehrsprachig[(' . $sql . ')] AS orgform', false); @@ -74,6 +75,9 @@ class Studierendenantrag_model extends DB_Model } public function loadActiveForStudiengaenge($studiengaenge) { + // NOTE(chris): get language before changing things in the global db object because getUserLanguage() might use it and it should not have been tampered with + $sql = "SELECT index FROM public.tbl_sprache WHERE sprache='" . getUserLanguage() . "' LIMIT 1"; + $this->db->group_start(); $this->db->where_not_in('s.studierendenantrag_statustyp_kurzbz', [ Studierendenantragstatus_model::STATUS_CANCELLED, @@ -87,7 +91,7 @@ class Studierendenantrag_model extends DB_Model $this->db->group_end(); $this->db->group_end(); - return $this->loadForStudiengaenge($studiengaenge); + return $this->loadForStudiengaenge($studiengaenge, null, null, $sql); } public function isInStudiengang($studierendenantrag_id, $studiengaenge)