Punkteeingabe im FAS

Punkteeingabe bei Pruefungen
Notenschluessel wird im CIS angezeigt
This commit is contained in:
oesi
2015-02-24 11:01:31 +01:00
parent 41827a3307
commit a4cca5f1e6
18 changed files with 549 additions and 270 deletions
@@ -231,7 +231,7 @@ foreach($noten_obj->result as $row)
// *************************************************
// * Formular zum Eintragen einer Pruefung erstellen
// *************************************************
function pruefungAnlegen(uid,datum,note,lehreinheit_id)
function pruefungAnlegen(uid,datum,note,lehreinheit_id,punkte)
{
var str = "<form name='nachpruefung_form'><center><table style='width:95%'><tr><td colspan='2' align='right'><a href='#' onclick='closeDiv();'>X</a></td></tr>";
@@ -243,8 +243,17 @@ foreach($noten_obj->result as $row)
str += "<tr><td colspan='2'><b><?php echo $p->t('benotungstool/pruefungAnlegenFuer');?> "+uid+":</b></td></tr>";
str += "<tr><td><?php echo $p->t('global/datum');?>:</td>";
str += "<td><input type='hidden' name='uid' value='"+uid+"'><input type='hidden' name='le_id' value='"+lehreinheit_id+"'>";
str += "<input type='text' id='pruefungsdatum' name='datum' size='10' value='"+datum+"'> [DD.MM.YYYY]";
str += "</td></tr><tr><td><?php echo $p->t('benotungstool/note');?>:</td>";
str += "<input type='text' id='pruefungsdatum' name='datum' size='10' value='"+datum+"'> [DD.MM.YYYY]</td></tr>";
<?php
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
{
echo 'str += "<tr><td>'.$p->t('benotungstool/punkte').':</td>";';
echo 'str += "<td><input type=\'text\' id=\'pruefungspunkte\' name=\'punkte\' size=\'10\' value=\'"+punkte+"\' oninput=\'PruefungPunkteEingabe()\'></td></tr>";';
}
?>
str += "<tr><td><?php echo $p->t('benotungstool/note');?>:</td>";
str +='<?php
echo '<td><select name="note" id="pruefungnoteselect">';
@@ -270,6 +279,7 @@ foreach($noten_obj->result as $row)
function pruefungSpeichern()
{
var note = document.nachpruefung_form.note.value;
var punkte = document.nachpruefung_form.punkte.value;
var datum = document.nachpruefung_form.datum.value;
var datum_test = datum.split(".");
if (datum_test[0].length != 2 || datum_test[1].length != 2 || datum_test[2].length!=4 || isNaN(datum_test[2]) || datum_test[1]>12 || datum_test[1]<1 || datum_test[0]>31 || datum_test[0]<1)
@@ -290,7 +300,7 @@ foreach($noten_obj->result as $row)
var jetzt = new Date();
var ts = jetzt.getTime();
var url= '<?php echo "nachpruefungeintragen.php?lvid=$lvid&stsem=$stsem"; ?>';
url += '&submit=1&student_uid='+uid+'&note='+note+'&datum='+datum+'&lehreinheit_id_pr='+lehreinheit_id+'&'+ts;
url += '&submit=1&student_uid='+uid+'&note='+note+'&datum='+datum+'&lehreinheit_id_pr='+lehreinheit_id+'&punkte='+punkte+'&'+ts;
$.ajax({
type:"GET",
@@ -300,6 +310,7 @@ foreach($noten_obj->result as $row)
var anlegendiv = document.getElementById("nachpruefung_div");
var datum = document.nachpruefung_form.datum.value;
var note = document.nachpruefung_form.note.value;
var punkte = document.nachpruefung_form.punkte.value;
var uid = document.nachpruefung_form.uid.value;
var lehreinheit_id = document.nachpruefung_form.le_id.value;
var resp = result;
@@ -313,7 +324,8 @@ foreach($noten_obj->result as $row)
{
notentd.removeChild(notentd.lastChild);
}
notenode = document.createTextNode(noten_array[note]);
var notentext = noten_array[note]+'('+punkte+')';
notenode = document.createTextNode(notentext);
notentd.appendChild(notenode);
}
notenstatus = document.getElementById("status_"+uid);
@@ -391,6 +403,46 @@ foreach($noten_obj->result as $row)
}
}
/**
* Wird bei der Punkteeingabe aufgerufen und laedt
* die dazupassende Noten anhand des Notenschluessels
*/
function PruefungPunkteEingabe()
{
var punkte = $('#pruefungspunkte').val();
// Request absetzen und Note zu den Punkten holen
if(punkte!='')
{
$.ajax({
type:"POST",
url:"lvgesamtnote_worker.php",
data: { lehrveranstaltung_id: '<?php echo $lvid; ?>',
punkte: punkte,
work: 'getGradeFromPoints',
studiensemester_kurzbz: '<?php echo $stsem;?>'
},
success:function(result)
{
note=result;
var notendropdown = $('#pruefungnoteselect');
notendropdown.val(note);
notendropdown.prop('disabled',true);
},
error:function(result)
{
alert('Noten ermittlung fehlgeschlagen');
}
});
}
else
{
var notendropdown = $('#pruefungnoteselect');
notendropdown.prop('disabled',false);
}
}
// ****
// * Oeffnet ein Fenster fuer den Import von Noten aus dem Excel
// ****
@@ -403,7 +455,7 @@ foreach($noten_obj->result as $row)
y = y+50;
anlegendiv.style.top = y+"px";
str += '<tr><td>Kopieren Sie die Spalten Matrikelnummer und Note aus dem Excel File und fügen Sie diese in folgendes Feld ein:</td>';
str += '<tr><td><?php echo $p->t('benotungstool/importAnweisung');?>:</td>';
str += '<td></td><tr><td><textarea id="noteimporttextarea" name="notenimport"></textarea></td></tr>';
str += "<tr><td><input type='button' name='speichern' value='<?php echo $p->t('global/speichern');?>' onclick='saveGradeBulk();'>";
str += "</td><td></td></tr></table></center></form>";
@@ -513,8 +565,6 @@ if($result = $db->db_query($qry))
}
else
die($p->t('global/fehleraufgetreten'));
$htmlOutput='';
//Kopfzeile
echo '
@@ -564,6 +614,7 @@ echo "<td>";
echo "<b>".$lv_obj->bezeichnung_arr[$sprache]."</b>";
// lvgesamtnote für Studenten speichern
/* Auskommentiert weil es vermutlich nicht verwendet wird 21.1.2015
if (isset($_REQUEST["submit"]) && ($_POST["student_uid"] != ''))
{
$jetzt = date("Y-m-d H:i:s");
@@ -598,6 +649,7 @@ if (isset($_REQUEST["submit"]) && ($_POST["student_uid"] != ''))
if (!$lvgesamtnote->save($new))
echo "<span class='error'>".$lvgesamtnote->errormsg."</span>";
}
*/
// eingetragene lv-gesamtnoten freigeben
if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1))
@@ -668,6 +720,8 @@ if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1))
}
echo '<table width="100%" height="10px"><tr><td>';
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
echo '<a href="#" onclick="window.open(\'notenschluessel.php?lehrveranstaltung_id='.$lvid.'&stsem='.$stsem.'\',\'Grades\', \'height=200,width=350,left=50,top=50,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes\'); return false;">'.$p->t('gesamtnote/notenschluesselanzeigen').'</a>';
echo '</td><td align="right">';
echo '<a href="'.APP_ROOT.'cms/dms.php?id='.$p->t('dms_link/benotungstoolHandbuch').'" class="Item" target="_blank">'.$p->t('benotungstool/handbuch').' (PDF)</a>';
echo '</td></tr></table>';
@@ -686,6 +740,7 @@ if ($pr_all->getPruefungenLV($lvid,"Termin2",$stsem))
foreach ($pr_all->result as $pruefung)
{
$studpruef_arr[$pruefung->student_uid][$pruefung->lehreinheit_id]["note"] = $pruefung->note;
$studpruef_arr[$pruefung->student_uid][$pruefung->lehreinheit_id]["punkte"] = $pruefung->punkte;
$studpruef_arr[$pruefung->student_uid][$pruefung->lehreinheit_id]["datum"] = $datum_obj->formatDatum($pruefung->datum,'d.m.Y');
}
}
@@ -700,6 +755,7 @@ if ($pr_komm->getPruefungenLV($lvid,"kommPruef",$stsem))
foreach ($pr_komm->result as $kpruefung)
{
$studpruef_komm[$kpruefung->student_uid][$kpruefung->lehreinheit_id]["note"] = $kpruefung->note;
$studpruef_komm[$kpruefung->student_uid][$kpruefung->lehreinheit_id]["punkte"] = $kpruefung->punkte;
$studpruef_komm[$kpruefung->student_uid][$kpruefung->lehreinheit_id]["datum"] = $datum_obj->formatDatum($kpruefung->datum,'d.m.Y');
}
}
@@ -709,24 +765,28 @@ $summe_komm=count($studpruef_komm);
//Studentenliste
echo '<table class="gradetable">';
echo "
<tr>
<th></th>
<th>".$p->t('global/uid')."</th>
<th>".$p->t('global/nachname')."</th>
<th>".$p->t('global/vorname')."</th>
<th>".($grade_from_moodle?''.$p->t('benotungstool/moodleNote').'':''.$p->t('benotungstool/leNoten').' (LE-ID)')."</th>
<th>".$p->t('benotungstool/punkte').' / '.$p->t('benotungstool/note')."</th>
<th rowspan=2>".$p->t('benotungstool/lvNote')."<br><input type='button' onclick='GradeImport()' value='".$p->t('benotungstool/importieren')."'></th>
<th align='right' rowspan=2>
<form name='freigabeform' action='".$_SERVER['PHP_SELF']."?lvid=$lvid&lehreinheit_id=$lehreinheit_id&stsem=$stsem' method='POST' onsubmit='return OnFreigabeSubmit()'><input type='hidden' name='freigabe' value='1'>
<span style='white-space:nowrap;'>".$p->t('global/passwort').": <input type='password' size='8' id='textbox-freigabe-passwort' name='passwort'></span><br><input type='submit' name='frei' value='Freigabe'>
echo "
<tr>
<th></th>
<th>".$p->t('global/uid')."</th>
<th>".$p->t('global/nachname')."</th>
<th>".$p->t('global/vorname')."</th>
<th>".($grade_from_moodle?''.$p->t('benotungstool/moodleNote').'':''.$p->t('benotungstool/leNoten').' (LE-ID)')."</th>
<th>".$p->t('benotungstool/punkte').' / '.$p->t('benotungstool/note')."</th>
<th rowspan=2>".$p->t('benotungstool/lvNote')."<br>
<input type='button' onclick='GradeImport()' value='".$p->t('benotungstool/importieren')."'>
</th>
<th align='right' rowspan=2>
<form name='freigabeform' action='".$_SERVER['PHP_SELF']."?lvid=$lvid&lehreinheit_id=$lehreinheit_id&stsem=$stsem' method='POST' onsubmit='return OnFreigabeSubmit()'>
<input type='hidden' name='freigabe' value='1'>
<span style='white-space:nowrap;'>".$p->t('global/passwort').": <input type='password' size='8' id='textbox-freigabe-passwort' name='passwort'></span>
<br><input type='submit' name='frei' value='Freigabe'>
</form>
</th>
<th>".$p->t('benotungstool/zeugnisnote')."</th>
<th colspan='2'>".$p->t('benotungstool/nachpruefung')."</th>
<th colspan='2'>".$p->t('benotungstool/kommissionellePruefung')."</th>
</tr>
</th>
<th>".$p->t('benotungstool/zeugnisnote')."</th>
<th colspan='2'>".$p->t('benotungstool/nachpruefung')."</th>
<th colspan='2'>".$p->t('benotungstool/kommissionellePruefung')."</th>
</tr>
<tr>
<th colspan='9'>&nbsp;</th>
<th colspan='2'>
@@ -983,8 +1043,9 @@ echo '<table class="gradetable">';
echo "<td valign='bottom' nowrap>
<form name='$row_stud->uid' id='$row_stud->uid' method='POST' action='".$_SERVER['PHP_SELF']."?lvid=$lvid&lehreinheit_id=$lehreinheit_id&stsem=$stsem'>
<span id='lvnoteneingabe_".$row_stud->uid."' ".$hide.">
<input type='hidden' name='student_uid' value='$row_stud->uid'>";
<input type='hidden' name='student_uid' value='$row_stud->uid'>";
// Punkte
if(CIS_GESAMTNOTE_PUNKTE)
echo '<input type="text" name="punkte" id="textbox-punkte-'.$i.'" value="'.$punkte_lv.'" size="3" oninput="PunkteEingabe('.$i.')"/>';
@@ -1035,11 +1096,13 @@ echo '<table class="gradetable">';
$stylestr = " style='color:red; border-color:red; border-style:solid; border-width:1px;'";
else
$stylestr ="";
// Zeugnisnote
echo "<td".$stylestr." align='center'>".(isset($noten_array[$znote])?$noten_array[$znote]['bezeichnung']:'')."</td>";
if(isset($noten_array[$znote]) && $noten_array[$znote]['positiv']==false)
{
$summe_ng++;
}
// Pruefung 2.Termin
if (key_exists($row_stud->uid, $studpruef_arr))
{
@@ -1051,27 +1114,33 @@ echo '<table class="gradetable">';
foreach ($le_id_arr as $le_id_stud)
{
$pr_note = $studpruef_arr[$row_stud->uid][$le_id_stud]["note"];
$pr_punkte = $studpruef_arr[$row_stud->uid][$le_id_stud]["punkte"];
$pr_datum = $studpruef_arr[$row_stud->uid][$le_id_stud]["datum"];
$pr_le_id = $le_id_stud;
echo "<tr><td class='td_datum'>";
echo $pr_datum."</td><td class='td_note'>".$noten_array[$pr_note]['bezeichnung']."</td><td>";
echo "<input type='button' name='anlegen' value='".$p->t('global/aendern')."' onclick='pruefungAnlegen(\"".$row_stud->uid."\",\"".$pr_datum."\",\"".$pr_note."\",\"".$pr_le_id."\")'>";
echo "<td></tr>";
if($pr_punkte!='')
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.$pr_punkte.')';
else
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'];
echo '<tr>
<td class="td_datum">'.$pr_datum.'</td>
<td class="td_note">'.$pr_notenbezeichnung.'</td>
<td><input type="button" name="anlegen" value="'.$p->t('global/aendern').'" onclick="pruefungAnlegen(\''.$row_stud->uid.'\',\''.$pr_datum.'\',\''.$pr_note.'\',\''.$pr_le_id.'\',\''.$pr_punkte.'\')"><td>
</tr>';
}
echo "</table>";
echo "</span>";
//echo "<div id='nachpruefung_div_".$row_stud->uid."' style='position:relative; top:0px; left 5px; background-color:#cccccc; visibility:collapse;' class='transparent'></div>";
echo "</td>";
//echo "</form>";
}
else
{
if (!is_null($note_lv))
echo "<td colspan='2'><span id='span_".$row_stud->uid."'><input type='button' name='anlegen' value='".$p->t('benotungstool/anlegen')."' onclick='pruefungAnlegen(\"".$row_stud->uid."\",\"\",\"\",\"\")'></span></td>";
echo "<td colspan='2'><span id='span_".$row_stud->uid."'><input type='button' name='anlegen' value='".$p->t('benotungstool/anlegen')."' onclick='pruefungAnlegen(\"".$row_stud->uid."\",\"\",\"\",\"\",\"\")'></span></td>";
else
echo "<td colspan='2'></td>";
}
// komm Pruefung
if (key_exists($row_stud->uid,$studpruef_komm))
{
@@ -1083,12 +1152,19 @@ echo '<table class="gradetable">';
foreach ($le_id_arr as $le_id_stud)
{
$pr_note = $studpruef_komm[$row_stud->uid][$le_id_stud]["note"];
$pr_punkte = $studpruef_komm[$row_stud->uid][$le_id_stud]["punkte"];
$pr_datum = $studpruef_komm[$row_stud->uid][$le_id_stud]["datum"];
$pr_le_id = $le_id_stud;
echo "<tr><td class='td_datum'>";
echo $pr_datum."</td><td class='td_note'>".$noten_array[$pr_note]['bezeichnung']."</td>";
echo "</tr>";
if($pr_punkte!='')
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'].' ('.$pr_punkte.')';
else
$pr_notenbezeichnung = $noten_array[$pr_note]['bezeichnung'];
echo '<tr>
<td class="td_datum">'.$pr_datum.'</td>
<td class="td_note">'.$pr_notenbezeichnung.'</td>
</tr>';
}
echo "</table>";
echo "</span>";
@@ -1103,24 +1179,25 @@ echo '<table class="gradetable">';
$i++;
}
}
// Fusszeile
echo "
<tr style='font-weight:bold;' align='center'>
<th style='font-weight:bold;'>&Sigma;</th>
<th style='font-weight:bold;' title='".$p->t('benotungstool/anzahlDerStudenten')."'>$summe_stud</th>
<th colspan='6'></td>
<th style='color:red; font-weight:bold;' title='".$p->t('benotungstool/anzahlNegativerBeurteilungen')."'>$summe_ng</th>
<th style='font-weight:bold;' colspan='2' title='".$p->t('benotungstool/anzahlNachpruefungen')."'>$summe_t2</th>
<th style='font-weight:bold;' colspan='2' title='".$p->t('benotungstool/anzahlKommisionellePruefungen')."'>$summe_komm</th>
</tr>
<tr style='font-weight:bold;' align='center'>
<th style='font-weight:bold;'>&Sigma;</th>
<th style='font-weight:bold;' title='".$p->t('benotungstool/anzahlDerStudenten')."'>$summe_stud</th>
<th colspan='6'></td>
<th style='color:red; font-weight:bold;' title='".$p->t('benotungstool/anzahlNegativerBeurteilungen')."'>$summe_ng</th>
<th style='font-weight:bold;' colspan='2' title='".$p->t('benotungstool/anzahlNachpruefungen')."'>$summe_t2</th>
<th style='font-weight:bold;' colspan='2' title='".$p->t('benotungstool/anzahlKommisionellePruefungen')."'>$summe_komm</th>
</tr>
</table>
</td></tr>
</table>
";
echo $htmlOutput;
?>
<div id="nachpruefung_div" style="position:absolute; top:100px; left:200px; width:400px; height:150px; background-color:#cccccc; visibility:hidden; border-style:solid; border-width:1px; border-color:#333333;" ></div>
<div id="nachpruefung_div" style="position:absolute; top:100px; left:200px; width:400px; height:200px; background-color:#cccccc; visibility:hidden; border-style:solid; border-width:1px; border-color:#333333;" ></div>
</body>
</html>
@@ -59,8 +59,6 @@ else
if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id
$lehreinheit_id = $_GET['lehreinheit_id'];
//else
// die('Fehlerhafte Parameteruebergabe');
if(isset($_GET['lehreinheit_id_pr']) && is_numeric($_GET['lehreinheit_id_pr'])) //Lehreinheit_id der pruefung
$lehreinheit_id = $_GET['lehreinheit_id_pr'];
@@ -87,14 +85,9 @@ if(isset($_GET['stsem']))
else
$stsem = '';
//Vars
$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:'');
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
//Kopfzeile
//Studiensemester laden
$stsem_obj = new studiensemester();
if($stsem=='')
@@ -102,78 +95,93 @@ if($stsem=='')
$student_uid = $_REQUEST["student_uid"];
//if($lehreinheit_id=='')
// die('Es wurde keine passende Lehreinheit in diesem Studiensemester gefunden');
$note = $_REQUEST["note"];
if ( (($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
$note = $_REQUEST["note"];
if(isset($_REQUEST['punkte']))
$punkte = $_REQUEST['punkte'];
else
$punkte = '';
if($note=='')
$note = 9;
$old_note = $note;
// lvgesamtnote für studenten speichern
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
// lehreinheiten holen, in denen der student ist
$le_arr = array();
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehrveranstaltung_id = '".$lvid."' and uid='".$student_uid."' ORDER BY lehrform_kurzbz DESC";
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
while($row_stud = $db->db_fetch_object($result_stud))
{
$le_arr[] = $row_stud->lehreinheit_id;
}
}
if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') )
{
// Die Pruefung muss einer Lehreinheit zugeordnet werden
// deshalb wird hier versucht eine passende Lehreinheit zu ermitteln.
$le_arr = array();
$qry_stud = "SELECT DISTINCT lehreinheit_id, lehrform_kurzbz
FROM
campus.vw_student_lehrveranstaltung
JOIN campus.vw_student using(uid)
WHERE
studiensemester_kurzbz = ".$db->db_add_param($stsem)."
AND lehrveranstaltung_id = ".$db->db_add_param($lvid, FHC_INTEGER)."
AND uid=".$db->db_add_param($student_uid)."
ORDER BY lehrform_kurzbz DESC";
if (!in_array($lehreinheit_id,$le_arr))
$lehreinheit_id = $le_arr[0];
if($result_stud = $db->db_query($qry_stud))
{
$i=1;
while($row_stud = $db->db_fetch_object($result_stud))
{
$le_arr[] = $row_stud->lehreinheit_id;
}
}
if (!in_array($lehreinheit_id,$le_arr))
$lehreinheit_id = $le_arr[0];
$jetzt = date("Y-m-d H:i:s");
$pr = new Pruefung();
// Wenn eine Pruefung angelegt wird, wird zuerst eine Pruefung mit 1. Termin angelegt
// und dort die Zeugnisnote gespeichert
if($pr->getPruefungen($student_uid, "Termin1", $lvid, $stsem))
{
if ($pr->result)
$termin1 = 1;
else
{
$lvnote = new lvgesamtnote();
if ($lvnote->load($lvid, $student_uid, $stsem))
{
$lvnote = new lvgesamtnote();
if ($lvnote->load($lvid, $student_uid, $stsem))
{
$pr_note = $lvnote->note;
$benotungsdatum = $lvnote->benotungsdatum;
}
else
{
$pr_note = 9;
$benotungsdatum = $jetzt;
}
$pr_1 = new Pruefung();
$pr_1->lehreinheit_id = $lehreinheit_id;
$pr_1->student_uid = $student_uid;
$pr_1->mitarbeiter_uid = $user;
$pr_1->note = $pr_note;
$pr_1->pruefungstyp_kurzbz = "Termin1";
$pr_1->datum = $benotungsdatum;
$pr_1->anmerkung = "";
$pr_1->insertamum = $jetzt;
$pr_1->insertvon = $user;
$pr_1->updateamum = Null;
$pr_1->updatevon = Null;
$pr_1->ext_id = Null;
$pr_1->new = 1;
$pr_1->save();
$pr_note = $lvnote->note;
$pr_punkte = $lvnote->punkte;
$benotungsdatum = $lvnote->benotungsdatum;
}
else
{
$pr_note = 9;
$benotungsdatum = $jetzt;
}
$pr_1 = new Pruefung();
$pr_1->lehreinheit_id = $lehreinheit_id;
$pr_1->student_uid = $student_uid;
$pr_1->mitarbeiter_uid = $user;
$pr_1->note = $pr_note;
$pr_1->punkte = $pr_punkte;
$pr_1->pruefungstyp_kurzbz = "Termin1";
$pr_1->datum = $benotungsdatum;
$pr_1->anmerkung = "";
$pr_1->insertamum = $jetzt;
$pr_1->insertvon = $user;
$pr_1->updateamum = null;
$pr_1->updatevon = null;
$pr_1->ext_id = null;
$pr_1->new = true;
$pr_1->save();
}
}
$prTermin2 = new Pruefung();
$pr_2 = new Pruefung();
// Die Pruefung wird als Termin2 eingetragen
if ($prTermin2->getPruefungen($student_uid, "Termin2", $lvid, $stsem))
{
if ($prTermin2->result)
@@ -184,6 +192,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
$pr_2->updatevon = $user;
$old_note = $pr_2->note;
$pr_2->note = $note;
$pr_2->punkte = $punkte;
$pr_2->datum = $datum;
$pr_2->anmerkung = "";
}
@@ -193,125 +202,65 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){
$pr_2->student_uid = $student_uid;
$pr_2->mitarbeiter_uid = $user;
$pr_2->note = $note;
$pr_2->punkte = $punkte;
$pr_2->pruefungstyp_kurzbz = "Termin2";
$pr_2->datum = $datum;
$pr_2->anmerkung = "";
$pr_2->insertamum = $jetzt;
$pr_2->insertvon = $user;
$pr_2->updateamum = Null;
$pr_2->updatevon = Null;
$pr_2->ext_id = Null;
$pr_2->new = 1;
$pr_2->updateamum = null;
$pr_2->updatevon = null;
$pr_2->ext_id = null;
$pr_2->new = true;
$old_note = -1;
}
$pr_2->save();
}
if ( (($note>0) && ($note < 6)) || ($note == 7) || ($note==16) || ($note==10) || ($note==14))
{
// Wenn eine Pruefung eingetragen wird, wird danach die LV-Note korrigiert
$jetzt = date("Y-m-d H:i:s");
$jetzt = date("Y-m-d H:i:s");
$lvid = $_REQUEST["lvid"];
$lvgesamtnote = new lvgesamtnote();
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
$lvgesamtnote->student_uid = $student_uid;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = $_REQUEST["note"];
$lvgesamtnote->mitarbeiter_uid = $user;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->freigabedatum = null;
$lvgesamtnote->freigabevon_uid = null;
$lvgesamtnote->bemerkung = null;
$lvgesamtnote->updateamum = null;
$lvgesamtnote->updatevon = null;
$lvgesamtnote->insertamum = $jetzt;
$lvgesamtnote->insertvon = $user;
$new = true;
$response = "neu";
}
else
{
$lvgesamtnote->note = $_REQUEST["note"];
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
$new = false;
if ($lvgesamtnote->freigabedatum)
$response = "update_f";
else
$response = "update";
}
if (!$lvgesamtnote->save($new))
echo "<span class='error'>".$lvgesamtnote->errormsg."</span>";
else
echo $response;
$lvid = $_REQUEST["lvid"];
$lvgesamtnote = new lvgesamtnote();
if (!$lvgesamtnote->load($lvid, $student_uid, $stsem))
{
$lvgesamtnote->student_uid = $student_uid;
$lvgesamtnote->lehrveranstaltung_id = $lvid;
$lvgesamtnote->studiensemester_kurzbz = $stsem;
$lvgesamtnote->note = $note;
$lvgesamtnote->punkte = $punkte;
$lvgesamtnote->mitarbeiter_uid = $user;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->freigabedatum = null;
$lvgesamtnote->freigabevon_uid = null;
$lvgesamtnote->bemerkung = null;
$lvgesamtnote->updateamum = null;
$lvgesamtnote->updatevon = null;
$lvgesamtnote->insertamum = $jetzt;
$lvgesamtnote->insertvon = $user;
$new = true;
$response = "neu";
}
else
{
$lvgesamtnote->note = $note;
$lvgesamtnote->punkte = $punkte;
$lvgesamtnote->benotungsdatum = $jetzt;
$lvgesamtnote->updateamum = $jetzt;
$lvgesamtnote->updatevon = $user;
$new = false;
if ($lvgesamtnote->freigabedatum)
$response = "update_f";
else
$response = "update";
}
else
echo "update_pr";
if (!$lvgesamtnote->save($new))
echo "<span class='error'>".$lvgesamtnote->errormsg."</span>";
else
echo $response;
}
else
echo "Fehler beim Eintragen der Pr&uuml;fungen";
/*
Beim Eintragen von Nachpruefungen wird ein Mail an die Assistenz geschickt.
17.06.2010 auf Wunsch der Assistenz werden keine Mails mehr versendet
if ($old_note != $note)
{
$qry = "SELECT distinct on(uid) vorname, nachname, tbl_benutzer.uid as uid, oe_kurzbz
FROM lehre.tbl_lehreinheit
JOIN lehre.tbl_lehreinheitmitarbeiter USING (lehreinheit_id)
JOIN public.tbl_benutzer ON (uid=mitarbeiter_uid)
JOIN public.tbl_person USING (person_id)
JOIN lehre.tbl_lehrveranstaltung USING (lehrveranstaltung_id)
JOIN public.tbl_studiengang USING (studiengang_kz)
WHERE
lehrveranstaltung_id='$lvid' AND
tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND
tbl_benutzer.aktiv=true AND tbl_person.aktiv=true AND
studiensemester_kurzbz='$stsem'";
$mailto = '';
if(($result = $db->db_query($qry)) != FALSE)
{
if ($db->db_num_rows($result) > 0)
{
$row_lector = $db->db_fetch_object($result);
$oe_kurzbz = $row_lector->oe_kurzbz;
$mailto = $row_lector->uid.'@'.DOMAIN;
while (($row_lector = $db->db_fetch_object($result)) != FALSE)
$mailto .= ','.$row_lector->uid.'@'.DOMAIN;
}
}
$ass = new benutzerfunktion();
if ($ass->getBenutzerFunktionen("ass",$oe_kurzbz))
foreach ($ass->result as $res) $mailto .= (empty($mailto) ? "" : ",").$res->uid.'@'.DOMAIN;
if($mailto != '')
{
$culprit = new benutzer($user);
$victim = new student($student_uid);
$mail = new mail( $mailto,
'[email protected]',
'[CIS-System] Note der Nachprüfung wurde '.($old_note < 0 ? 'eingetragen' : 'geändert'),
"Automatische Benachrichtigung:\n\nDie Nachprüfungsnote von\n\n$victim->vorname $victim->nachname ($student_uid)\n\nwurde im Studiensemester $stsem von $culprit->vorname $culprit->nachname ($user)\n\n".
($old_note < 0
? "mit '$note' eingetragen."
: "von '$old_note' auf '$note' geändert.").
"\n");
if (!$mail->send())
{
sleep(3);
$mail->send(); // Desperate second attempt.
}
}
}
*/
?>
@@ -0,0 +1,82 @@
<?php
/* Copyright (C) 2015 fhcomplete.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Andreas Oesterreicher <[email protected]> and
*/
require_once('../../../../config/cis.config.inc.php');
require_once('../../../../config/global.config.inc.php');
require_once('../../../../include/functions.inc.php');
require_once('../../../../include/notenschluessel.class.php');
require_once('../../../../include/phrasen.class.php');
$uid = get_uid();
$sprache = getSprache();
$p = new phrasen($sprache);
if(isset($_GET['lehrveranstaltung_id']))
$lehrveranstaltung_id = $_GET['lehrveranstaltung_id'];
else
die('Fehlerhafte Parameteruebergabe');
if(isset($_GET['stsem']))
$studiensemester_kurzbz = $_GET['stsem'];
else
die('Fehlerhafte Parameteruebergabe');
echo '<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../../../skin/style.css.php" rel="stylesheet" type="text/css">
<link href="../../../../skin/jquery.css" rel="stylesheet" type="text/css"/>
<link href="../../../../skin/tablesort.css" rel="stylesheet" type="text/css"/>
<link href="../../../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
<script src="../../../../include/js/jquery1.9.min.js" type="text/javascript"></script>
<title>Grade</title>
</head>
<body>';
$notenschluessel = new notenschluessel();
if($kurzbz = $notenschluessel->getNotenschluessel($lehrveranstaltung_id, $studiensemester_kurzbz))
{
if($notenschluessel->loadAufteilung($kurzbz))
{
echo '<table id="t1" class="tablesorter">
<thead>
<tr>
<th>'.$p->t('benotungstool/note').'</th>
<th>'.$p->t('benotungstool/punkte').'</th>
</tr>
</thead>
<tbody>';
foreach($notenschluessel->result as $row)
{
echo '<tr>';
echo '<td>'.$row->notenbezeichnung.'</td>';
echo '<td>'.$row->punkte.'</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
}
else
{
echo $p->t('gesamtnote/keinNotenschluesselvorhanden');
}
echo '</body></html>';
?>
+44 -7
View File
@@ -32,6 +32,7 @@ require_once('../../../include/note.class.php');
require_once('../../../include/phrasen.class.php');
require_once('../../../include/studiengang.class.php');
require_once('../../../include/lehrveranstaltung.class.php');
require_once('../../../include/pruefung.class.php');
$sprache = getSprache();
$p = new phrasen($sprache);
@@ -96,6 +97,12 @@ else
$stg_obj->load($row->studiengang_kz);
$stg_name = $stg_obj->bezeichnung_arr[$sprache];
}
$notenarr=array();
$note = new note();
$note->getAll();
foreach($note->result as $row)
$notenarr[$row->note]=$row->bezeichnung;
//Aktuelles Studiensemester ermitteln
@@ -143,7 +150,14 @@ else
if($result=$db->db_query($qry))
{
//Tabelle anzeigen
$tbl= "<table><tr class='liste'><th>".$p->t('global/lehrveranstaltung')."</th><th>".$p->t('benotungstool/lvNote')."</th><th>".$p->t('benotungstool/zeugnisnote')."</th><th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th></tr>";
$tbl= "<table>
<tr class='liste'>
<th>".$p->t('global/lehrveranstaltung')."</th>
<th>".$p->t('benotungstool/lvNote')."</th>
<th>".$p->t('benotungstool/zeugnisnote')."</th>
<th>".$p->t('tools/benotungsdatumDerZeugnisnote')."</th>
<th>".$p->t('benotungstool/pruefung')."</th>
</tr>";
$i=0;
while($row=$db->db_fetch_object($result))
{
@@ -157,9 +171,8 @@ else
//Nur freigegebene Noten anzeigen
if($row->freigabedatum>=$row->lvbenotungsdatum)
{
$note = new note();
if($note->load($row->lvnote))
$tbl.=$note->bezeichnung;
if(isset($notenarr[$row->lvnote]))
$tbl.=$notenarr[$row->lvnote];
else
$tbl.=$row->lvnote;
}
@@ -173,9 +186,8 @@ else
$markier = "";
$tbl .= "<td".$markier.">";
$note = new note();
if($note->load($row->note))
$tbl.=$note->bezeichnung;
if(isset($notenarr[$row->note]))
$tbl.=$notenarr[$row->note];
else
$tbl.=$row->note;
@@ -184,6 +196,31 @@ else
$tbl .= "</td>";
$tbl .= '<td>'.$datum_obj->formatDatum($row->benotungsdatum,'d.m.Y').'</td>';
$pruefung = new pruefung();
$pruefung->getPruefungen($user, null,$row->lehrveranstaltung_id,$stsem);
if(count($pruefung->result)>0)
{
$tbl.='<td>';
foreach($pruefung->result as $row)
{
if(isset($notenarr[$row->note]))
$note=$notenarr[$row->note];
else
$note=$row->note;
if($row->punkte!='')
$punkte = ' ('.(float)$row->punkte.')';
else
$punkte='';
$tbl.= $row->pruefungstyp_beschreibung.' '.$datum_obj->formatDatum($row->datum,'d.m.Y').' '.$note.$punkte.'<br>';
}
$tbl.='</td>';
}
$tbl .= "</tr>";
}