diff --git a/cis/private/lehre/benotungstool/studentenansicht.php b/cis/private/lehre/benotungstool/studentenansicht.php index 4cc984704..0392bc8eb 100644 --- a/cis/private/lehre/benotungstool/studentenansicht.php +++ b/cis/private/lehre/benotungstool/studentenansicht.php @@ -1,223 +1,221 @@ -, - * Andreas Oesterreicher and - * Rudolf Hangl . - */ -// ******************** -// * Studentenansicht fuers Kreuzerltool -// ******************** - -require_once('../../../config.inc.php'); -require_once('../../../../include/functions.inc.php'); -require_once('../../../../include/lehrveranstaltung.class.php'); -require_once('../../../../include/studiengang.class.php'); -require_once('../../../../include/studiensemester.class.php'); -require_once('../../../../include/lehreinheit.class.php'); -require_once('../../../../include/benutzerberechtigung.class.php'); -require_once('../../../../include/uebung.class.php'); -require_once('../../../../include/beispiel.class.php'); -require_once('../../../../include/datum.class.php'); -require_once('../../../../include/studentnote.class.php'); -require_once('../../../../include/legesamtnote.class.php'); -require_once('../../../../include/lvgesamtnote.class.php'); -require_once('../../../../include/zeugnisnote.class.php'); -include('functions.inc.php'); - -if(!$conn = pg_pconnect(CONN_STRING)) - die('Fehler beim oeffnen der Datenbankverbindung'); - -$user = get_uid(); -//$user = 'if06b172'; -//$user = 'if06b144'; -$lektorenansicht = 0; -if(check_lektor($user, $conn) and $_GET["uid"] != "") -{ - $rights = new benutzerberechtigung($conn); - $rights->getBerechtigungen($user); - if(!check_lektor_lehreinheit($conn, $user, $_GET["lehreinheit_id"]) && !$rights->isBerechtigt('admin',0)) +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ +// ******************** +// * Studentenansicht fuers Kreuzerltool +// ******************** + +require_once('../../../config.inc.php'); +require_once('../../../../include/functions.inc.php'); +require_once('../../../../include/lehrveranstaltung.class.php'); +require_once('../../../../include/studiengang.class.php'); +require_once('../../../../include/studiensemester.class.php'); +require_once('../../../../include/lehreinheit.class.php'); +require_once('../../../../include/benutzerberechtigung.class.php'); +require_once('../../../../include/uebung.class.php'); +require_once('../../../../include/beispiel.class.php'); +require_once('../../../../include/datum.class.php'); +require_once('../../../../include/studentnote.class.php'); +require_once('../../../../include/legesamtnote.class.php'); +require_once('../../../../include/lvgesamtnote.class.php'); +require_once('../../../../include/zeugnisnote.class.php'); +include('functions.inc.php'); + +if(!$conn = pg_pconnect(CONN_STRING)) + die('Fehler beim oeffnen der Datenbankverbindung'); + +$user = get_uid(); +//$user = 'if06b172'; +//$user = 'if06b144'; +$lektorenansicht = 0; +if(check_lektor($user, $conn) and $_GET["uid"] != "") +{ + $rights = new benutzerberechtigung($conn); + $rights->getBerechtigungen($user); + if(!check_lektor_lehreinheit($conn, $user, $_GET["lehreinheit_id"]) && !$rights->isBerechtigt('admin',0)) die("Sie haben keine Berechtigung für diese Lehreinheit"); - $lektorenansicht = 1; - $user = $_GET["uid"]; -} - - - -$rechte = new benutzerberechtigung($conn); -$rechte->getBerechtigungen($user); - -if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id - $lvid = $_GET['lvid']; -else - die('Fehlerhafte Parameteruebergabe'); - -if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id - $lehreinheit_id = $_GET['lehreinheit_id']; -else - $lehreinheit_id = ''; - - -//Laden der Lehrveranstaltung -$lv_obj = new lehrveranstaltung($conn); -if(!$lv_obj->load($lvid)) - die($lv_obj->errormsg); - -//Studiengang laden -$stg_obj = new studiengang($conn,$lv_obj->studiengang_kz); - -if(isset($_GET['stsem'])) - $stsem = $_GET['stsem']; -else - $stsem = ''; - -//Vars -$datum_obj = new datum(); - -$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:''); - -//Abgabedatei ausliefern -if (isset($_GET["download_abgabe"])){ - $file=$_GET["download_abgabe"]; - $uebung_id = $_GET["uebung_id"]; - $ueb = new uebung($conn); - $ueb->load_studentuebung($user, $uebung_id); - $ueb->load_abgabe($ueb->abgabe_id); - $filename = BENOTUNGSTOOL_PATH."abgabe/".$ueb->abgabedatei; - header('Content-Type: application/octet-stream'); - header('Content-disposition: attachment; filename="'.$file.'"'); - readfile($filename); - exit; -} - -//Angabedatei ausliefern -if (isset($_GET["download"])){ - $file=$_GET["download"]; - $uebung_id = $_GET["uebung_id"]; - $ueb = new uebung($conn); - $ueb->load($uebung_id); - $filename = "/documents/benotungstool/angabe/".$ueb->angabedatei; - header('Content-Type: application/octet-stream'); - header('Content-disposition: attachment; filename="'.$file.'"'); - readfile($filename); - exit; -} - -?> - - - - - - -Kreuzerltool - - - - - - -load_studentuebung($user, $uebung_id); - if (!$ueb->delete_abgabe($ueb->abgabe_id)) - echo $ueb->errormsg; - -} -//echo $_FILES["abgabedatei"]; -//if (isset($_FILES["abgabedatei"])) + $lektorenansicht = 1; + $user = $_GET["uid"]; +} + +#$rechte = new benutzerberechtigung($conn); +#$rechte->getBerechtigungen($user); + +if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id + $lvid = $_GET['lvid']; +else + die('Fehlerhafte Parameteruebergabe'); + +if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehreinheit_id + $lehreinheit_id = $_GET['lehreinheit_id']; +else + $lehreinheit_id = ''; + + +//Laden der Lehrveranstaltung +$lv_obj = new lehrveranstaltung($conn); +if(!$lv_obj->load($lvid)) + die($lv_obj->errormsg); + +//Studiengang laden +$stg_obj = new studiengang($conn,$lv_obj->studiengang_kz); + +if(isset($_GET['stsem'])) + $stsem = $_GET['stsem']; +else + $stsem = ''; + +//Vars +$datum_obj = new datum(); + +$uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:''); + +//Abgabedatei ausliefern +if (isset($_GET["download_abgabe"])){ + $file=$_GET["download_abgabe"]; + $uebung_id = $_GET["uebung_id"]; + $ueb = new uebung($conn); + $ueb->load_studentuebung($user, $uebung_id); + $ueb->load_abgabe($ueb->abgabe_id); + $filename = BENOTUNGSTOOL_PATH."abgabe/".$ueb->abgabedatei; + header('Content-Type: application/octet-stream'); + header('Content-disposition: attachment; filename="'.$file.'"'); + readfile($filename); + exit; +} + +//Angabedatei ausliefern +if (isset($_GET["download"])){ + $file=$_GET["download"]; + $uebung_id = $_GET["uebung_id"]; + $ueb = new uebung($conn); + $ueb->load($uebung_id); + $filename = "/documents/benotungstool/angabe/".$ueb->angabedatei; + header('Content-Type: application/octet-stream'); + header('Content-disposition: attachment; filename="'.$file.'"'); + readfile($filename); + exit; +} + +?> + + + + + + +Kreuzerltool + + + + + + +load_studentuebung($user, $uebung_id); + if (!$ueb->delete_abgabe($ueb->abgabe_id)) + echo $ueb->errormsg; + +} +//echo $_FILES["abgabedatei"]; +//if (isset($_FILES["abgabedatei"])) if (isset($_POST["abgabe"])) -{ +{ $abgabedatei_up = $_FILES["abgabedatei"]["tmp_name"]; - $abgabe_anmerkung = $_POST["abgabe_anmerkung"]; - - if ($abgabedatei_up) - { - //echo $abgabedatei_up; - $datum = date('Y-m-d H:i:s'); - $datumstr = ereg_replace(" ","_",$datum); - $name_up = pathinfo($_FILES["abgabedatei"]["name"]); - $name_neu = makeUploadName($conn, $which='abgabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem,$uid=$user, $date=$datumstr); - $abgabedatei = $name_neu.".".$name_up["extension"]; - $abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei; - - $uebung_obj = new uebung($conn); - $uebung_obj->load_studentuebung($user, $uebung_id); - - if ($uebung_obj->errormsg != "") - { - $uebung_obj->student_uid = $user; - $uebung_obj->mitarbeiter_uid = null; - $uebung_obj->abgabe_id = null; - $uebung_obj->uebung_id = $uebung_id; - $uebung_obj->note = null; - $uebung_obj->mitarbeitspunkte = null; - $uebung_obj->punkte = null; - $uebung_obj->anmerkung = null; - $uebung_obj->benotungsdatum = null; - $uebung_obj->updateamum = null; - $uebung_obj->updatevon = null; - $uebung_obj->insertamum = $datum; - $uebung_obj->insertvon = $user; - $uebung_obj->new = true; - $uebung_obj->studentuebung_save($new=true); - //echo $uebung_obj->errormsg; - - } - if ($uebung_obj->abgabe_id != null) - { - $uebung_obj->load_abgabe($uebung_obj->abgabe_id); - unlink(BENOTUNGSTOOL_PATH."abgabe/".$uebung_obj->abgabedatei); - $uebung_obj->abgabedatei = $abgabedatei; - $uebung_obj->abgabezeit = $datum; - $uebung_obj->abgabe_anmerkung = $abgabe_anmerkung; - $uebung_obj->abgabe_save(false); - } - else - { - $uebung_obj->abgabedatei = $abgabedatei; - $uebung_obj->abgabezeit = $datum; - $uebung_obj->abgabe_anmerkung = $abgabe_anmerkung; - $uebung_obj->abgabe_save(true); - } - $uebung_obj->studentuebung_save(false); - //Abgabedatei ablegen - move_uploaded_file($_FILES['abgabedatei']['tmp_name'], $abgabepfad); + $abgabe_anmerkung = $_POST["abgabe_anmerkung"]; + + if ($abgabedatei_up) + { + //echo $abgabedatei_up; + $datum = date('Y-m-d H:i:s'); + $datumstr = ereg_replace(" ","_",$datum); + $name_up = pathinfo($_FILES["abgabedatei"]["name"]); + $name_neu = makeUploadName($conn, $which='abgabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem,$uid=$user, $date=$datumstr); + $abgabedatei = $name_neu.".".$name_up["extension"]; + $abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei; + + $uebung_obj = new uebung($conn); + $uebung_obj->load_studentuebung($user, $uebung_id); + + if ($uebung_obj->errormsg != "") + { + $uebung_obj->student_uid = $user; + $uebung_obj->mitarbeiter_uid = null; + $uebung_obj->abgabe_id = null; + $uebung_obj->uebung_id = $uebung_id; + $uebung_obj->note = null; + $uebung_obj->mitarbeitspunkte = null; + $uebung_obj->punkte = null; + $uebung_obj->anmerkung = null; + $uebung_obj->benotungsdatum = null; + $uebung_obj->updateamum = null; + $uebung_obj->updatevon = null; + $uebung_obj->insertamum = $datum; + $uebung_obj->insertvon = $user; + $uebung_obj->new = true; + $uebung_obj->studentuebung_save($new=true); + //echo $uebung_obj->errormsg; + + } + if ($uebung_obj->abgabe_id != null) + { + $uebung_obj->load_abgabe($uebung_obj->abgabe_id); + unlink(BENOTUNGSTOOL_PATH."abgabe/".$uebung_obj->abgabedatei); + $uebung_obj->abgabedatei = $abgabedatei; + $uebung_obj->abgabezeit = $datum; + $uebung_obj->abgabe_anmerkung = $abgabe_anmerkung; + $uebung_obj->abgabe_save(false); + } + else + { + $uebung_obj->abgabedatei = $abgabedatei; + $uebung_obj->abgabezeit = $datum; + $uebung_obj->abgabe_anmerkung = $abgabe_anmerkung; + $uebung_obj->abgabe_save(true); + } + $uebung_obj->studentuebung_save(false); + //Abgabedatei ablegen + move_uploaded_file($_FILES['abgabedatei']['tmp_name'], $abgabepfad); } else { $abgabe_anmerkung = $_POST["abgabe_anmerkung"]; - $uebung_obj2 = new uebung($conn); + $uebung_obj2 = new uebung($conn); $uebung_obj2->load_studentuebung($user, $uebung_id); if ($uebung_obj2->errormsg == "") { @@ -228,918 +226,918 @@ if (isset($_POST["abgabe"])) $uebung_obj2->abgabe_save(false); } } - } -} -else - $abgabedatei_up = null; - - - - -//Kopfzeile -echo ''; -echo ' '; -echo ''; -echo '
  Benotungstool'; -echo ''."\n"; - -//Studiensemester laden -$stsem_obj = new studiensemester($conn); -if($stsem=='') - $stsem = $stsem_obj->getaktorNext(); - -//Lehreinheiten laden zu denen der eingeloggte Student zugeteilt ist -//Bei Lehrverbaenden werden auch die uebergeordneten geladen -$qry = "SELECT distinct lehreinheit_id, kurzbz FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE lehreinheit_id IN( - SELECT lehreinheit_id FROM public.tbl_benutzergruppe JOIN lehre.tbl_lehreinheitgruppe USING (gruppe_kurzbz) - WHERE tbl_benutzergruppe.uid='$user' AND - tbl_lehreinheitgruppe.lehreinheit_id IN( - SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id) - WHERE tbl_lehreinheit.lehrveranstaltung_id='$lvid' AND tbl_lehreinheit.studiensemester_kurzbz='$stsem') - UNION - SELECT lehreinheit_id FROM public.tbl_student, lehre.tbl_lehreinheitgruppe - WHERE tbl_student.student_uid='$user' AND - tbl_student.studiengang_kz=tbl_lehreinheitgruppe.studiengang_kz AND - trim(tbl_student.semester)=trim(tbl_lehreinheitgruppe.semester) AND - ( - ( - ( - tbl_lehreinheitgruppe.verband<>'' AND - tbl_lehreinheitgruppe.gruppe<>'' AND - trim(tbl_lehreinheitgruppe.verband) = trim(tbl_student.verband) AND - trim(tbl_lehreinheitgruppe.gruppe) = trim(tbl_student.gruppe) - ) - OR - ( - tbl_lehreinheitgruppe.verband<>'' AND - ( - trim(tbl_lehreinheitgruppe.gruppe)='' OR - tbl_lehreinheitgruppe.gruppe is null - ) - AND - trim(tbl_lehreinheitgruppe.verband) = trim(tbl_student.verband) - ) - OR - ( - (trim(tbl_lehreinheitgruppe.verband)='' OR tbl_lehreinheitgruppe.verband is null) - AND - (trim(tbl_lehreinheitgruppe.gruppe)='' OR tbl_lehreinheitgruppe.gruppe is null) - ) - ) - ) - AND - tbl_lehreinheitgruppe.lehreinheit_id IN(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id) - WHERE tbl_lehreinheit.lehrveranstaltung_id='$lvid' AND tbl_lehreinheit.studiensemester_kurzbz='$stsem'))"; -//echo $qry; -if($result = pg_query($conn, $qry)) -{ - if(pg_num_rows($result)>1) - { - //Lehreinheiten DropDown - echo " Lehreinheit: '; - } - else - { - if($row = pg_fetch_object($result)) - $lehreinheit_id = $row->lehreinheit_id; - else - $lehreinheit_id =''; - } -} -else -{ - echo 'Fehler beim Auslesen der Lehreinheiten'; -} - -echo '
'; -echo ''; -echo ''; -echo "
 \n"; -echo "
$lv_obj->bezeichnungDownloadverzeichnis anzeigen

"; - -if($lehreinheit_id=='') - die('Derzeit gibt es keine Kreuzerllisten für diese Lehrveranstaltung'); - -$qry = "SELECT vorname, nachname FROM campus.vw_student WHERE uid='$user'"; -$name=''; -if($result = pg_query($conn, $qry)) - if($row = pg_fetch_object($result)) - $name = $row->vorname.' '.$row->nachname; - - - -if (!isset($_GET["notenuebersicht"])) -{ - $l = 0; - $ueb_check = new uebung($conn); - $ueb_check->load_uebung($lehreinheit_id,1); - if (count($ueb_check->uebungen > 0)) - { - foreach ($ueb_check->uebungen as $row) - { - $sub_check = new uebung($conn); - $sub_check->load_uebung($lehreinheit_id,2,$row->uebung_id); - if (count($sub_check->uebungen) > 0) - $l = 1; - } - } - - if ($l > 0) - { - echo "
Leistungsuebersicht / Notenübersicht für $name

"; - $uebung_obj = new uebung($conn); - $uebung_obj->load_uebung($lehreinheit_id,1); - if(count($uebung_obj->uebungen)>0) - { - echo "'; - - echo " -
"; - echo "
Wählen Sie bitte eine Aufgabe aus (Kreuzerllisten, Abgaben): '; - echo '
- - - - - - - - - -
+...freigeschaltet.
-...nicht freigeschaltet.
-
"; - } - else - die("Derzeit gibt es keine Uebungen"); - } - else - { - header("Location:studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id¬enuebersicht=1&uid=$user"); - //echo "Derzeit sind keine Kreuzerllisten oder Abgaben angelegt"; - } - - - - - //******SPEICHERN DER DATEN************* - if(isset($_POST['submit'])) - { - $error=false; - - $ueb_hlp_obj = new uebung($conn); - $ueb_hlp_obj->load($uebung_id); - //Wenn Kreuzerlliste Freigegeben ist - if($datum_obj->mktime_fromtimestamp($ueb_hlp_obj->freigabevon)mktime_fromtimestamp($ueb_hlp_obj->freigabebis)>time()) - { - $bsp_obj = new beispiel($conn); - - if($bsp_obj->load_beispiel($uebung_id)) - { - $anzahl_solved = 0; - foreach ($bsp_obj->beispiele as $row) - { - if (isset($_POST['solved_'.$row->beispiel_id]) && ($_POST['solved_'.$row->beispiel_id]==1)) - $anzahl_solved++; - } - if (($anzahl_solved <= $ueb_hlp_obj->maxbsp) || ($ueb_hlp_obj->maxbsp == 0)) - { - foreach ($bsp_obj->beispiele as $row) - { - $stud_bsp_obj = new beispiel($conn); - - if($stud_bsp_obj->load_studentbeispiel($user, $row->beispiel_id)) - { - $stud_bsp_obj->new=false; - } - else - { - $stud_bsp_obj->new=true; - $stud_bsp_obj->insertamum = date('Y-m-d H:i:s'); - $stud_bsp_obj->insertvon = $user; - $stud_bsp_obj->vorbereitet = false; - } - if (isset($_POST['solved_'.$row->beispiel_id])) - $stud_bsp_obj->vorbereitet = ($_POST['solved_'.$row->beispiel_id]==1?true:false); - - $stud_bsp_obj->probleme = (isset($_POST['problem_'.$row->beispiel_id])?true:false); - $stud_bsp_obj->updateamum = date('Y-m-d H:i:s'); - $stud_bsp_obj->updatevon = $user; - $stud_bsp_obj->student_uid = $user; - $stud_bsp_obj->beispiel_id = $row->beispiel_id; - - $row->check_anzahl_studentbeispiel($row->beispiel_id); - if (($row->anzahl_studentbeispiel >= $ueb_hlp_obj->maxstd) && isset($_POST['problem_'.$row->beispiel_id]) && $stud_bsp_obj->new && ($ueb_hlp_obj->maxstd != null)) - { - echo "Beispiel kann nicht mehr angekreuzt werden
"; - $error = true; - } - else - { - if(!$stud_bsp_obj->studentbeispiel_save()) - { - echo $stud_bsp_obj->errormsg; - $error=true; - } - } - } - } - else - { - $error=true; - echo "Zu viele Beispiele angekreuzt!
"; - } - } - - if($error) - echo "Es konnten nicht alle Daten gespeichert werden
"; - else - echo "Die Daten wurden erfolgreich gespeichert
"; - } - else - echo "Die Änderungen können nicht gespeichert werden, da diese Kreuzerlliste nicht freigegeben ist!"; - } - - //********ANZEIGE DER EINGETRAGENEN KREUZERL*********** - if ($l > 0) - { - $uebung_obj = new uebung($conn); - $uebung_obj->load($uebung_id); - $downloadname = str_replace($uebung_id,ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei); - echo "Freigegeben von ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))." bis ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)); - echo "

$uebung_obj->bezeichnung

"; - if ($uebung_obj->angabedatei) - echo "Angabe: ".$downloadname."

"; - - - $ueb_obj = new uebung($conn); - if($ueb_obj->load_studentuebung($user, $uebung_id)) - { - $anmerkung = $ueb_obj->anmerkung; - $mitarbeit = $ueb_obj->mitarbeitspunkte; - $note = $ueb_obj->note; - } - else - { - $anmerkung = ''; - $mitarbeit = 0; - $note = null; - } - $anmerkung = ereg_replace("\n","
",htmlentities($anmerkung)); - - if ($uebung_obj->beispiele) - { - - $qry_cnt = "SELECT count(*) as anzahl FROM campus.tbl_studentbeispiel WHERE beispiel_id IN (SELECT beispiel_id from campus.tbl_beispiel where uebung_id = $uebung_id) AND vorbereitet=true and student_uid = '$user'"; - if($result_cnt = pg_query($conn,$qry_cnt)) - if($row_cnt = pg_fetch_object($result_cnt)) - $anzahl = $row_cnt->anzahl; - - echo ""; - - $bsp_obj = new beispiel($conn); - $bsp_obj->load_beispiel($uebung_id); - if ($bsp_obj->beispiele) - { - echo " "; - if ($uebung_obj->maxbsp > 0) - echo ""; - if ($uebung_obj->maxstd > 0) - echo ""; - echo "
Maximale Anzahl der Beispiele/Student:".$uebung_obj->maxbsp."
Maximale Anzahl Studenten/Beispiel:".$uebung_obj->maxstd."
"; - echo " -
- - - "; - echo "
- ".($anmerkung!=''?'Anmerkungen:
'.$anmerkung.'

':'')." -
- - - - - - - - "; - - - - foreach ($bsp_obj->beispiele as $row) - { - $bsp_voll = false; - $stud_bsp_obj = new beispiel($conn); - - if ($uebung_obj->maxstd > 0) - { - $stud_bsp_obj->check_anzahl_studentbeispiel($row->beispiel_id); - if ($stud_bsp_obj->anzahl_studentbeispiel >= $uebung_obj->maxstd) - $bsp_voll = true; - } - if($stud_bsp_obj->load_studentbeispiel($user, $row->beispiel_id)) - { - $vorbereitet = $stud_bsp_obj->vorbereitet; - $probleme = $stud_bsp_obj->probleme; - } - else - { - $vorbereitet = false; - $probleme = false; - } - if ($bsp_voll) - { - $ro = " disabled"; - $markiert = " style='background-color:#dddddd;'"; - } - else - { - $ro = ""; - $markiert = ""; - } - echo " - - - - - - "; - - - } - - //Speichern button nur Anzeigen wenn die Uebung Freigegeben ist - if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) - echo ""; - - echo "
BeispielVorbereitetNicht vorbereitetProblemePunkte
$row->bezeichnung$row->punkte
"; - } - else - echo "
Keine Beispiele angelegt
- -
 
"; - - if ($uebung_obj->abgabe) - { - - echo "
\n"; - $uebung_obj->load_studentuebung($user, $uebung_id); - if ($uebung_obj->abgabe_id) - { - $uebung_obj->load_abgabe($uebung_obj->abgabe_id); - echo " "; - echo" "; - echo ""; - } - - if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) - { - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "\n"; - - } - echo "
Abgabedatei:
".$uebung_obj->abgabedatei.""; - if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) - echo " [del]
\n"; - echo " "; - echo "
"; - } - - echo "
"; - - //Gesamtpunkte diese Kreuzerlliste - $qry = "SELECT sum(punkte) as punktegesamt FROM campus.tbl_beispiel WHERE uebung_id='$uebung_id'"; - $punkte_gesamt=0; - if($result=pg_query($conn, $qry)) - if($row = pg_fetch_object($result)) - $punkte_gesamt = $row->punktegesamt; - - //Eingetragen diese Kreuzerlliste - $qry = "SELECT sum(punkte) as punkteeingetragen FROM campus.tbl_beispiel JOIN campus.tbl_studentbeispiel USING(beispiel_id) WHERE uebung_id='$uebung_id' AND student_uid='$user' AND vorbereitet=true"; - $punkte_eingetragen=0; - if($result=pg_query($conn, $qry)) - if($row = pg_fetch_object($result)) - $punkte_eingetragen = ($row->punkteeingetragen!=''?$row->punkteeingetragen:0); - - //Gesamtpunkte alle Kreuzerllisten in dieser Übung - $ueb_help = new uebung($conn, $uebung_id); - $liste_id = $ueb_help->liste_id; - $qry = "SELECT sum(tbl_beispiel.punkte) as punktegesamt_alle FROM campus.tbl_beispiel, campus.tbl_uebung - WHERE tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND - tbl_uebung.lehreinheit_id='$lehreinheit_id' and tbl_uebung.liste_id = '$liste_id'"; - $punkte_gesamt_alle=0; - if($result=pg_query($conn, $qry)) - if($row = pg_fetch_object($result)) - $punkte_gesamt_alle = $row->punktegesamt_alle; - - //Eingetragen alle Kreuzerllisten - $qry = "SELECT sum(tbl_beispiel.punkte) as punkteeingetragen_alle FROM campus.tbl_beispiel, campus.tbl_studentbeispiel, campus.tbl_uebung - WHERE tbl_beispiel.beispiel_id = tbl_studentbeispiel.beispiel_id AND - tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND - tbl_uebung.lehreinheit_id='$lehreinheit_id' AND - tbl_uebung.liste_id = '$liste_id' AND - tbl_studentbeispiel.student_uid='$user' AND vorbereitet=true"; - $punkte_eingetragen_alle=0; - if($result=pg_query($conn, $qry)) - if($row = pg_fetch_object($result)) - $punkte_eingetragen_alle = ($row->punkteeingetragen_alle!=''?$row->punkteeingetragen_alle:0); - - //Mitarbeitspunkte - $qry = "SELECT sum(mitarbeitspunkte) as mitarbeitspunkte FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id) - WHERE lehreinheit_id='$lehreinheit_id' AND student_uid='$user' AND liste_id = '$liste_id'"; - $mitarbeit_alle=0; - if($result=pg_query($conn, $qry)) - if($row = pg_fetch_object($result)) - $mitarbeit_alle = ($row->mitarbeitspunkte!=''?$row->mitarbeitspunkte:0); - - //Mitarbeitspunkte - $qry = "SELECT mitarbeitspunkte FROM campus.tbl_studentuebung - WHERE uebung_id='$uebung_id' AND student_uid='$user'"; - $mitarbeit=0; - if($result=pg_query($conn, $qry)) - if($row = pg_fetch_object($result)) - $mitarbeit = $row->mitarbeitspunkte; - echo " - - - - - - - - - - - - - -
Diese Kreuzerlliste:
Punkte insgesamt möglich:$punkte_gesamt
Punkte eingetragen:$punkte_eingetragen
-

- - - - - - - - - - - - -
Alle Kreuzerllisten bisher:
Punkte insgesamt möglich:$punkte_gesamt_alle
Punkte eingetragen:$punkte_eingetragen_alle
-

- - - - - - - - - - - - -
Mitarbeitspunkte:
Bisher insgesamt:$mitarbeit_alle
Diese Kreuzerlliste:$mitarbeit
- "; - - - echo " -
- - - "; - - //**********STATISTIK*************** - if($uebung_obj->statistik) - { - echo "

Statistik

"; - $beispiel_obj = new beispiel($conn); - if($beispiel_obj->load_beispiel($uebung_id)) - { - if(count($beispiel_obj->beispiele)>0) - { - echo ' - - - - '; - $i=0; - $qry_cnt = "SELECT distinct student_uid FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id='$uebung_id' GROUP BY student_uid"; - if($result_cnt = pg_query($conn,$qry_cnt)) - $gesamt=pg_num_rows($result_cnt); - - foreach ($beispiel_obj->beispiele as $row) - { - $i++; - $solved = 0; - $psolved = 0; - $qry_cnt = "SELECT count(*) as anzahl FROM campus.tbl_studentbeispiel WHERE beispiel_id=$row->beispiel_id AND vorbereitet=true"; - if($result_cnt = pg_query($conn,$qry_cnt)) - if($row_cnt = pg_fetch_object($result_cnt)) - $solved = $row_cnt->anzahl; - - - - if($solved>0) - $psolved = $solved/$gesamt*100; - - echo ' - - - '; - } - echo "
  - - - - -
 
-
- '.$row->bezeichnung.' - - - - - -
- - - - -
- -  '.$solved.' ['.number_format($psolved,1,'.','').'%] -
-
-
"; - echo "

Es haben insgesamt $gesamt Studenten eingetragen."; - } - } - else - echo "$beispiel_obj->errormsg"; - echo "
"; - } - } - else if ($uebung_obj->abgabe) - { - - echo "\n"; - echo "\n"; - echo" - - "; - echo "\n"; - - echo "\n"; - $uebung_obj->load_studentuebung($user, $uebung_id); - if ($uebung_obj->abgabe_id) - { - $uebung_obj->load_abgabe($uebung_obj->abgabe_id); - echo " "; - echo" "; - echo ""; - } - if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) - { - echo " \n"; - echo " \n"; - echo "
".($note!=''?'Note: '.$note.'

':'')."
- ".($anmerkung!=''?'Anmerkungen:
'.$anmerkung.'

':'')." -

Abgabedatei: ".$uebung_obj->abgabedatei.""; - if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) - echo " [del]
\n"; + } +} +else + $abgabedatei_up = null; + + + + +//Kopfzeile +echo ''; +echo ' '; +echo ''; +echo '
  Benotungstool'; +echo ''."\n"; + +//Studiensemester laden +$stsem_obj = new studiensemester($conn); +if($stsem=='') + $stsem = $stsem_obj->getaktorNext(); + +//Lehreinheiten laden zu denen der eingeloggte Student zugeteilt ist +//Bei Lehrverbaenden werden auch die uebergeordneten geladen +$qry = "SELECT distinct lehreinheit_id, kurzbz FROM lehre.tbl_lehreinheit JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE lehreinheit_id IN( + SELECT lehreinheit_id FROM public.tbl_benutzergruppe JOIN lehre.tbl_lehreinheitgruppe USING (gruppe_kurzbz) + WHERE tbl_benutzergruppe.uid='$user' AND + tbl_lehreinheitgruppe.lehreinheit_id IN( + SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id) + WHERE tbl_lehreinheit.lehrveranstaltung_id='$lvid' AND tbl_lehreinheit.studiensemester_kurzbz='$stsem') + UNION + SELECT lehreinheit_id FROM public.tbl_student, lehre.tbl_lehreinheitgruppe + WHERE tbl_student.student_uid='$user' AND + tbl_student.studiengang_kz=tbl_lehreinheitgruppe.studiengang_kz AND + trim(tbl_student.semester)=trim(tbl_lehreinheitgruppe.semester) AND + ( + ( + ( + tbl_lehreinheitgruppe.verband<>'' AND + tbl_lehreinheitgruppe.gruppe<>'' AND + trim(tbl_lehreinheitgruppe.verband) = trim(tbl_student.verband) AND + trim(tbl_lehreinheitgruppe.gruppe) = trim(tbl_student.gruppe) + ) + OR + ( + tbl_lehreinheitgruppe.verband<>'' AND + ( + trim(tbl_lehreinheitgruppe.gruppe)='' OR + tbl_lehreinheitgruppe.gruppe is null + ) + AND + trim(tbl_lehreinheitgruppe.verband) = trim(tbl_student.verband) + ) + OR + ( + (trim(tbl_lehreinheitgruppe.verband)='' OR tbl_lehreinheitgruppe.verband is null) + AND + (trim(tbl_lehreinheitgruppe.gruppe)='' OR tbl_lehreinheitgruppe.gruppe is null) + ) + ) + ) + AND + tbl_lehreinheitgruppe.lehreinheit_id IN(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id) + WHERE tbl_lehreinheit.lehrveranstaltung_id='$lvid' AND tbl_lehreinheit.studiensemester_kurzbz='$stsem'))"; +//echo $qry; +if($result = pg_query($conn, $qry)) +{ + if(pg_num_rows($result)>1) + { + //Lehreinheiten DropDown + echo " Lehreinheit: '; + } + else + { + if($row = pg_fetch_object($result)) + $lehreinheit_id = $row->lehreinheit_id; + else + $lehreinheit_id =''; + } +} +else +{ + echo 'Fehler beim Auslesen der Lehreinheiten'; +} + +echo '
'; +echo ''; +echo ''; +echo "\n"; + echo " \n"; + echo "\n"; + } + echo "
 \n"; +echo "
$lv_obj->bezeichnungDownloadverzeichnis anzeigen

"; + +if($lehreinheit_id=='') + die('Derzeit gibt es keine Kreuzerllisten für diese Lehrveranstaltung'); + +$qry = "SELECT vorname, nachname FROM campus.vw_student WHERE uid='$user'"; +$name=''; +if($result = pg_query($conn, $qry)) + if($row = pg_fetch_object($result)) + $name = $row->vorname.' '.$row->nachname; + + + +if (!isset($_GET["notenuebersicht"])) +{ + $l = 0; + $ueb_check = new uebung($conn); + $ueb_check->load_uebung($lehreinheit_id,1); + if (count($ueb_check->uebungen > 0)) + { + foreach ($ueb_check->uebungen as $row) + { + $sub_check = new uebung($conn); + $sub_check->load_uebung($lehreinheit_id,2,$row->uebung_id); + if (count($sub_check->uebungen) > 0) + $l = 1; + } + } + + if ($l > 0) + { + echo "
Leistungsuebersicht / Notenübersicht für $name

"; + $uebung_obj = new uebung($conn); + $uebung_obj->load_uebung($lehreinheit_id,1); + if(count($uebung_obj->uebungen)>0) + { + echo "'; + + echo " +
"; + echo "
Wählen Sie bitte eine Aufgabe aus (Kreuzerllisten, Abgaben): '; + echo '
+ + + + + + + + + +
+...freigeschaltet.
-...nicht freigeschaltet.
+
"; + } + else + die("Derzeit gibt es keine Uebungen"); + } + else + { + header("Location:studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id¬enuebersicht=1&uid=$user"); + //echo "Derzeit sind keine Kreuzerllisten oder Abgaben angelegt"; + } + + + + + //******SPEICHERN DER DATEN************* + if(isset($_POST['submit'])) + { + $error=false; + + $ueb_hlp_obj = new uebung($conn); + $ueb_hlp_obj->load($uebung_id); + //Wenn Kreuzerlliste Freigegeben ist + if($datum_obj->mktime_fromtimestamp($ueb_hlp_obj->freigabevon)mktime_fromtimestamp($ueb_hlp_obj->freigabebis)>time()) + { + $bsp_obj = new beispiel($conn); + + if($bsp_obj->load_beispiel($uebung_id)) + { + $anzahl_solved = 0; + foreach ($bsp_obj->beispiele as $row) + { + if (isset($_POST['solved_'.$row->beispiel_id]) && ($_POST['solved_'.$row->beispiel_id]==1)) + $anzahl_solved++; + } + if (($anzahl_solved <= $ueb_hlp_obj->maxbsp) || ($ueb_hlp_obj->maxbsp == 0)) + { + foreach ($bsp_obj->beispiele as $row) + { + $stud_bsp_obj = new beispiel($conn); + + if($stud_bsp_obj->load_studentbeispiel($user, $row->beispiel_id)) + { + $stud_bsp_obj->new=false; + } + else + { + $stud_bsp_obj->new=true; + $stud_bsp_obj->insertamum = date('Y-m-d H:i:s'); + $stud_bsp_obj->insertvon = $user; + $stud_bsp_obj->vorbereitet = false; + } + if (isset($_POST['solved_'.$row->beispiel_id])) + $stud_bsp_obj->vorbereitet = ($_POST['solved_'.$row->beispiel_id]==1?true:false); + + $stud_bsp_obj->probleme = (isset($_POST['problem_'.$row->beispiel_id])?true:false); + $stud_bsp_obj->updateamum = date('Y-m-d H:i:s'); + $stud_bsp_obj->updatevon = $user; + $stud_bsp_obj->student_uid = $user; + $stud_bsp_obj->beispiel_id = $row->beispiel_id; + + $row->check_anzahl_studentbeispiel($row->beispiel_id); + if (($row->anzahl_studentbeispiel >= $ueb_hlp_obj->maxstd) && isset($_POST['problem_'.$row->beispiel_id]) && $stud_bsp_obj->new && ($ueb_hlp_obj->maxstd != null)) + { + echo "Beispiel kann nicht mehr angekreuzt werden
"; + $error = true; + } + else + { + if(!$stud_bsp_obj->studentbeispiel_save()) + { + echo $stud_bsp_obj->errormsg; + $error=true; + } + } + } + } + else + { + $error=true; + echo "Zu viele Beispiele angekreuzt!
"; + } + } + + if($error) + echo "Es konnten nicht alle Daten gespeichert werden
"; + else + echo "Die Daten wurden erfolgreich gespeichert
"; + } + else + echo "Die Änderungen können nicht gespeichert werden, da diese Kreuzerlliste nicht freigegeben ist!"; + } + + //********ANZEIGE DER EINGETRAGENEN KREUZERL*********** + if ($l > 0) + { + $uebung_obj = new uebung($conn); + $uebung_obj->load($uebung_id); + $downloadname = str_replace($uebung_id,ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei); + echo "Freigegeben von ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))." bis ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)); + echo "

$uebung_obj->bezeichnung

"; + if ($uebung_obj->angabedatei) + echo "Angabe: ".$downloadname."

"; + + + $ueb_obj = new uebung($conn); + if($ueb_obj->load_studentuebung($user, $uebung_id)) + { + $anmerkung = $ueb_obj->anmerkung; + $mitarbeit = $ueb_obj->mitarbeitspunkte; + $note = $ueb_obj->note; + } + else + { + $anmerkung = ''; + $mitarbeit = 0; + $note = null; + } + $anmerkung = ereg_replace("\n","
",htmlentities($anmerkung)); + + if ($uebung_obj->beispiele) + { + + $qry_cnt = "SELECT count(*) as anzahl FROM campus.tbl_studentbeispiel WHERE beispiel_id IN (SELECT beispiel_id from campus.tbl_beispiel where uebung_id = $uebung_id) AND vorbereitet=true and student_uid = '$user'"; + if($result_cnt = pg_query($conn,$qry_cnt)) + if($row_cnt = pg_fetch_object($result_cnt)) + $anzahl = $row_cnt->anzahl; + + echo ""; + + $bsp_obj = new beispiel($conn); + $bsp_obj->load_beispiel($uebung_id); + if ($bsp_obj->beispiele) + { + echo " "; + if ($uebung_obj->maxbsp > 0) + echo ""; + if ($uebung_obj->maxstd > 0) + echo ""; + echo "
Maximale Anzahl der Beispiele/Student:".$uebung_obj->maxbsp."
Maximale Anzahl Studenten/Beispiel:".$uebung_obj->maxstd."
"; + echo " + + + + "; + echo "
+ ".($anmerkung!=''?'Anmerkungen:
'.$anmerkung.'

':'')." +
+ + + + + + + + "; + + + + foreach ($bsp_obj->beispiele as $row) + { + $bsp_voll = false; + $stud_bsp_obj = new beispiel($conn); + + if ($uebung_obj->maxstd > 0) + { + $stud_bsp_obj->check_anzahl_studentbeispiel($row->beispiel_id); + if ($stud_bsp_obj->anzahl_studentbeispiel >= $uebung_obj->maxstd) + $bsp_voll = true; + } + if($stud_bsp_obj->load_studentbeispiel($user, $row->beispiel_id)) + { + $vorbereitet = $stud_bsp_obj->vorbereitet; + $probleme = $stud_bsp_obj->probleme; + } + else + { + $vorbereitet = false; + $probleme = false; + } + if ($bsp_voll) + { + $ro = " disabled"; + $markiert = " style='background-color:#dddddd;'"; + } + else + { + $ro = ""; + $markiert = ""; + } + echo " + + + + + + "; + + + } + + //Speichern button nur Anzeigen wenn die Uebung Freigegeben ist + if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) + echo ""; + + echo "
BeispielVorbereitetNicht vorbereitetProblemePunkte
$row->bezeichnung$row->punkte
"; + } + else + echo "
Keine Beispiele angelegt
+ +
 
"; + + if ($uebung_obj->abgabe) + { + + echo "
\n"; + $uebung_obj->load_studentuebung($user, $uebung_id); + if ($uebung_obj->abgabe_id) + { + $uebung_obj->load_abgabe($uebung_obj->abgabe_id); + echo " "; + echo" "; + echo ""; + } + + if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) + { + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo "\n"; + + } + echo "
Abgabedatei:
".$uebung_obj->abgabedatei.""; + if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) + echo " [del]
\n"; + echo " "; + echo "
"; + } + + echo "
"; + + //Gesamtpunkte diese Kreuzerlliste + $qry = "SELECT sum(punkte) as punktegesamt FROM campus.tbl_beispiel WHERE uebung_id='$uebung_id'"; + $punkte_gesamt=0; + if($result=pg_query($conn, $qry)) + if($row = pg_fetch_object($result)) + $punkte_gesamt = $row->punktegesamt; + + //Eingetragen diese Kreuzerlliste + $qry = "SELECT sum(punkte) as punkteeingetragen FROM campus.tbl_beispiel JOIN campus.tbl_studentbeispiel USING(beispiel_id) WHERE uebung_id='$uebung_id' AND student_uid='$user' AND vorbereitet=true"; + $punkte_eingetragen=0; + if($result=pg_query($conn, $qry)) + if($row = pg_fetch_object($result)) + $punkte_eingetragen = ($row->punkteeingetragen!=''?$row->punkteeingetragen:0); + + //Gesamtpunkte alle Kreuzerllisten in dieser Übung + $ueb_help = new uebung($conn, $uebung_id); + $liste_id = $ueb_help->liste_id; + $qry = "SELECT sum(tbl_beispiel.punkte) as punktegesamt_alle FROM campus.tbl_beispiel, campus.tbl_uebung + WHERE tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND + tbl_uebung.lehreinheit_id='$lehreinheit_id' and tbl_uebung.liste_id = '$liste_id'"; + $punkte_gesamt_alle=0; + if($result=pg_query($conn, $qry)) + if($row = pg_fetch_object($result)) + $punkte_gesamt_alle = $row->punktegesamt_alle; + + //Eingetragen alle Kreuzerllisten + $qry = "SELECT sum(tbl_beispiel.punkte) as punkteeingetragen_alle FROM campus.tbl_beispiel, campus.tbl_studentbeispiel, campus.tbl_uebung + WHERE tbl_beispiel.beispiel_id = tbl_studentbeispiel.beispiel_id AND + tbl_uebung.uebung_id=tbl_beispiel.uebung_id AND + tbl_uebung.lehreinheit_id='$lehreinheit_id' AND + tbl_uebung.liste_id = '$liste_id' AND + tbl_studentbeispiel.student_uid='$user' AND vorbereitet=true"; + $punkte_eingetragen_alle=0; + if($result=pg_query($conn, $qry)) + if($row = pg_fetch_object($result)) + $punkte_eingetragen_alle = ($row->punkteeingetragen_alle!=''?$row->punkteeingetragen_alle:0); + + //Mitarbeitspunkte + $qry = "SELECT sum(mitarbeitspunkte) as mitarbeitspunkte FROM campus.tbl_studentuebung JOIN campus.tbl_uebung USING(uebung_id) + WHERE lehreinheit_id='$lehreinheit_id' AND student_uid='$user' AND liste_id = '$liste_id'"; + $mitarbeit_alle=0; + if($result=pg_query($conn, $qry)) + if($row = pg_fetch_object($result)) + $mitarbeit_alle = ($row->mitarbeitspunkte!=''?$row->mitarbeitspunkte:0); + + //Mitarbeitspunkte + $qry = "SELECT mitarbeitspunkte FROM campus.tbl_studentuebung + WHERE uebung_id='$uebung_id' AND student_uid='$user'"; + $mitarbeit=0; + if($result=pg_query($conn, $qry)) + if($row = pg_fetch_object($result)) + $mitarbeit = $row->mitarbeitspunkte; + echo " + + + + + + + + + + + + + +
Diese Kreuzerlliste:
Punkte insgesamt möglich:$punkte_gesamt
Punkte eingetragen:$punkte_eingetragen
+

+ + + + + + + + + + + + +
Alle Kreuzerllisten bisher:
Punkte insgesamt möglich:$punkte_gesamt_alle
Punkte eingetragen:$punkte_eingetragen_alle
+

+ + + + + + + + + + + + +
Mitarbeitspunkte:
Bisher insgesamt:$mitarbeit_alle
Diese Kreuzerlliste:$mitarbeit
+ "; + + + echo " +
+ + + "; + + //**********STATISTIK*************** + if($uebung_obj->statistik) + { + echo "

Statistik

"; + $beispiel_obj = new beispiel($conn); + if($beispiel_obj->load_beispiel($uebung_id)) + { + if(count($beispiel_obj->beispiele)>0) + { + echo ' + + + + '; + $i=0; + $qry_cnt = "SELECT distinct student_uid FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id='$uebung_id' GROUP BY student_uid"; + if($result_cnt = pg_query($conn,$qry_cnt)) + $gesamt=pg_num_rows($result_cnt); + + foreach ($beispiel_obj->beispiele as $row) + { + $i++; + $solved = 0; + $psolved = 0; + $qry_cnt = "SELECT count(*) as anzahl FROM campus.tbl_studentbeispiel WHERE beispiel_id=$row->beispiel_id AND vorbereitet=true"; + if($result_cnt = pg_query($conn,$qry_cnt)) + if($row_cnt = pg_fetch_object($result_cnt)) + $solved = $row_cnt->anzahl; + + + + if($solved>0) + $psolved = $solved/$gesamt*100; + + echo ' + + + '; + } + echo "
  + + + + +
 
+
+ '.$row->bezeichnung.' + + + + + +
+ + + + +
+ +  '.$solved.' ['.number_format($psolved,1,'.','').'%] +
+
+
"; + echo "

Es haben insgesamt $gesamt Studenten eingetragen."; + } + } + else + echo "$beispiel_obj->errormsg"; + echo "
"; + } + } + else if ($uebung_obj->abgabe) + { + + echo "\n"; + echo "\n"; + echo" + + "; + echo "\n"; + + echo "\n"; + $uebung_obj->load_studentuebung($user, $uebung_id); + if ($uebung_obj->abgabe_id) + { + $uebung_obj->load_abgabe($uebung_obj->abgabe_id); + echo " "; + echo" "; + echo ""; + } + if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) + { + echo " \n"; + echo " \n"; + echo " \n"; - echo " \n"; - echo "\n"; - } - echo "
".($note!=''?'Note: '.$note.'

':'')."
+ ".($anmerkung!=''?'Anmerkungen:
'.$anmerkung.'

':'')." +

Abgabedatei: ".$uebung_obj->abgabedatei.""; + if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) + echo " [del]
\n"; echo "
Anmerkung:

"; - echo "
Datei:
"; - echo "
\n"; - - } - } - -} -//notenübersicht -else -{ + echo "
Datei:
"; + echo "
\n"; + + } + } + +} +//notenübersicht +else +{ if ($lektorenansicht == 1) - { - $uid_arr = Array(); - $vorname_arr = Array(); - $nachname_arr = Array(); - - $qry_stud_dd = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehreinheit_id = '".$lehreinheit_id."' ORDER BY nachname, vorname"; - if($result_stud_dd = pg_query($conn, $qry_stud_dd)) - { - $i=1; - while($row_stud_dd = pg_fetch_object($result_stud_dd)) - { - $uid_arr[] = $row_stud_dd->uid; - $vorname_arr[] = $row_stud_dd->vorname; - $nachname_arr[] = $row_stud_dd->nachname; - - } - } - + { + $uid_arr = Array(); + $vorname_arr = Array(); + $nachname_arr = Array(); + + $qry_stud_dd = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = '".$stsem."' and lehreinheit_id = '".$lehreinheit_id."' ORDER BY nachname, vorname"; + if($result_stud_dd = pg_query($conn, $qry_stud_dd)) + { + $i=1; + while($row_stud_dd = pg_fetch_object($result_stud_dd)) + { + $uid_arr[] = $row_stud_dd->uid; + $vorname_arr[] = $row_stud_dd->vorname; + $nachname_arr[] = $row_stud_dd->nachname; + + } + } + echo "


"; - echo "Bitte Wählen Sie eine/n Studierende/n aus: "; - $key = array_search($uid,$uid_arr); - $prev = $key-1; - $next = $key+1; - if ($key > 0) - echo " << "; - echo ""; - if ($key < count($uid_arr)-1) + echo "Bitte Wählen Sie eine/n Studierende/n aus: "; + $key = array_search($uid,$uid_arr); + $prev = $key-1; + $next = $key+1; + if ($key > 0) + echo " << "; + echo ""; + if ($key < count($uid_arr)-1) echo " >> "; echo "


"; } - echo "
Leistungsuebersicht / Notenübersicht für $name

"; - echo "
"; - - $uebung_obj = new uebung($conn); - $uebung_obj->load_uebung($lehreinheit_id,1); - if(count($uebung_obj->uebungen)>0) - { - - echo ""; - echo " \n"; - echo " \n"; - echo " \n"; - echo " "; - echo " \n"; - echo " "; - echo " \n"; - foreach ($uebung_obj->uebungen as $row) - { - - $subuebung_obj = new uebung($conn); - $subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id); - $l1note = new studentnote($conn); - if(count($subuebung_obj->uebungen) >= 0) - { - - - $l1note->calc_l1_note($row->uebung_id, $user, $lehreinheit_id); - if ($l1note->negativ) - $l1_note = 5; - else - $l1_note = $l1note->l1_note; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo ""; - echo "\n"; - echo " \n"; - - } - - if(count($subuebung_obj->uebungen) > 0) - { - - foreach ($subuebung_obj->uebungen as $subrow) - { - - echo " \n"; - echo " "; - echo " \n"; - echo " \n"; - if ($subrow->beispiele) - { - $l1note->calc_punkte($subrow->uebung_id, $user); - echo " "; - echo " \n"; - echo " \n"; - } - else if ($subrow->abgabe) - { - $l1note->calc_note($subrow->uebung_id, $user); - echo " \n"; - echo " "; - echo " \n"; - } - echo " \n"; /* - if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)mktime_fromtimestamp($subrow->freigabebis)>time()) - echo ' + '; - else - echo ' - '; - */ - - } - - } - } - $l1note->calc_gesamtnote($lehreinheit_id, $stsem, $user); - if ($l1note->negativ) - $gesamtnote = 5; - else - $gesamtnote = $l1note->studentgesamtnote; - echo ""; - - - echo "
AufgabeGewichtPunkteTeilnoteNote
"; - echo $row->bezeichnung; - if ($row->positiv) - echo "*"; - echo " ".$row->gewicht.""; - if ($l1note->punkte_gesamt_l1 >0) - echo $l1note->punkte_gesamt_l1; - echo "".$l1_note."
- \n"; - echo $subrow->bezeichnung; - if ($subrow->positiv) - echo "*"; - echo " \n"; - if ($subrow->abgabe) - echo $subrow->gewicht; - echo " ".$l1note->punkte_gesamt."".$l1note->note."
Errechnete Gesamtnote: ".$gesamtnote."
"; - echo "* muss positiv sein"; - } - - echo "
"; - - $legesamtnote = new legesamtnote($conn, $lehreinheit_id); - - if (!$legesamtnote->load($user, $lehreinheit_id)) - { - $lenote = null; - } - else - { - $lenote = $legesamtnote->note; - } - if ($lvgesamtnote = new lvgesamtnote($conn, $lvid,$user,$stsem)) - { - $lvnote = $lvgesamtnote->note; - } - else - $lvnote = null; - if ($zeugnisnote = new zeugnisnote($conn, $lvid,$user,$stsem)) - { - $znote = $zeugnisnote->note; - } - else - $znote = null; - - echo "\n"; - echo " "; - echo "\n"; - echo ""; - echo ""; - echo "\n"; - echo "\n"; - echo ""; - echo ""; - echo "\n"; - echo "\n"; - echo ""; - echo ""; - echo "\n"; - echo "
Eingetragene Noten
Lehreinheit".$lenote."
Lehrveranstaltung".$lvnote."
Zeugnis".$znote."
"; - - echo "
"; -} -?> - - + echo "
Leistungsuebersicht / Notenübersicht für $name

"; + echo "
"; + + $uebung_obj = new uebung($conn); + $uebung_obj->load_uebung($lehreinheit_id,1); + if(count($uebung_obj->uebungen)>0) + { + + echo ""; + echo " \n"; + echo " \n"; + echo " \n"; + echo " "; + echo " \n"; + echo " "; + echo " \n"; + foreach ($uebung_obj->uebungen as $row) + { + + $subuebung_obj = new uebung($conn); + $subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id); + $l1note = new studentnote($conn); + if(count($subuebung_obj->uebungen) >= 0) + { + + + $l1note->calc_l1_note($row->uebung_id, $user, $lehreinheit_id); + if ($l1note->negativ) + $l1_note = 5; + else + $l1_note = $l1note->l1_note; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo ""; + echo "\n"; + echo " \n"; + + } + + if(count($subuebung_obj->uebungen) > 0) + { + + foreach ($subuebung_obj->uebungen as $subrow) + { + + echo " \n"; + echo " "; + echo " \n"; + echo " \n"; + if ($subrow->beispiele) + { + $l1note->calc_punkte($subrow->uebung_id, $user); + echo " "; + echo " \n"; + echo " \n"; + } + else if ($subrow->abgabe) + { + $l1note->calc_note($subrow->uebung_id, $user); + echo " \n"; + echo " "; + echo " \n"; + } + echo " \n"; /* + if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)mktime_fromtimestamp($subrow->freigabebis)>time()) + echo ' + '; + else + echo ' - '; + */ + + } + + } + } + $l1note->calc_gesamtnote($lehreinheit_id, $stsem, $user); + if ($l1note->negativ) + $gesamtnote = 5; + else + $gesamtnote = $l1note->studentgesamtnote; + echo ""; + + + echo "
AufgabeGewichtPunkteTeilnoteNote
"; + echo $row->bezeichnung; + if ($row->positiv) + echo "*"; + echo " ".$row->gewicht.""; + if ($l1note->punkte_gesamt_l1 >0) + echo $l1note->punkte_gesamt_l1; + echo "".$l1_note."
- \n"; + echo $subrow->bezeichnung; + if ($subrow->positiv) + echo "*"; + echo " \n"; + if ($subrow->abgabe) + echo $subrow->gewicht; + echo " ".$l1note->punkte_gesamt."".$l1note->note."
Errechnete Gesamtnote: ".$gesamtnote."
"; + echo "* muss positiv sein"; + } + + echo "
"; + + $legesamtnote = new legesamtnote($conn, $lehreinheit_id); + + if (!$legesamtnote->load($user, $lehreinheit_id)) + { + $lenote = null; + } + else + { + $lenote = $legesamtnote->note; + } + if ($lvgesamtnote = new lvgesamtnote($conn, $lvid,$user,$stsem)) + { + $lvnote = $lvgesamtnote->note; + } + else + $lvnote = null; + if ($zeugnisnote = new zeugnisnote($conn, $lvid,$user,$stsem)) + { + $znote = $zeugnisnote->note; + } + else + $znote = null; + + echo "\n"; + echo " "; + echo "\n"; + echo ""; + echo ""; + echo "\n"; + echo "\n"; + echo ""; + echo ""; + echo "\n"; + echo "\n"; + echo ""; + echo ""; + echo "\n"; + echo "
Eingetragene Noten
Lehreinheit".$lenote."
Lehrveranstaltung".$lvnote."
Zeugnis".$znote."
"; + + echo "
"; +} +?> + +