Punkteeingabe im FAS

Punkteeingabe bei Pruefungen
Notenschluessel wird im CIS angezeigt
This commit is contained in:
oesi
2015-01-26 09:05:47 +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,
'CIS-System@do.not.reply',
'[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 <andreas.oesterreicher@technikum-wien.at> 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>";
}
@@ -26,6 +26,14 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$punktehidden = 'false';
else
$punktehidden = 'true';
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css\" ?>";
@@ -250,7 +258,9 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
</menupopup>
</template>
</menulist>
<button id="lehrveranstaltung-noten-button-speichern" oncommand="LehrveranstaltungNoteSpeichern()" label="Speichern" disabled="true" hidden="true"/>
<label value="Punkte" control="lehrveranstaltung-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
<textbox id="lehrveranstaltung-noten-textbox-punkte" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<button id="lehrveranstaltung-noten-button-speichern" oncommand="LehrveranstaltungNoteSpeichern()" label="Speichern" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<spacer flex="1" />
<button id="lehrveranstaltung-noten-button-import" label="Notenimport" oncommand="LehrveranstaltungNotenImport();" />
</hbox>
@@ -1322,6 +1322,7 @@ function LehrveranstaltungNotenDetailDisableFields(val)
{
document.getElementById('lehrveranstaltung-noten-button-speichern').disabled=val;
document.getElementById('lehrveranstaltung-noten-menulist-note').disabled=val;
document.getElementById('lehrveranstaltung-noten-textbox-punkte').disabled=val;
}
// ****
@@ -1645,6 +1646,7 @@ function LehrveranstaltungNoteSpeichern()
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
note = document.getElementById('lehrveranstaltung-noten-menulist-note').value;
punkte = document.getElementById('lehrveranstaltung-noten-textbox-punkte').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
@@ -1656,6 +1658,7 @@ function LehrveranstaltungNoteSpeichern()
req.add('student_uid', student_uid);
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
req.add('note', note);
req.add('punkte', punkte);
var response = req.executePOST();
@@ -1712,11 +1715,13 @@ function LehrveranstaltungNotenAuswahl()
//Daten holen
note = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#note" ));
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
if(note=='')
note='9';
document.getElementById('lehrveranstaltung-noten-menulist-note').value=note;
document.getElementById('lehrveranstaltung-noten-textbox-punkte').value=punkte;
}
// ****
@@ -2269,4 +2274,4 @@ function LvAngebotNew()
{
LvAngebotReset();
LvAngebotGruppeTreeRefresh();
}
}
+11 -2
View File
@@ -2453,6 +2453,8 @@ if(!$error)
$noten->studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
$noten->benotungsdatum = date('Y-m-d H:i:s');
$noten->note = $_POST['note'];
if(isset($_POST['punkte']))
$noten->punkte=$_POST['punkte'];
if($noten->save())
{
@@ -2871,7 +2873,7 @@ if(!$error)
{
if($db->db_num_rows($result)==0)
{
$qry = "SELECT note, benotungsdatum FROM lehre.tbl_zeugnisnote JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE
$qry = "SELECT note,punkte, benotungsdatum FROM lehre.tbl_zeugnisnote JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) WHERE
student_uid=".$db->db_add_param($_POST['student_uid'])." AND
tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($_POST['lehreinheit_id'], FHC_INTEGER)." AND
tbl_lehreinheit.studiensemester_kurzbz = tbl_zeugnisnote.studiensemester_kurzbz";
@@ -2888,6 +2890,7 @@ if(!$error)
$ersttermin->student_uid = $_POST['student_uid'];
$ersttermin->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
$ersttermin->note = $row->note;
$ersttermin->punkte = $row->punkte;
$ersttermin->pruefungstyp_kurzbz = 'Termin1';
$ersttermin->datum = $row->benotungsdatum;
$ersttermin->anmerkung = '';
@@ -2919,6 +2922,8 @@ if(!$error)
$pruefung->student_uid = $_POST['student_uid'];
$pruefung->mitarbeiter_uid = $_POST['mitarbeiter_uid'];
$pruefung->note = $_POST['note'];
if(isset($_POST['punkte']))
$pruefung->punkte = $_POST['punkte'];
$pruefung->pruefungstyp_kurzbz = $_POST['pruefungstyp_kurzbz'];
$pruefung->datum = $_POST['datum'];
$pruefung->anmerkung = $_POST['anmerkung'];
@@ -2978,7 +2983,7 @@ if(!$error)
}
else
{
@$zeungisnote->new = false;
$zeugnisnote->new = false;
}
}
else
@@ -2994,6 +2999,10 @@ if(!$error)
$zeugnisnote->lehrveranstaltung_id = $lehrveranstaltung_id;
$zeugnisnote->studiensemester_kurzbz = $studiensemester_kurzbz;
$zeugnisnote->note = $_POST['note'];
if(isset($_POST['punkte']))
$zeugnisnote->punkte = $_POST['punkte'];
else
$zeugnisnote->punkte='';
$zeugnisnote->uebernahmedatum = date('Y-m-d H:i:s');
$zeugnisnote->benotungsdatum = date('Y-m-d',$datum_obj->mktime_fromdate($_POST['datum']));
$zeugnisnote->updateamum = date('Y-m-d H:i:s');
+10 -4
View File
@@ -26,8 +26,14 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$punktehidden = 'false';
else
$punktehidden = 'true';
echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css\" ?>";
?>
@@ -52,9 +58,7 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
style="margin-bottom:5px;" height="100%" enableColumnDrag="true"
context="student-noten-tree-popup"
flags="dont-build-content"
>
<!-- onselect="StudentNotenAuswahl()" - wird jetzt per JS gesetzt -->
>
<treecols>
<treecol id="student-noten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="false" primary="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
@@ -244,8 +248,10 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
</menupopup>
</template>
</menulist>
<label value="Punkte" control="student-noten-textbox-punkte" hidden="<?php echo $punktehidden; ?>"/>
<textbox id="student-noten-textbox-punkte" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<button id="student-noten-button-speichern" oncommand="StudentNoteSpeichern()" label="Speichern" disabled="true" hidden="true"/>
<button id="student-noten-button-speichern" oncommand="StudentNoteSpeichern()" label="Speichern" disabled="true" hidden="<?php echo $punktehidden; ?>"/>
<spacer flex="1" />
</hbox>
+10
View File
@@ -3496,6 +3496,7 @@ function StudentNoteDisableFields(val)
function StudentNoteDetailDisableFields(val)
{
document.getElementById('student-noten-menulist-note').disabled=val;
document.getElementById('student-noten-textbox-punkte').disabled=val;
document.getElementById('student-noten-button-speichern').disabled=val;
}
@@ -3542,11 +3543,13 @@ function StudentNotenAuswahl()
//Daten holen
note = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#note" ));
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
if(note=='')
note='9';
document.getElementById('student-noten-menulist-note').value=note;
document.getElementById('student-noten-textbox-punkte').value=punkte;
}
// ****
@@ -3572,6 +3575,7 @@ function StudentNoteSpeichern()
var studiensemester_kurzbz=tree.view.getCellText(tree.currentIndex,col);
note = document.getElementById('student-noten-menulist-note').value;
punkte = document.getElementById('student-noten-textbox-punkte').value;
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
@@ -3583,6 +3587,7 @@ function StudentNoteSpeichern()
req.add('student_uid', student_uid);
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
req.add('note', note);
req.add('punkte', punkte);
var response = req.executePOST();
@@ -3779,6 +3784,7 @@ function StudentPruefungDetailDisableFields(val)
document.getElementById('student-pruefung-menulist-note').disabled=val;
document.getElementById('student-pruefung-textbox-datum').disabled=val;
document.getElementById('student-pruefung-textbox-anmerkung').disabled=val;
document.getElementById('student-pruefung-textbox-punkte').disabled=val;
document.getElementById('student-pruefung-button-speichern').disabled=val;
}
@@ -3979,6 +3985,7 @@ function StudentPruefungDetailSpeichern()
neu = document.getElementById('student-pruefung-checkbox-neu').checked;
pruefung_id = document.getElementById('student-pruefung-textbox-pruefung_id').value;
studiengang_kz = document.getElementById('student-prestudent-menulist-studiengang_kz').value;
punkte = document.getElementById('student-pruefung-textbox-punkte').value;
if(lehreinheit_id=='')
{
@@ -4022,6 +4029,7 @@ function StudentPruefungDetailSpeichern()
req.add('pruefung_id', pruefung_id);
req.add('student_uid', student_uid);
req.add('studiengang_kz', studiengang_kz);
req.add('punkte', punkte);
var response = req.executePOST();
@@ -4088,6 +4096,7 @@ function StudentPruefungAuswahl()
datum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#datum" ));
anmerkung = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkung" ));
studiensemester_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiensemester_kurzbz" ));
punkte = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#punkte" ));
try
{
@@ -4194,6 +4203,7 @@ function StudentPruefungAuswahl()
document.getElementById('student-pruefung-textbox-anmerkung').value=anmerkung;
document.getElementById('student-pruefung-checkbox-neu').checked=false;
document.getElementById('student-pruefung-textbox-pruefung_id').value=pruefung_id;
document.getElementById('student-pruefung-textbox-punkte').value=punkte;
}
// ****
+21 -1
View File
@@ -26,6 +26,14 @@ header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../config/vilesci.config.inc.php');
require_once('../../config/global.config.inc.php');
if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE)
$punktehidden = 'false';
else
$punktehidden = 'true';
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
?>
@@ -97,6 +105,10 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#mitarbeiter_uid" />
<splitter class="tree-splitter"/>
<treecol id="student-pruefung-tree-punkte" label="Punkte" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/pruefung/rdf#punkte" />
<splitter class="tree-splitter"/>
</treecols>
<template>
@@ -113,6 +125,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#lehreinheit_id"/>
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#student_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#mitarbeiter_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/pruefung/rdf#punkte"/>
</treerow>
</treeitem>
</treechildren>
@@ -208,6 +221,13 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</template>
</menulist>
</row>
<row hidden="<?php echo $punktehidden; ?>">
<label value="Punkte" control="student-pruefung-textbox-punkte"/>
<hbox>
<textbox id="student-pruefung-textbox-punkte" disabled="true" checked="false"/>
<spacer flex="1" />
</hbox>
</row>
<row>
<label value="Datum" control="student-pruefung-textbox-datum"/>
<hbox>
@@ -233,4 +253,4 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
</hbox>
<spacer flex="1" />
</vbox>
</overlay>
</overlay>
+32
View File
@@ -131,5 +131,37 @@ class notenschluessel extends basis_db
return false;
}
/**
* Laedt die Aufteilung eines Notenschluessels
*/
public function loadAufteilung($notenschluessel_kurzbz)
{
$qry = 'SELECT
tbl_notenschluesselaufteilung.*, tbl_notenschluessel.bezeichnung,
tbl_note.bezeichnung as notenbezeichnung
FROM
lehre.tbl_notenschluesselaufteilung
JOIN lehre.tbl_notenschluessel USING(notenschluessel_kurzbz)
JOIN lehre.tbl_note USING(note)
WHERE
notenschluessel_kurzbz='.$this->db_add_param($notenschluessel_kurzbz).'
ORDER BY punkte desc';
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new notenschluessel();
$obj->notenschluessel_kurzbz = $row->notenschluessel_kurzbz;
$obj->punkte = $row->punkte;
$obj->note = $row->note;
$obj->bezeichnung = $row->bezeichnung;
$obj->notenbezeichnung = $row->notenbezeichnung;
$this->result[] = $obj;
}
return true;
}
}
}
?>
+56 -40
View File
@@ -42,6 +42,7 @@ class pruefung extends basis_db
public $ext_id; // bigint
public $pruefungsanmeldung_id; // bigint
public $vertrag_id; // bigint
public $punkte; // numeric(8,4)
public $lehrveranstaltung_bezeichnung;
public $lehrveranstaltung_id;
@@ -74,8 +75,15 @@ class pruefung extends basis_db
return false;
}
$qry = "SELECT tbl_pruefung.*, tbl_lehreinheit.lehrveranstaltung_id, tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz
FROM lehre.tbl_pruefung JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) WHERE pruefung_id=".$this->db_add_param($pruefung_id, FHC_INTEGER);
$qry = "SELECT
tbl_pruefung.*,
tbl_lehreinheit.lehrveranstaltung_id,
tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz
FROM
lehre.tbl_pruefung
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
pruefung_id=".$this->db_add_param($pruefung_id, FHC_INTEGER);
if($this->db_query($qry))
{
@@ -98,6 +106,7 @@ class pruefung extends basis_db
$this->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
$this->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$this->punkte = $row->punkte;
}
}
else
@@ -145,6 +154,7 @@ class pruefung extends basis_db
$pruef_obj->ext_id=$row->ext_id;
$pruef_obj->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
$pruef_obj->vertrag_id = $row->vertrag_id;
$pruef_obj->punkte = $row->punkte;
$this->result[] = $pruef_obj;
}
@@ -209,7 +219,8 @@ class pruefung extends basis_db
if($this->new)
{
//Neuen Datensatz anlegen
$qry = 'BEGIN;INSERT INTO lehre.tbl_pruefung (lehreinheit_id, student_uid, mitarbeiter_uid, note, pruefungstyp_kurzbz, datum, anmerkung, insertamum, insertvon, updateamum, updatevon, ext_id, pruefungsanmeldung_id, vertrag_id) VALUES ('.
$qry = 'BEGIN;INSERT INTO lehre.tbl_pruefung (lehreinheit_id, student_uid, mitarbeiter_uid, note, pruefungstyp_kurzbz,
datum, anmerkung, insertamum, insertvon, updateamum, updatevon, ext_id, pruefungsanmeldung_id, vertrag_id, punkte) VALUES ('.
$this->db_add_param($this->lehreinheit_id).', '.
$this->db_add_param($this->student_uid).', '.
$this->db_add_param($this->mitarbeiter_uid).', '.
@@ -223,7 +234,8 @@ class pruefung extends basis_db
$this->db_add_param($this->updatevon).', '.
$this->db_add_param($this->ext_id).', '.
$this->db_add_param($this->pruefungsanmeldung_id).','.
$this->db_add_param($this->vertrag_id).');';
$this->db_add_param($this->vertrag_id).','.
$this->db_add_param($this->punkte).');';
}
else
{
@@ -237,7 +249,7 @@ class pruefung extends basis_db
}
$qry = 'UPDATE lehre.tbl_pruefung SET '.
'lehreinheit_id='.$this->db_add_param($this->lehreinheit_id).', '.
'lehreinheit_id='.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).', '.
'student_uid='.$this->db_add_param($this->student_uid).', '.
'mitarbeiter_uid='.$this->db_add_param($this->mitarbeiter_uid).', '.
'note='.$this->db_add_param($this->note).', '.
@@ -249,9 +261,10 @@ class pruefung extends basis_db
'updateamum='.$this->db_add_param($this->updateamum).', '.
'updatevon='.$this->db_add_param($this->updatevon).', '.
'ext_id='.$this->db_add_param($this->ext_id).', '.
'pruefungsanmeldung_id='.$this->db_add_param($this->pruefungsanmeldung_id).', '.
'vertrag_id='.$this->db_add_param($this->vertrag_id).' '.
'WHERE pruefung_id='.$this->db_add_param($this->pruefung_id).';';
'pruefungsanmeldung_id='.$this->db_add_param($this->pruefungsanmeldung_id, FHC_INTEGER).', '.
'vertrag_id='.$this->db_add_param($this->vertrag_id, FHC_INTEGER).', '.
'punkte='.$this->db_add_param($this->punkte).' '.
'WHERE pruefung_id='.$this->db_add_param($this->pruefung_id, FHC_INTEGER).';';
}
if($this->db_query($qry))
@@ -339,6 +352,7 @@ class pruefung extends basis_db
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->pruefungsanmeldung_id = $row->pruefungsanmeldung_id;
$obj->punkte = $row->punkte;
$this->result[] = $obj;
}
@@ -400,6 +414,7 @@ class pruefung extends basis_db
$obj->lehrveranstaltung_bezeichnung = $row->lehrveranstaltung_bezeichnung;
$obj->lehrveranstaltung_id = $row->lehrveranstaltung_id;
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$obj->punkte = $row->punkte;
$this->result[] = $obj;
}
@@ -419,41 +434,42 @@ class pruefung extends basis_db
*/
public function getPruefungByAnmeldung($pruefungsanmeldung_id)
{
if(!is_numeric($pruefungsanmeldung_id))
{
$this->errormsg = 'pruefungsanmeldung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_numeric($pruefungsanmeldung_id))
{
$this->errormsg = 'pruefungsanmeldung_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM lehre.tbl_pruefung WHERE pruefungsanmeldung_id=".$this->db_add_param($pruefungsanmeldung_id).";";
$qry = "SELECT * FROM lehre.tbl_pruefung WHERE pruefungsanmeldung_id=".$this->db_add_param($pruefungsanmeldung_id).";";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefung_id = $row->pruefung_id;
$this->lehreinheit_id=$row->lehreinheit_id;
$this->student_uid=$row->student_uid;
$this->mitarbeiter_uid=$row->mitarbeiter_uid;
$this->note=$row->note;
$this->pruefungstyp_kurzbz=$row->pruefungstyp_kurzbz;
$this->datum=$row->datum;
$this->anmerkung=$row->anmerkung;
$this->insertamum=$row->insertamum;
$this->insertvon=$row->insertvon;
$this->updateamum=$row->updateamum;
$this->updatevon=$row->updatevon;
$this->ext_id=$row->ext_id;
$this->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
}
}
else
{
$this->errormsg = 'Datensatz konnte nicht geladen werden';
return false;
}
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
$this->pruefung_id = $row->pruefung_id;
$this->lehreinheit_id=$row->lehreinheit_id;
$this->student_uid=$row->student_uid;
$this->mitarbeiter_uid=$row->mitarbeiter_uid;
$this->note=$row->note;
$this->pruefungstyp_kurzbz=$row->pruefungstyp_kurzbz;
$this->datum=$row->datum;
$this->anmerkung=$row->anmerkung;
$this->insertamum=$row->insertamum;
$this->insertvon=$row->insertvon;
$this->updateamum=$row->updateamum;
$this->updatevon=$row->updatevon;
$this->ext_id=$row->ext_id;
$this->pruefungsanmeldung_id=$row->pruefungsanmeldung_id;
$this->punkte = $row->punkte;
}
}
else
{
$this->errormsg = 'Datensatz konnte nicht geladen werden';
return false;
}
return true;
return true;
}
}
?>
+3 -1
View File
@@ -166,6 +166,8 @@ $this->phrasen['benotungstool/errechneteGesamtnote']='Errechnete Gesamtnote';
$this->phrasen['benotungstool/mussPositivSein']='* muss positiv sein';
$this->phrasen['benotungstool/eingetrageneNoten']='Eingetragene Noten';
$this->phrasen['benotungstool/zeunis']='Zeugnis';
$this->phrasen['benotungstool/handbuch']='Handbuch';
$this->phrasen['benotungstool/handbuch']='Handbuch';
$this->phrasen['benotungstool/punkte']='Punkte';
$this->phrasen['benotungstool/importAnweisung']='Kopieren Sie die Spalten Kennzahl und Note aus der Notenliste und fügen Sie diese in folgendes Feld ein';
$this->phrasen['benotungstool/pruefung']='Prüfung';
?>
+2
View File
@@ -2,4 +2,6 @@
$this->phrasen['gesamtnote/wollenSieWirklichLoeschen']='Wollen Sie die markierten Einträge wirklich löschen? Alle bereits eingetragenen Kreuzerl gehen dabei verloren';
$this->phrasen['gesamtnote/noteUnveraendert']='Note unverändert';
$this->phrasen['gesamtnote/passwortFalsch']='Fehler beim Freigeben der Noten: Das Uebergebene Passwort ist falsch';
$this->phrasen['gesamtnote/notenschluesselanzeigen']='Notenschlüssel anzeigen';
$this->phrasen['gesamtnote/keinNotenschluesselvorhanden']='Für diese Lehrveranstaltung ist kein Notenschluessel definiert';
?>
+2
View File
@@ -167,4 +167,6 @@ $this->phrasen['benotungstool/mussPositivSein']='* must be positive';
$this->phrasen['benotungstool/eingetrageneNoten']='Submitted Grades';
$this->phrasen['benotungstool/zeunis']='Transcript';
$this->phrasen['benotungstool/handbuch']='Handbook';
$this->phrasen['benotungstool/punkte']='Points';
$this->phrasen['benotungstool/importAnweisung']='Kopieren Sie die Spalten Kennzahl und Note aus der Notenliste und fügen Sie diese in folgendes Feld ein';
?>
+14 -5
View File
@@ -24,14 +24,20 @@ header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
require_once('../config/vilesci.config.inc.php');
require_once('../include/pruefung.class.php');
require_once('../include/datum.class.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if(!$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('admin'))
die('Sie haben keine Berechtigung für diese Seite');
if(isset($_GET['student_uid']))
$student_uid = $_GET['student_uid'];
@@ -49,6 +55,8 @@ $pruefung = new pruefung();
$rdf_url='http://www.technikum-wien.at/pruefung';
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
echo '
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
@@ -92,10 +100,11 @@ function draw_rdf($row)
<PRUEFUNG:pruefungstyp_beschreibung><![CDATA['.$row->pruefungstyp_beschreibung.']]></PRUEFUNG:pruefungstyp_beschreibung>
<PRUEFUNG:lehrveranstaltung_id><![CDATA['.$row->lehrveranstaltung_id.']]></PRUEFUNG:lehrveranstaltung_id>
<PRUEFUNG:studiensemester_kurzbz><![CDATA['.$row->studiensemester_kurzbz.']]></PRUEFUNG:studiensemester_kurzbz>
<PRUEFUNG:punkte><![CDATA['.($row->punkte!=''?(float)$row->punkte:'').']]></PRUEFUNG:punkte>
</RDF:Description>
</RDF:li>
';
}
?>
</RDF:Seq>
</RDF:RDF>
</RDF:RDF>
+1 -1
View File
@@ -115,7 +115,7 @@ foreach ($obj->result as $row)
<NOTE:studiengang_kz><![CDATA['.$benutzer->studiengang_kz.']]></NOTE:studiengang_kz>
<NOTE:studiengang_lv><![CDATA['.$stg_arr[$lv_obj->studiengang_kz].']]></NOTE:studiengang_lv>
<NOTE:student_semester><![CDATA['.$benutzer->semester.']]></NOTE:student_semester>
<NOTE:punkte><![CDATA['.$row->punkte.']]></NOTE:punkte>
<NOTE:punkte><![CDATA['.($row->punkte!=''?(float)$row->punkte:'').']]></NOTE:punkte>
</RDF:Description>
</RDF:li>';
}
+12 -1
View File
@@ -2576,6 +2576,17 @@ if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berecht
}
}
// Punkte bei Pruefungen
if(!$result = @$db->db_query("SELECT punkte FROM lehre.tbl_pruefung LIMIT 1"))
{
$qry = "ALTER TABLE lehre.tbl_pruefung ADD COLUMN punkte numeric(8,4)";
if(!$db->db_query($qry))
echo '<strong>lehre.tbl_pruefung '.$db->db_last_error().'</strong><br>';
else
echo 'lehre.tbl_pruefung: Spalte Punkte hinzugefuegt!<br>';
}
echo '<br><br><br>';
$tabellen=array(
@@ -2697,7 +2708,7 @@ $tabellen=array(
"lehre.tbl_projektarbeit" => array("projektarbeit_id","projekttyp_kurzbz","titel","lehreinheit_id","student_uid","firma_id","note","punkte","beginn","ende","faktor","freigegeben","gesperrtbis","stundensatz","gesamtstunden","themenbereich","anmerkung","updateamum","updatevon","insertamum","insertvon","ext_id","titel_english","seitenanzahl","abgabedatum","kontrollschlagwoerter","schlagwoerter","schlagwoerter_en","abstract", "abstract_en", "sprache"),
"lehre.tbl_projektbetreuer" => array("person_id","projektarbeit_id","betreuerart_kurzbz","note","faktor","name","punkte","stunden","stundensatz","updateamum","updatevon","insertamum","insertvon","ext_id","vertrag_id"),
"lehre.tbl_projekttyp" => array("projekttyp_kurzbz","bezeichnung"),
"lehre.tbl_pruefung" => array("pruefung_id","lehreinheit_id","student_uid","mitarbeiter_uid","note","pruefungstyp_kurzbz","datum","anmerkung","insertamum","insertvon","updateamum","updatevon","ext_id","pruefungsanmeldung_id","vertrag_id"),
"lehre.tbl_pruefung" => array("pruefung_id","lehreinheit_id","student_uid","mitarbeiter_uid","note","pruefungstyp_kurzbz","datum","anmerkung","insertamum","insertvon","updateamum","updatevon","ext_id","pruefungsanmeldung_id","vertrag_id", "punkte"),
"lehre.tbl_pruefungstyp" => array("pruefungstyp_kurzbz","beschreibung","abschluss"),
"lehre.tbl_studienordnung" => array("studienordnung_id","studiengang_kz","version","gueltigvon","gueltigbis","bezeichnung","ects","studiengangbezeichnung","studiengangbezeichnung_englisch","studiengangkurzbzlang","akadgrad_id","insertamum","insertvon","updateamum","updatevon","ext_id"),
"lehre.tbl_studienordnung_semester" => array("studienordnung_semester_id","studienordnung_id","studiensemester_kurzbz","semester"),