mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-08 07:39:27 +00:00
fixed bug that displayed incomplete courses as complete
This commit is contained in:
@@ -396,7 +396,8 @@ function drawTree($tree, $depth)
|
||||
|
||||
$abgeschlossen=false;
|
||||
$lvregel = new lvregel();
|
||||
if($lvregel->exists($row_tree->studienplan_lehrveranstaltung_id))
|
||||
$lvregelExists = $lvregel->exists($row_tree->studienplan_lehrveranstaltung_id);
|
||||
if($lvregelExists)
|
||||
{
|
||||
if($lvregel->isAbgeschlossen($uid, $row_tree->studienplan_lehrveranstaltung_id))
|
||||
$abgeschlossen=true;
|
||||
@@ -436,7 +437,7 @@ function drawTree($tree, $depth)
|
||||
|
||||
$lv_kompatibel = new lehrveranstaltung();
|
||||
$kompatibleLVs = $lv_kompatibel->loadLVkompatibel($row_tree->lehrveranstaltung_id);
|
||||
|
||||
|
||||
if(isset($noten_arr[$row_tree->lehrveranstaltung_id]))
|
||||
{
|
||||
// Positive Note fuer diese LV vorhanden?
|
||||
@@ -447,82 +448,97 @@ function drawTree($tree, $depth)
|
||||
$positiv=true;
|
||||
}
|
||||
|
||||
if($positiv)
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
else
|
||||
if(!$positiv)
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
}
|
||||
elseif($lvregelExists)
|
||||
{
|
||||
if($abgeschlossen && $positiv)
|
||||
{
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/offen').'</span>';
|
||||
}
|
||||
}
|
||||
elseif($positiv)
|
||||
{
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/offen').'</span>';
|
||||
}
|
||||
}
|
||||
//check if compatible course has grade
|
||||
elseif(count($kompatibleLVs) > 0)
|
||||
{
|
||||
$positiv = false;
|
||||
$found = false;
|
||||
$i = 0;
|
||||
while(!$found && $i < count($kompatibleLVs))
|
||||
{
|
||||
foreach($kompatibleLVs as $komp)
|
||||
{
|
||||
|
||||
$anrechnung = new anrechnung();
|
||||
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp);
|
||||
|
||||
if(count($anrechnung->result) == 1)
|
||||
{
|
||||
$lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel;
|
||||
if(isset($noten_arr[$lv]))
|
||||
{
|
||||
$positiv=false;
|
||||
foreach($noten_arr[$lv] as $note)
|
||||
{
|
||||
if($note_pruef_arr[$note]->positiv)
|
||||
$positiv=true;
|
||||
}
|
||||
$positiv = false;
|
||||
$found = false;
|
||||
$i = 0;
|
||||
while(!$found && $i < count($kompatibleLVs))
|
||||
{
|
||||
foreach($kompatibleLVs as $komp)
|
||||
{
|
||||
|
||||
$found = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* wenn zu mehreren kompatiblen lvs eine Anrechnung existiert
|
||||
* darf found nicht auf false gesetzt werden wenn es zuvor bereits auf true gesetzt wurde
|
||||
*/
|
||||
if(!$found)
|
||||
$found = false;
|
||||
}
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
|
||||
if($found)
|
||||
{
|
||||
if($positiv)
|
||||
$anrechnung = new anrechnung();
|
||||
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, $row_tree->lehrveranstaltung_id, $komp);
|
||||
|
||||
if(count($anrechnung->result) == 1)
|
||||
{
|
||||
$lv = $anrechnung->result[0]->lehrveranstaltung_id_kompatibel;
|
||||
if(isset($noten_arr[$lv]))
|
||||
{
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
}
|
||||
}
|
||||
elseif(!$found)
|
||||
{
|
||||
if(!$row_tree->stpllv_pflicht)
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/optional').'</span>';
|
||||
$positiv=false;
|
||||
foreach($noten_arr[$lv] as $note)
|
||||
{
|
||||
if($note_pruef_arr[$note]->positiv)
|
||||
$positiv=true;
|
||||
}
|
||||
|
||||
$found = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/offen').'</span>';
|
||||
/* wenn zu mehreren kompatiblen lvs eine Anrechnung existiert
|
||||
* darf found nicht auf false gesetzt werden wenn es zuvor bereits auf true gesetzt wurde
|
||||
*/
|
||||
if(!$found)
|
||||
$found = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
|
||||
if($found)
|
||||
{
|
||||
if($positiv)
|
||||
{
|
||||
echo '<span class="ok">'.$p->t('studienplan/abgeschlossen').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span class="error">'.$p->t('studienplan/negativ').'</span>';
|
||||
}
|
||||
}
|
||||
elseif(!$found)
|
||||
{
|
||||
if(!$row_tree->stpllv_pflicht)
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/optional').'</span>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/offen').'</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if($abgeschlossen)
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/regelabgeschlossen'),'</span>';
|
||||
}
|
||||
elseif(!$row_tree->stpllv_pflicht)
|
||||
if(!$row_tree->stpllv_pflicht)
|
||||
{
|
||||
echo '<span>'.$p->t('studienplan/optional').'</span>';
|
||||
}
|
||||
|
||||
@@ -602,7 +602,33 @@ class lvregel extends basis_db
|
||||
}
|
||||
}
|
||||
$ausbildungssemester = $this->cache[$uid][$studiensemester_kurzbz];
|
||||
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.ects
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
JOIN lehre.tbl_studienplan_lehrveranstaltung sl USING(lehrveranstaltung_id)
|
||||
WHERE
|
||||
studienplan_lehrveranstaltung_id=".$this->db_add_param($regel->studienplan_lehrveranstaltung_id);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$ects = $row->ects;
|
||||
}
|
||||
else
|
||||
{
|
||||
$ects = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->debug('Fehler bei Abfrage',1);
|
||||
$this->errormsg = 'Fehler bei Abfrage';
|
||||
$retval = false;
|
||||
}
|
||||
|
||||
// Vergleichen des Ausbildungssemesters mit dem RegelParameter
|
||||
if($ausbildungssemester>=$regel->parameter)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user