From 98054eac83403561efe7dbfbf262cc71bb412259 Mon Sep 17 00:00:00 2001 From: Gerald Raab Date: Wed, 30 Jan 2008 13:25:45 +0000 Subject: [PATCH] --- .../benotungstool/lvgesamtnoteverwalten.php | 982 +++++++++--------- .../benotungstool/nachpruefungeintragen.php | 4 +- include/pruefung.class.php | 10 +- 3 files changed, 500 insertions(+), 496 deletions(-) diff --git a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php index 148769589..256051052 100644 --- a/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php +++ b/cis/private/lehre/benotungstool/lvgesamtnoteverwalten.php @@ -30,11 +30,11 @@ require_once('../../../../include/benutzerberechtigung.class.php'); require_once('../../../../include/uebung.class.php'); require_once('../../../../include/beispiel.class.php'); require_once('../../../../include/studentnote.class.php'); -require_once('../../../../include/datum.class.php'); +require_once('../../../../include/datum.class.php'); require_once('../../../../include/legesamtnote.class.php'); -require_once('../../../../include/lvgesamtnote.class.php'); -require_once('../../../../include/zeugnisnote.class.php'); -require_once('../../../../include/pruefung.class.php'); +require_once('../../../../include/lvgesamtnote.class.php'); +require_once('../../../../include/zeugnisnote.class.php'); +require_once('../../../../include/pruefung.class.php'); ?> @@ -42,20 +42,20 @@ require_once('../../../../include/pruefung.class.php'); -Kreuzerltool - + - @@ -357,7 +357,7 @@ foreach($stsem_obj->studiensemester as $studiensemester) $stsem_content.= "\n"; //Lehreinheiten laden -if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz)) +if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz)) { $qry = "SELECT distinct tbl_lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz FROM lehre.tbl_lehreinheit, lehre.tbl_lehrfach, lehre.tbl_lehreinheitmitarbeiter WHERE tbl_lehreinheit.lehrveranstaltung_id='$lvid' AND @@ -448,50 +448,50 @@ if($lehreinheit_id=='') //Menue include("menue.inc.php"); - -// lvgesamtnote für studenten speichern -if (isset($_REQUEST["submit"]) && ($_POST["student_uid"] != '')){ - - $jetzt = date("Y-m-d H:i:s"); - $student_uid = $_POST["student_uid"]; - $lvid = $_REQUEST["lvid"]; - $lvgesamtnote = new lvgesamtnote($conn); - if (!$lvgesamtnote->load($lvid, $student_uid, $stsem)) - { - $lvgesamtnote->student_uid = $student_uid; - $lvgesamtnote->lehrveranstaltung_id = $lvid; - $lvgesamtnote->studiensemester_kurzbz = $stsem; - $lvgesamtnote->note = $_POST["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; - } - else - { - $lvgesamtnote->note = $_POST["note"]; - $lvgesamtnote->benotungsdatum = $jetzt; - $lvgesamtnote->updateamum = $jetzt; - $lvgesamtnote->updatevon = $user; - $new = false; - } - if (!$lvgesamtnote->save($new)) - echo "".$lvgesamtnote->errormsg.""; -} - -// eingetragene lv-gesamtnoten freigeben -if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1)) -{ - $jetzt = date("Y-m-d H:i:s"); - $neuenoten = 0; - $studlist = ""; - + +// lvgesamtnote für studenten speichern +if (isset($_REQUEST["submit"]) && ($_POST["student_uid"] != '')){ + + $jetzt = date("Y-m-d H:i:s"); + $student_uid = $_POST["student_uid"]; + $lvid = $_REQUEST["lvid"]; + $lvgesamtnote = new lvgesamtnote($conn); + if (!$lvgesamtnote->load($lvid, $student_uid, $stsem)) + { + $lvgesamtnote->student_uid = $student_uid; + $lvgesamtnote->lehrveranstaltung_id = $lvid; + $lvgesamtnote->studiensemester_kurzbz = $stsem; + $lvgesamtnote->note = $_POST["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; + } + else + { + $lvgesamtnote->note = $_POST["note"]; + $lvgesamtnote->benotungsdatum = $jetzt; + $lvgesamtnote->updateamum = $jetzt; + $lvgesamtnote->updatevon = $user; + $new = false; + } + if (!$lvgesamtnote->save($new)) + echo "".$lvgesamtnote->errormsg.""; +} + +// eingetragene lv-gesamtnoten freigeben +if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1)) +{ + $jetzt = date("Y-m-d H:i:s"); + $neuenoten = 0; + $studlist = "
Mat. Nr.NachnameVornameNote
"; + // $qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='$lehreinheit_id' ORDER BY semester, verband, gruppe, gruppe_kurzbz"; // if($result_grp = pg_query($conn, $qry)) @@ -512,70 +512,70 @@ if (isset($_REQUEST["freigabe"]) and ($_REQUEST["freigabe"] == 1)) ($row_grp->gruppe!=''?" AND trim(gruppe)=trim('$row_grp->gruppe')":''). " ORDER BY nachname, vorname"; } -*/ - // studentenquery +*/ + // studentenquery $qry_stud = "SELECT DISTINCT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehrveranstaltung_id = '".$lvid."' ORDER BY nachname, vorname "; if($result_stud = pg_query($conn, $qry_stud)) { - $i=1; + $i=1; while($row_stud = pg_fetch_object($result_stud)) - { - $lvgesamtnote = new lvgesamtnote($conn); - if ($lvgesamtnote->load($lvid,$row_stud->uid,$stsem)) - { - if ($lvgesamtnote->benotungsdatum > $lvgesamtnote->freigabedatum) - { - $lvgesamtnote->freigabedatum = $jetzt; - $lvgesamtnote->freigabevon_uid = $user; - $lvgesamtnote->save($new=null); - $studlist .= ""; - $neuenoten++; - } + { + $lvgesamtnote = new lvgesamtnote($conn); + if ($lvgesamtnote->load($lvid,$row_stud->uid,$stsem)) + { + if ($lvgesamtnote->benotungsdatum > $lvgesamtnote->freigabedatum) + { + $lvgesamtnote->freigabedatum = $jetzt; + $lvgesamtnote->freigabevon_uid = $user; + $lvgesamtnote->save($new=null); + $studlist .= ""; + $neuenoten++; + } } - } + } } // } -// } - $studlist .= "
Mat. Nr.NachnameVornameNote
".$row_stud->matrikelnr."".$row_stud->nachname."".$row_stud->vorname."".$lvgesamtnote->note."
".$row_stud->matrikelnr."".$row_stud->nachname."".$row_stud->vorname."".$lvgesamtnote->note."
"; - //mail an assistentin und den user selber verschicken - if ($neuenoten > 0) - { - $lv = new lehrveranstaltung($conn, $lvid); - $sg = new studiengang($conn, $lv->studiengang_kz); - $debug_adressen = $user."@technikum-wien.at"; - $adressen = $sg->email.", ".$user."@technikum-wien.at"; - - $freigeber = "".strtoupper($user).""; - mail($adressen,"Notenfreigabe ".$lv->bezeichnung,"".$lv->bezeichnung." - ".$stsem." (".$lv->semester.". Sem.)

Benutzer ".$freigeber." hat die LV-Noten für folgende Studenten freigegeben:

".$studlist."
Mail wurde verschickt an: ".$adressen."","From: vilesci@technikum-wien.at\nContent-Type: text/html\n"); - } +// } + $studlist .= ""; + //mail an assistentin und den user selber verschicken + if ($neuenoten > 0) + { + $lv = new lehrveranstaltung($conn, $lvid); + $sg = new studiengang($conn, $lv->studiengang_kz); + $debug_adressen = $user."@technikum-wien.at"; + $adressen = $sg->email.", ".$user."@technikum-wien.at"; + + $freigeber = "".strtoupper($user).""; + mail($adressen,"Notenfreigabe ".$lv->bezeichnung,"".$lv->bezeichnung." - ".$stsem." (".$lv->semester.". Sem.)

Benutzer ".$freigeber." hat die LV-Noten für folgende Studenten freigegeben:

".$studlist."
Mail wurde verschickt an: ".$adressen."","From: vilesci@technikum-wien.at\nContent-Type: text/html\n"); + } + + + +} - - -} - -echo "

LV Gesamtnote verwalten

"; +echo "

LV Gesamtnote verwalten

"; echo "Noten: 1-5, 7 (nicht beurteilt), 8 (teilgenommen)"; - -// alle pruefungen für die LV holen -$studpruef_arr = array(); -$pr_all = new Pruefung($conn); -if ($pr_all->getPruefungenLV($lvid,"Termin2")) -{ - if ($pr_all->result) - { - 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]["datum"] = $pruefung->datum; - //echo print_r($studpruef_arr[$pruefung->student_uid]); - } - } -} - - - - + +// alle pruefungen für die LV holen +$studpruef_arr = array(); +$pr_all = new Pruefung($conn); +if ($pr_all->getPruefungenLV($lvid,"Termin2",$stsem)) +{ + if ($pr_all->result) + { + 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]["datum"] = $pruefung->datum; + //echo print_r($studpruef_arr[$pruefung->student_uid]); + } + } +} + + + + //Studentenliste echo " @@ -591,28 +591,28 @@ echo " echo "   - + UID Nachname Vorname - LE-Noten (LE-ID) - - LV-Note -
- + LE-Noten (LE-ID) + + LV-Note + +
- Zeugnisnote + Zeugnisnote Nachprüfung - + -   +  
DatumNote
  "; -/* +/* if($row_grp->gruppe_kurzbz!='') { echo " @@ -634,8 +634,8 @@ echo " ($row_grp->gruppe!=''?" AND trim(gruppe)=trim('$row_grp->gruppe')":''). " ORDER BY nachname, vorname"; } -*/ - // studentenquery +*/ + // studentenquery $qry_stud = "SELECT DISTINCT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehrveranstaltung_id = '".$lvid."' ORDER BY nachname, vorname "; if($result_stud = pg_query($conn, $qry_stud)) { @@ -643,158 +643,158 @@ echo " while($row_stud = pg_fetch_object($result_stud)) { - //$studentnote = new studentnote($conn,$lehreinheit_id,$stsem,$row_stud->uid); - - - + //$studentnote = new studentnote($conn,$lehreinheit_id,$stsem,$row_stud->uid); + + + /* - $legesamtnote = new legesamtnote($conn, $lehreinheit_id); - - if (!$legesamtnote->load($row_stud->uid,$lehreinheit_id)) - { - $note_le = null; - } - else - $note_le = $legesamtnote->note; - if ($lvgesamtnote = new lvgesamtnote($conn, $lvid,$row_stud->uid,$stsem)) - { - $note_lv = $lvgesamtnote->note; - } - else - $note_lv = null; - - if ($note_lv) - $note_vorschlag = $note_lv; - else - $note_vorschlag = $note_le; - */ - + $legesamtnote = new legesamtnote($conn, $lehreinheit_id); + + if (!$legesamtnote->load($row_stud->uid,$lehreinheit_id)) + { + $note_le = null; + } + else + $note_le = $legesamtnote->note; + if ($lvgesamtnote = new lvgesamtnote($conn, $lvid,$row_stud->uid,$stsem)) + { + $note_lv = $lvgesamtnote->note; + } + else + $note_lv = null; + + if ($note_lv) + $note_vorschlag = $note_lv; + else + $note_vorschlag = $note_le; + */ + echo " - + $row_stud->uid $row_stud->nachname $row_stud->vorname"; - - - $note_les_str = ''; - $le_anz = 0; - $note_le = 0; - $le = new lehreinheit($conn); - $le->load_lehreinheiten($lvid, $stsem); - foreach($le->lehreinheiten as $l) - { - $legesamtnote = new legesamtnote($conn, $l->lehreinheit_id); - - if (!$legesamtnote->load($row_stud->uid,$l->lehreinheit_id)) - { - //$note_les_str .= "- (".$l->lehreinheit_id.")"; - } - else - { - $note_le += $legesamtnote->note; - $le_anz += 1; - if ($legesamtnote->note == 5) - $leneg = " style='color:red; font-weight:bold'"; - else - $leneg = ""; - $note_les_str .= "".$legesamtnote->note." (".$l->lehreinheit_id.") "; - } - } - - if ($lvgesamtnote = new lvgesamtnote($conn, $lvid,$row_stud->uid,$stsem)) - { - $note_lv = $lvgesamtnote->note; - } - else - $note_lv = null; - - if ($note_lv) - $note_vorschlag = $note_lv; - else if ($le_anz > 0) - $note_vorschlag = round($note_le/$le_anz); - else - $note_vorschlag = null; - if ($zeugnisnote = new zeugnisnote($conn, $lvid, $row_stud->uid, $stsem)) - $znote = $zeugnisnote->note; - else - $znote = null; - - - echo "$note_les_str"; - if (key_exists($row_stud->uid,$studpruef_arr)) - $hide = "style='visibility:hidden;'"; - else - $hide = "style='visibility:visible;'"; - echo "
"; - - if ($note_lv == 5) - $negmarkier = " style='color:red; font-weight:bold;'"; - else - $negmarkier = ""; - - echo "$note_lv"; - - //status ////////////////////////////////////////////////////////////////////////////////// - echo ""; - if (!$lvgesamtnote->freigabedatum) - echo ""; - else if ($lvgesamtnote->benotungsdatum > $lvgesamtnote->freigabedatum) - echo ""; - else - echo ""; - - echo ""; - if (($znote) and ($note_lv != $znote)) - $stylestr = " style='color:red; border-color:red; border-style:solid; border-width:1px;'"; - else - $stylestr =""; - echo "".$znote.""; - - // prüfungen /////////////////////////////////////////////////////////////////////////// - //$pr = new pruefung($conn); - //$pr->getPruefungen($row_stud->uid, "Termin2", null); - //if (count($pr->result)>0) - if (key_exists($row_stud->uid,$studpruef_arr)) - { - - //$pr_datum = $pr->result[0]->datum; - //$pr_note = $pr->result[0]->note; - //$pr_le_id = $pr->result[0]->lehreinheit_id; - - //echo "".$pr_datum.""; - //echo "
"; - echo ""; - echo ""; - echo ""; - $le_id_arr = array(); - $le_id_arr = array_keys($studpruef_arr[$row_stud->uid]); - foreach ($le_id_arr as $le_id_stud) - { - $pr_note = $studpruef_arr[$row_stud->uid][$le_id_stud]["note"]; - $pr_datum = $studpruef_arr[$row_stud->uid][$le_id_stud]["datum"]; - $pr_le_id = $le_id_stud; - - echo ""; - } - echo "
"; - echo $pr_datum."".$pr_note.""; - echo ""; - echo "
"; - echo "
"; - //echo "
"; - echo ""; - //echo "
"; - } - else - { - if ($note_lv) - echo ""; - else - echo ""; - } - + + + $note_les_str = ''; + $le_anz = 0; + $note_le = 0; + $le = new lehreinheit($conn); + $le->load_lehreinheiten($lvid, $stsem); + foreach($le->lehreinheiten as $l) + { + $legesamtnote = new legesamtnote($conn, $l->lehreinheit_id); + + if (!$legesamtnote->load($row_stud->uid,$l->lehreinheit_id)) + { + //$note_les_str .= "- (".$l->lehreinheit_id.")"; + } + else + { + $note_le += $legesamtnote->note; + $le_anz += 1; + if ($legesamtnote->note == 5) + $leneg = " style='color:red; font-weight:bold'"; + else + $leneg = ""; + $note_les_str .= "".$legesamtnote->note." (".$l->lehreinheit_id.") "; + } + } + + if ($lvgesamtnote = new lvgesamtnote($conn, $lvid,$row_stud->uid,$stsem)) + { + $note_lv = $lvgesamtnote->note; + } + else + $note_lv = null; + + if ($note_lv) + $note_vorschlag = $note_lv; + else if ($le_anz > 0) + $note_vorschlag = round($note_le/$le_anz); + else + $note_vorschlag = null; + if ($zeugnisnote = new zeugnisnote($conn, $lvid, $row_stud->uid, $stsem)) + $znote = $zeugnisnote->note; + else + $znote = null; + + + echo "$note_les_str"; + if (key_exists($row_stud->uid,$studpruef_arr)) + $hide = "style='visibility:hidden;'"; + else + $hide = "style='visibility:visible;'"; + echo "
"; + + if ($note_lv == 5) + $negmarkier = " style='color:red; font-weight:bold;'"; + else + $negmarkier = ""; + echo "$note_lv"; + + //status ////////////////////////////////////////////////////////////////////////////////// + echo ""; + if (!$lvgesamtnote->freigabedatum) + echo ""; + else if ($lvgesamtnote->benotungsdatum > $lvgesamtnote->freigabedatum) + echo ""; + else + echo ""; + + echo ""; + if (($znote) and ($note_lv != $znote)) + $stylestr = " style='color:red; border-color:red; border-style:solid; border-width:1px;'"; + else + $stylestr =""; + echo "".$znote.""; + + // prüfungen /////////////////////////////////////////////////////////////////////////// + //$pr = new pruefung($conn); + //$pr->getPruefungen($row_stud->uid, "Termin2", null); + //if (count($pr->result)>0) + if (key_exists($row_stud->uid,$studpruef_arr)) + { + + //$pr_datum = $pr->result[0]->datum; + //$pr_note = $pr->result[0]->note; + //$pr_le_id = $pr->result[0]->lehreinheit_id; + + //echo "".$pr_datum.""; + //echo "
"; + echo ""; + echo ""; + echo ""; + $le_id_arr = array(); + $le_id_arr = array_keys($studpruef_arr[$row_stud->uid]); + foreach ($le_id_arr as $le_id_stud) + { + $pr_note = $studpruef_arr[$row_stud->uid][$le_id_stud]["note"]; + $pr_datum = $studpruef_arr[$row_stud->uid][$le_id_stud]["datum"]; + $pr_le_id = $le_id_stud; + + echo ""; + } + echo "
"; + echo $pr_datum."".$pr_note.""; + echo ""; + echo "
"; + echo "
"; + //echo "
"; + echo ""; + //echo "
"; + } + else + { + if ($note_lv) + echo ""; + else + echo ""; + } + + echo ""; $i++; } @@ -806,8 +806,8 @@ echo ""; ?> - - - + + + diff --git a/cis/private/lehre/benotungstool/nachpruefungeintragen.php b/cis/private/lehre/benotungstool/nachpruefungeintragen.php index 71ae81b5b..e0700c3c4 100755 --- a/cis/private/lehre/benotungstool/nachpruefungeintragen.php +++ b/cis/private/lehre/benotungstool/nachpruefungeintragen.php @@ -128,7 +128,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){ $pr = new Pruefung($conn); - if($pr->getPruefungen($student_uid, "Termin1", $lvid)) + if($pr->getPruefungen($student_uid, "Termin1", $lvid, $stsem)) { if ($pr->result) $termin1 = 1; @@ -166,7 +166,7 @@ if (isset($_REQUEST["submit"]) && ($_REQUEST["student_uid"] != '') ){ $prTermin2 = new Pruefung($conn); $pr_2 = new Pruefung($conn); - if ($prTermin2->getPruefungen($student_uid, "Termin2", $lvid)) + if ($prTermin2->getPruefungen($student_uid, "Termin2", $lvid, $stsem)) { if ($prTermin2->result) { diff --git a/include/pruefung.class.php b/include/pruefung.class.php index 4fda2fbbf..e01ed189a 100644 --- a/include/pruefung.class.php +++ b/include/pruefung.class.php @@ -320,7 +320,7 @@ class pruefung // * @param student_uid // * @return true wenn ok, false wenn Fehler // ***************************************** - function getPruefungen($student_uid, $pruefungstyp=null,$lv_id=null) + function getPruefungen($student_uid, $pruefungstyp=null,$lv_id=null,$stsem=null) { $qry = "SELECT tbl_pruefung.*, tbl_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung, tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_note.bezeichnung as note_bezeichnung, tbl_pruefungstyp.beschreibung as typ_beschreibung, tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz @@ -334,7 +334,9 @@ class pruefung $qry .= " AND tbl_pruefungstyp.pruefungstyp_kurzbz = '".$pruefungstyp."'"; if ($lv_id != null) $qry .= " AND tbl_lehrveranstaltung.lehrveranstaltung_id = '".$lv_id."'"; - + if ($stsem != null) + $qry .= " AND tbl_lehreinheit.studiensemester_kurzbz = '".$stsem."'"; + $qry .= " ORDER BY datum DESC"; if($result = pg_query($this->conn, $qry)) { @@ -371,7 +373,7 @@ class pruefung } } - function getPruefungenLV($lv_id, $pruefungstyp=null) + function getPruefungenLV($lv_id, $pruefungstyp=null, $stsem=null) { $qry = "SELECT tbl_pruefung.*, tbl_lehrveranstaltung.bezeichnung as lehrveranstaltung_bezeichnung, tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_note.bezeichnung as note_bezeichnung, tbl_pruefungstyp.beschreibung as typ_beschreibung, tbl_lehreinheit.studiensemester_kurzbz as studiensemester_kurzbz @@ -384,6 +386,8 @@ class pruefung $qry .= " AND tbl_pruefungstyp.pruefungstyp_kurzbz = '".$pruefungstyp."'"; if ($lv_id != null) $qry .= " AND tbl_lehrveranstaltung.lehrveranstaltung_id = '".$lv_id."'"; + if ($stsem != null) + $qry .= " AND tbl_lehreinheit.studiensemester_kurzbz = '".$stsem."'"; $qry .= " ORDER BY datum DESC"; if($result = pg_query($this->conn, $qry))