From 52fe60090e35f2d8d12946dcc650efa3da810176 Mon Sep 17 00:00:00 2001 From: Nikolaus Krondraf Date: Thu, 24 Sep 2020 08:25:28 +0200 Subject: [PATCH] =?UTF-8?q?zeige=20keine=20Pr=C3=BCfungstermine=20wo=20Not?= =?UTF-8?q?e=20vorhanden=20ist?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lehre/pruefung/pruefungsanmeldung.json.php | 2 +- include/pruefungCis.class.php | 14 ++++++++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php index 07999f47d..e201fbe30 100644 --- a/cis/private/lehre/pruefung/pruefungsanmeldung.json.php +++ b/cis/private/lehre/pruefung/pruefungsanmeldung.json.php @@ -156,7 +156,7 @@ function getPruefungByLv($aktStudiensemester = null, $uid = null) } $lehrveranstaltungen=$lvIds; $pruefung = new pruefungCis(); - if($pruefung->getPruefungByLv($lehrveranstaltungen)) + if($pruefung->getPruefungByLv($lehrveranstaltungen, $uid)) { $pruefungen = array(); foreach($pruefung->lehrveranstaltungen as $key=>$lv) diff --git a/include/pruefungCis.class.php b/include/pruefungCis.class.php index 1ddf88443..3439793da 100644 --- a/include/pruefungCis.class.php +++ b/include/pruefungCis.class.php @@ -590,7 +590,7 @@ class pruefungCis extends basis_db * @param String|Array $lehrveranstaltung_IDs einzelne ID einer Lehrveranstaltung oder ein Array von IDs * @return boolean true, wenn ok; false, im Fehlerfall */ - public function getPruefungByLv($lehrveranstaltung_IDs) + public function getPruefungByLv($lehrveranstaltung_IDs, $uid = null) { if(empty($lehrveranstaltung_IDs)) { @@ -612,7 +612,17 @@ class pruefungCis extends basis_db $in = $lehrveranstaltung_IDs; } - $qry = 'SELECT * FROM campus.tbl_lehrveranstaltung_pruefung WHERE lehrveranstaltung_id IN ('.$in.');'; + $qry = 'SELECT * FROM campus.tbl_lehrveranstaltung_pruefung WHERE lehrveranstaltung_id IN ('.$in.')'; + + if ($uid !== null) + { + // LVs entfernen wo schon eine Note für UID vorhanden ist + $qry .= " AND lehrveranstaltung_id NOT IN ( + SELECT lehrveranstaltung_id + FROM lehre.tbl_pruefung + JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) + WHERE student_uid = " . $this->db_add_param($uid) . ");"; + } if($this->db_query($qry)) {