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
{