mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-22 14:39:28 +00:00
- Noten can be marked as not ueberschreibbar
- CIS Gesamtnote - marked Noten cannot be overwritten, also no csv import possible
This commit is contained in:
@@ -82,10 +82,14 @@ $uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
|
||||
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
|
||||
|
||||
$noten_anmerkung=array();
|
||||
$noten_arr=array();
|
||||
$note_obj = new note();
|
||||
$note_obj->getAll();
|
||||
foreach($note_obj->result as $row)
|
||||
$noten_anmerkung[$row->anmerkung]=$row->note;
|
||||
{
|
||||
$noten_anmerkung[$row->anmerkung] = $row->note;
|
||||
$noten_arr[$row->note] = $row;
|
||||
}
|
||||
|
||||
//Studiensemester laden
|
||||
$stsem_obj = new studiensemester();
|
||||
@@ -238,12 +242,20 @@ if (isset($_REQUEST["submit"]))
|
||||
}
|
||||
|
||||
// Hole Zeugnisnote wenn schon eine eingetragen ist
|
||||
/*
|
||||
if ($zeugnisnote = new zeugnisnote($lvid, $student_uid, $stsem))
|
||||
{
|
||||
$znote = $zeugnisnote->note;
|
||||
else
|
||||
$znote = null;
|
||||
*/
|
||||
|
||||
$notenobj = $noten_arr[$znote];
|
||||
|
||||
// Note nicht speichern wenn Zeugnisnote nicht überschreibbar
|
||||
if (!$notenobj->lkt_ueberschreibbar)
|
||||
{
|
||||
$response .= "\n".$p->t('benotungstool/noteNichtUeberschreibbar', array($matrikelnummer, $notenobj->bezeichnung));
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
$val=savenote($db,$lvid, $student_uid, $note, $punkte);
|
||||
if($val!='neu' && $val!='update' && $val!='update_f')
|
||||
$response.=$val;
|
||||
|
||||
@@ -181,6 +181,7 @@ foreach ($noten_obj->result as $row)
|
||||
$noten_array[$row->note]['positiv'] = $row->positiv;
|
||||
$noten_array[$row->note]['aktiv'] = $row->aktiv;
|
||||
$noten_array[$row->note]['lehre'] = $row->lehre;
|
||||
$noten_array[$row->note]['lkt_ueberschreibbar'] = $row->lkt_ueberschreibbar;
|
||||
$noten_array[$row->note]['anmerkung'] = $row->anmerkung;
|
||||
foreach ($sprachen->result AS $s)
|
||||
$noten_array[$row->note]['bezeichnung_mehrsprachig'][$s->sprache] = $row->bezeichnung_mehrsprachig[$s->sprache];
|
||||
@@ -1249,21 +1250,30 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG
|
||||
action='" . $_SERVER['PHP_SELF'] . "?lvid=$lvid&lehreinheit_id=$lehreinheit_id&stsem=$stsem'>
|
||||
<span id='lvnoteneingabe_" . $uid . "' " . $hide . ">
|
||||
<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'];
|
||||
// Punkte
|
||||
if (CIS_GESAMTNOTE_PUNKTE)
|
||||
{
|
||||
|
||||
$htmlstring .= '
|
||||
<input type="text"
|
||||
name="punkte"
|
||||
id="textbox-punkte-' . $i . '"
|
||||
value="' . $punkte_vorschlag . '"
|
||||
size="3"
|
||||
oninput="PunkteEingabe(' . $i . ')"/>';
|
||||
size="3"';
|
||||
|
||||
if ($ueberschreibbar)
|
||||
$htmlstring .= ' oninput="PunkteEingabe(' . $i . ')"';
|
||||
else
|
||||
$htmlstring .= ' disabled="disabled"';
|
||||
|
||||
$htmlstring .= '/>';
|
||||
}
|
||||
|
||||
|
||||
// Noten DropDown
|
||||
if ($punkte_vorschlag != '' && CIS_GESAMTNOTE_PUNKTE)
|
||||
if (($punkte_vorschlag != '' && CIS_GESAMTNOTE_PUNKTE) || $ueberschreibbar == false)
|
||||
$disabled = 'disabled="disabled"';
|
||||
else
|
||||
$disabled = '';
|
||||
@@ -1281,10 +1291,13 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG
|
||||
}
|
||||
$htmlstring .= '</select>';
|
||||
$htmlstring .= "
|
||||
<input type='hidden' name='note_orig' value='$note_lv'>
|
||||
<input type='button' id='button-note-save-" . $i . "' value='->' onclick=\"saveLVNote('" . $uid . "');\">
|
||||
</span>
|
||||
</form></td>";
|
||||
<input type='hidden' name='note_orig' value='$note_lv'>";
|
||||
if ($ueberschreibbar)
|
||||
{
|
||||
$htmlstring .= "<input type='button' id='button-note-save-" . $i . "' value='->' onclick=\"saveLVNote('" . $uid . "');\">";
|
||||
}
|
||||
$htmlstring .= "</span>
|
||||
</form></td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1370,13 +1383,18 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG
|
||||
$htmlstring .= '<tr>
|
||||
<td class="td_datum">' . $pr_datum . '</td>
|
||||
<td class="td_note">' . $pr_notenbezeichnung . '</td>
|
||||
<td>
|
||||
<input type="button"
|
||||
<td>';
|
||||
if ($ueberschreibbar)
|
||||
{
|
||||
$htmlstring .=
|
||||
'<input type="button"
|
||||
name="anlegen"
|
||||
value="' . $p->t('global/aendern') . '"
|
||||
onclick="' . $onclick . '">
|
||||
<td>
|
||||
</tr>';
|
||||
onclick="' . $onclick . '">';
|
||||
}
|
||||
$htmlstring .=
|
||||
'<td>
|
||||
</tr>';
|
||||
}
|
||||
$htmlstring .= "</table>";
|
||||
$htmlstring .= "</span>";
|
||||
@@ -1386,12 +1404,16 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG
|
||||
{
|
||||
if (! is_null($note_lv) || ! is_null($znote))
|
||||
{
|
||||
$htmlstring .= "<td colspan='2'><span id='span_Termin2_" . $uid . "'>
|
||||
<input type='button'
|
||||
$htmlstring .= "<td colspan='2'><span id='span_Termin2_" . $uid . "'>";
|
||||
if ($ueberschreibbar)
|
||||
{
|
||||
$htmlstring .=
|
||||
"<input type='button'
|
||||
name='anlegen'
|
||||
value='" . $p->t('benotungstool/anlegen') . "'
|
||||
onclick='pruefungAnlegen(\"" . $uid . "\",\"\",\"\",\"\",\"\")'>
|
||||
</span></td>";
|
||||
onclick='pruefungAnlegen(\"" . $uid . "\",\"\",\"\",\"\",\"\")'>";
|
||||
}
|
||||
$htmlstring .= "</span></td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1445,7 +1467,7 @@ if (defined("CIS_GESAMTNOTE_PRUEFUNG_MOODLE_LE_NOTE") && CIS_GESAMTNOTE_PRUEFUNG
|
||||
}
|
||||
else
|
||||
{
|
||||
if (! is_null($note_lv) || ! is_null($znote))
|
||||
if ((! is_null($note_lv) || ! is_null($znote)) && $ueberschreibbar)
|
||||
{
|
||||
$htmlstring .= "
|
||||
<td colspan='2'>
|
||||
|
||||
+17
-8
@@ -42,6 +42,7 @@ class note extends basis_db
|
||||
public $aktiv; // boolean
|
||||
public $lehre; // boolean
|
||||
public $offiziell; // boolean
|
||||
public $lkt_ueberschreibbar; // boolean
|
||||
public $bezeichnung_mehrsprachig; // varchar (64)[]
|
||||
|
||||
/**
|
||||
@@ -78,7 +79,8 @@ class note extends basis_db
|
||||
notenwert,
|
||||
aktiv,
|
||||
lehre,
|
||||
offiziell,
|
||||
offiziell,
|
||||
lkt_ueberschreibbar,
|
||||
$bezeichnung_mehrsprachig
|
||||
FROM
|
||||
lehre.tbl_note
|
||||
@@ -98,6 +100,7 @@ class note extends basis_db
|
||||
$this->lehre = $this->db_parse_bool($row->lehre);
|
||||
$this->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$this->offiziell = $this->db_parse_bool($row->offiziell);
|
||||
$this->lkt_ueberschreibbar = $this->db_parse_bool($row->lkt_ueberschreibbar);
|
||||
$this->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig',$row);
|
||||
return true;
|
||||
}
|
||||
@@ -151,7 +154,7 @@ class note extends basis_db
|
||||
$idx = sprache::$index_arr[$key];
|
||||
$qry .= " bezeichnung_mehrsprachig[$idx],";
|
||||
}
|
||||
$qry .= ' offiziell) VALUES('.
|
||||
$qry .= ' offiziell, lkt_ueberschreibbar) VALUES('.
|
||||
$this->db_add_param($this->note).', '.
|
||||
$this->db_add_param($this->bezeichnung).', '.
|
||||
$this->db_add_param($this->anmerkung).', '.
|
||||
@@ -163,8 +166,9 @@ class note extends basis_db
|
||||
foreach($this->bezeichnung_mehrsprachig as $key=>$value)
|
||||
$qry .= $this->db_add_param($value).',';
|
||||
|
||||
$qry .= $this->db_add_param($this->offiziell, FHC_BOOLEAN).');';
|
||||
|
||||
$qry .= $this->db_add_param($this->offiziell, FHC_BOOLEAN);
|
||||
$qry .= $this->db_add_param($this->lkt_ueberschreibbar, FHC_BOOLEAN).');';
|
||||
|
||||
|
||||
}
|
||||
else
|
||||
@@ -184,7 +188,8 @@ class note extends basis_db
|
||||
$qry .= " bezeichnung_mehrsprachig[$idx]=".$this->db_add_param($value).", ";
|
||||
}
|
||||
|
||||
$qry .= ' offiziell='.$this->db_add_param($this->offiziell, FHC_BOOLEAN).' '.
|
||||
$qry .= ' offiziell='.$this->db_add_param($this->offiziell, FHC_BOOLEAN).', '.
|
||||
$qry .= ' lkt_ueberschreibbar='.$this->db_add_param($this->lkt_ueberschreibbar, FHC_BOOLEAN).' '.
|
||||
'WHERE note='.$this->db_add_param($this->note).';';
|
||||
|
||||
|
||||
@@ -218,7 +223,8 @@ class note extends basis_db
|
||||
notenwert,
|
||||
aktiv,
|
||||
lehre,
|
||||
offiziell,
|
||||
offiziell,
|
||||
lkt_ueberschreibbar,
|
||||
$bezeichnung_mehrsprachig
|
||||
FROM
|
||||
lehre.tbl_note ";
|
||||
@@ -242,7 +248,8 @@ class note extends basis_db
|
||||
$n->notenwert = $row->notenwert;
|
||||
$n->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$n->lehre = $this->db_parse_bool($row->lehre);
|
||||
$n->offiziell = $this->db_parse_bool($row->lehre);
|
||||
$n->offiziell = $this->db_parse_bool($row->offiziell);
|
||||
$n->lkt_ueberschreibbar = $this->db_parse_bool($row->lkt_ueberschreibbar);
|
||||
$n->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig', $row);
|
||||
|
||||
$this->result[] = $n;
|
||||
@@ -274,6 +281,7 @@ class note extends basis_db
|
||||
aktiv,
|
||||
lehre,
|
||||
offiziell,
|
||||
lkt_ueberschreibbar,
|
||||
$bezeichnung_mehrsprachig
|
||||
FROM
|
||||
lehre.tbl_note
|
||||
@@ -299,7 +307,8 @@ class note extends basis_db
|
||||
$n->notenwert = $row->notenwert;
|
||||
$n->aktiv = $this->db_parse_bool($row->aktiv);
|
||||
$n->lehre = $this->db_parse_bool($row->lehre);
|
||||
$n->offiziell = $this->db_parse_bool($row->lehre);
|
||||
$n->offiziell = $this->db_parse_bool($row->offiziell);
|
||||
$n->lkt_ueberschreibbar = $this->db_parse_bool($row->lkt_ueberschreibbar);
|
||||
$n->bezeichnung_mehrsprachig = $sprache->parseSprachResult('bezeichnung_mehrsprachig', $row);
|
||||
|
||||
$this->result[] = $n;
|
||||
|
||||
@@ -149,6 +149,7 @@ $this->phrasen['benotungstool/pruefungAnlegenFuer']='Prüfung anlegen für';
|
||||
$this->phrasen['benotungstool/kreuzerltool']='Kreuzerltool';
|
||||
$this->phrasen['benotungstool/studentIstLvNichtZugeordnet']='Der Student %s %s (%s) ist dieser Lehrveranstaltung nicht zugeordnet. Die Note wird nicht uebernommen!';
|
||||
$this->phrasen['benotungstool/studentMitMatrikelnummerExistiertNicht']='Student mit Matrikelnummer %s existiert nicht.';
|
||||
$this->phrasen['benotungstool/noteNichtUeberschreibbar']='Für Student mit Matrikelnummer %s eingetragene Zeugnisote %s ist nicht überschreibbar';
|
||||
$this->phrasen['benotungstool/fehlerhafteNoteBeiStudent']='Fehlerhafte Note bei Student %s %s';
|
||||
$this->phrasen['benotungstool/keineKreuzerllistenFuerDieseLehrveranstaltung']='Derzeit gibt es keine Kreuzerllisten für diese Lehrveranstaltung';
|
||||
$this->phrasen['benotungstool/notenuebersichtFuer']='Notenübersicht</a> für';
|
||||
|
||||
@@ -148,6 +148,7 @@ $this->phrasen['benotungstool/pruefungAnlegenFuer']='Create an examination for '
|
||||
$this->phrasen['benotungstool/kreuzerltool']='"Kreuzerl" tool';
|
||||
$this->phrasen['benotungstool/studentIstLvNichtZugeordnet']='Student is not assigned to this course. The grade was not accepted!';
|
||||
$this->phrasen['benotungstool/studentMitMatrikelnummerExistiertNicht']='Student with student ID number %s does not exist.';
|
||||
$this->phrasen['benotungstool/noteNichtUeberschreibbar']='Transcript grade %2$s for student with Personal identifier %1$s is not rewritable';
|
||||
$this->phrasen['benotungstool/fehlerhafteNoteBeiStudent']='Incorrect grade for student %s %s';
|
||||
$this->phrasen['benotungstool/keineKreuzerllistenFuerDieseLehrveranstaltung']='There are currently no checklists for this course';
|
||||
$this->phrasen['benotungstool/notenuebersichtFuer']='Grade list</a> for';
|
||||
|
||||
@@ -506,6 +506,17 @@ if(!$result = @$db->db_query("SELECT offiziell FROM lehre.tbl_note LIMIT 1;"))
|
||||
echo '<br>lehre.tbl_note: Spalte offiziell hinzugefuegt!<br>';
|
||||
}
|
||||
|
||||
// Spalte lkt_ueberschreibbar in lehre.tbl_note
|
||||
if(!$result = @$db->db_query("SELECT lkt_ueberschreibbar FROM lehre.tbl_note LIMIT 1;"))
|
||||
{
|
||||
$qry = "ALTER TABLE lehre.tbl_note ADD COLUMN lkt_ueberschreibbar boolean NOT NULL DEFAULT true;";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>lehre.tbl_note: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>lehre.tbl_note: Spalte lkt_ueberschreibbar hinzugefuegt!<br>';
|
||||
}
|
||||
|
||||
// Spalte bezeichnung_mehrsprachig in lehre.tbl_note
|
||||
if(!$result = @$db->db_query("SELECT bezeichnung_mehrsprachig FROM lehre.tbl_note LIMIT 1"))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user