falsche kompatible lvs ueberpruefung rausgenommen

This commit is contained in:
ma0048
2025-09-02 14:11:48 +02:00
parent 374c1b66b5
commit 0095595dd2
2 changed files with 8 additions and 82 deletions
+8 -52
View File
@@ -359,7 +359,7 @@ drawTree($tree,0);
function drawTree($tree, $depth)
{
global $uid, $stsem_arr, $noten_arr, $lvangebot_arr, $aktornext, $studienplan_id;
global $uid, $stsem_arr, $noten_arr, $lvangebot_arr, $aktornext;
global $datum_obj, $db, $lv_arr, $p, $note_pruef_arr, $student;
global $anrechnung;
@@ -401,10 +401,7 @@ function drawTree($tree, $depth)
echo '    ';
$lvkompatibel = new lehrveranstaltung();
$studienplaene_kompatibel = $lvkompatibel->loadLVkompatibelWithStudienplan($row_tree->lehrveranstaltung_id, $studienplan_id);
$lvkompatibel_arr = array_unique(array_column($studienplaene_kompatibel, 'lehrveranstaltung_id_kompatibel'));
$lvkompatibel_arr = $lvkompatibel->loadLVkompatibel($row_tree->lehrveranstaltung_id);
$lvkompatibel_arr[]=$row_tree->lehrveranstaltung_id;
$abgeschlossen=false;
@@ -417,24 +414,6 @@ function drawTree($tree, $depth)
else
$abgeschlossen=false;
}
else if (!empty($studienplaene_kompatibel))
{
foreach ($studienplaene_kompatibel as $kompatibel)
{
$lvregelExists = $lvregel->exists($kompatibel['studienplan_lehrveranstaltung_id']);
if ($lvregelExists)
{
if ($lvregel->isAbgeschlossen($uid, $kompatibel['studienplan_lehrveranstaltung_id']))
$abgeschlossen=true;
else
$abgeschlossen=false;
break;
}
}
}
$lvinfo = new lvinfo();
switch(getSprache())
{
@@ -604,38 +583,15 @@ function drawTree($tree, $depth)
{
$semesterlock=true;
}
if (!$semesterlock && !empty($studienplaene_kompatibel))
else
{
foreach ($studienplaene_kompatibel as $kompatibel)
//check if rules are fulfilled just for actual or next studiensemester
if($stsem === $aktornext)
{
if (!$lvregel->checkSemester($kompatibel['studienplan_lehrveranstaltung_id'], $semester))
$result = $lvregel->isZugangsberechtigt($uid, $row_tree->studienplan_lehrveranstaltung_id, $stsem);
if((is_array($result)) && ($result[0] !== true))
{
$semesterlock = true;
break;
}
}
}
//check if rules are fulfilled just for actual or next studiensemester
if($stsem === $aktornext && !$semesterlock)
{
$result = $lvregel->isZugangsberechtigt($uid, $row_tree->studienplan_lehrveranstaltung_id, $stsem);
if((is_array($result)) && ($result[0] !== true))
{
$regelerfuellt = false;
}
if ($regelerfuellt && !empty($studienplaene_kompatibel))
{
foreach ($studienplaene_kompatibel as $kompatibel)
{
$result = $lvregel->isZugangsberechtigt($uid, $kompatibel['studienplan_lehrveranstaltung_id'], $stsem);
if (is_array($result) && $result[0] !== true)
{
$regelerfuellt = false;
break;
}
$regelerfuellt=false;
}
}
}
-30
View File
@@ -1554,36 +1554,6 @@ class lehrveranstaltung extends basis_db
}
}
public function loadLVkompatibelWithStudienplan($lehrveranstaltung_id, $studienplan_id)
{
if (!is_numeric($lehrveranstaltung_id))
{
$this->errormsg = 'Lehrveranstaltung_id muss eine gueltige Zahl sein';
return false;
}
if (!is_numeric($studienplan_id))
{
$this->errormsg = 'Studienplan_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT studienplan_lehrveranstaltung_id, lehrveranstaltung_id_kompatibel
FROM lehre.tbl_lehrveranstaltung_kompatibel
JOIN lehre.tbl_studienplan_lehrveranstaltung ON lehrveranstaltung_id_kompatibel = tbl_studienplan_lehrveranstaltung.lehrveranstaltung_id
WHERE tbl_lehrveranstaltung_kompatibel.lehrveranstaltung_id=".$this->db_add_param($lehrveranstaltung_id, FHC_INTEGER)."
;";
if($this->db_query($qry))
{
$data = array();
while($row = $this->db_fetch_object())
{
$data[] = ['lehrveranstaltung_id_kompatibel' => $row->lehrveranstaltung_id_kompatibel, 'studienplan_lehrveranstaltung_id' => $row->studienplan_lehrveranstaltung_id];
}
return $data;
}
}
/**
* Lädt alle kompatiblen LVs zu einer Lehrveranstaltung
* @param $lehrveranstaltung_id ID der Lehrveranstaltung