From 01f73e5d5744ed18de6121ea6eb10161953f74d2 Mon Sep 17 00:00:00 2001 From: Stefan Puraner Date: Wed, 18 May 2016 13:20:16 +0200 Subject: [PATCH] bugfix bei noten von kompatiblen faechern --- cis/private/profile/studienplan.php | 54 ++++++++++++++++++++--------- 1 file changed, 37 insertions(+), 17 deletions(-) diff --git a/cis/private/profile/studienplan.php b/cis/private/profile/studienplan.php index 64d85dfdb..ed3ed7ada 100755 --- a/cis/private/profile/studienplan.php +++ b/cis/private/profile/studienplan.php @@ -467,23 +467,43 @@ function drawTree($tree, $depth) //check if compatible course has grade elseif(count($kompatibleLVs) > 0) { - foreach($kompatibleLVs as $komp) - { - if(isset($noten_arr[$komp])) - { - $positiv=false; - foreach($noten_arr[$komp] as $note) - { - if($note_pruef_arr[$note]->positiv) - $positiv=true; - } - - if($positiv) - echo ''.$p->t('studienplan/abgeschlossen').''; - else - echo ''.$p->t('studienplan/negativ').''; - } - } + $positiv = false; + $found = false; + $i = 0; + while(!$found && $i < count($kompatibleLVs)) + { + for($i; $i < (count($kompatibleLVs)); $i++) + { + if(isset($noten_arr[$kompatibleLVs[$i]])) + { + $positiv=false; + foreach($noten_arr[$kompatibleLVs[$i]] as $note) + { + if($note_pruef_arr[$note]->positiv) + $positiv=true; + } + + $found = true; + } + } + $i++; + } + if($found) + { + if($positiv) + echo ''.$p->t('studienplan/abgeschlossen').''; + else + echo ''.$p->t('studienplan/negativ').''; + } + elseif(!$found) + { + if($abgeschlossen) + echo ''.$p->t('studienplan/regelabgeschlossen'),''; + elseif(!$row_tree->stpllv_pflicht) + echo ''.$p->t('studienplan/optional').''; + else + echo ''.$p->t('studienplan/offen').''; + } } else {