- type-safe comparison für überschreibbare noten (default true)

- null-checks überschreibbare noten
This commit is contained in:
alex
2018-09-27 14:46:58 +02:00
parent 79783f65c5
commit 70a80cd84c
3 changed files with 16 additions and 9 deletions
@@ -246,13 +246,16 @@ if (isset($_REQUEST["submit"]))
{
$znote = $zeugnisnote->note;
$notenobj = $noten_arr[$znote];
// Note nicht speichern wenn Zeugnisnote nicht überschreibbar
if (!$notenobj->lkt_ueberschreibbar)
if (!empty($znote) && array_key_exists($znote, $noten_arr))
{
$response .= "\n".$p->t('benotungstool/noteNichtUeberschreibbar', array($matrikelnummer, $notenobj->bezeichnung));
continue;
$notenobj = $noten_arr[$znote];
// Note nicht speichern wenn Zeugnisnote nicht überschreibbar
if ($notenobj->lkt_ueberschreibbar === false)
{
$response .= "\n".$p->t('benotungstool/noteNichtUeberschreibbar', array($matrikelnummer, $notenobj->bezeichnung));
continue;
}
}
}
@@ -1252,7 +1252,11 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG
<input type='hidden' name='student_uid' value='$uid'>";
// nur überschreibbare Noten können geändert werden
$ueberschreibbar = is_null($znote) || $noten_array[$znote]['lkt_ueberschreibbar'];
$ueberschreibbar = true;
if (isset($noten_array[$znote]['lkt_ueberschreibbar']) && $noten_array[$znote]['lkt_ueberschreibbar'] === false)
$ueberschreibbar = false;
// Punkte
if (CIS_GESAMTNOTE_PUNKTE)
{
+2 -2
View File
@@ -2913,7 +2913,7 @@ if(!$error)
$zeugnisnote->updateamum = date('Y-m-d H:i:s');
$zeugnisnote->updatevon = $user;
// Noten wie "angerechnet", "nicht erforderlich" werden nicht ueberschrieben
if(isset($zeugnisnote->note) && !$noten_ueberschreibbar[$zeugnisnote->note])
if(isset($zeugnisnote->note) && array_key_exists($zeugnisnote->note, $noten_ueberschreibbar) && $noten_ueberschreibbar[$zeugnisnote->note] === false)
{
$notenbez = '"'.$noten_bezeichnung[$zeugnisnote->note].'"';
if (!in_array($notenbez, $nueberschreibbarbez))
@@ -3066,7 +3066,7 @@ if(!$error)
$zeugnisnote->updateamum = date('Y-m-d H:i:s');
$zeugnisnote->updatevon = $user;
// Noten wie "angerechnet", "nicht erforderlich" werden nicht ueberschrieben
if(isset($zeugnisnote->note) && !$noten_ueberschreibbar[$zeugnisnote->note])
if(isset($zeugnisnote->note) && array_key_exists($zeugnisnote->note, $noten_ueberschreibbar) && $noten_ueberschreibbar[$zeugnisnote->note] === false)
{
$notenbez = '"'.$noten_bezeichnung[$zeugnisnote->note].'"';
if (!in_array($notenbez, $nueberschreibbarbez))