diff --git a/cis/private/lehre/benotungstool/functions.inc.php b/cis/private/lehre/benotungstool/functions.inc.php index e4fc4d60e..2e42e33f0 100755 --- a/cis/private/lehre/benotungstool/functions.inc.php +++ b/cis/private/lehre/benotungstool/functions.inc.php @@ -17,13 +17,13 @@ function makeUploadName($db, $which, $lehreinheit_id=null, $uebung_id=null, $ss= { $query = "SELECT nachname, vorname from tbl_person, tbl_benutzer where tbl_benutzer.person_id = tbl_person.person_id and tbl_benutzer.uid = ".$db->db_add_param($uid); $result = $db->db_query($query); - $row = $db->db_fetch_object($result); + $row = $db->db_fetch_object($result); $name .= "_".$uebung_id."_".$row->nachname."_".$row->vorname."_".$uid."_".$date; } else if ($which == "zip") { - - $name .= "_".$uebung_id."_".$date; + + $name .= "_".$uebung_id."_".$date; } $name = str_replace(":","-",$name); return $name; diff --git a/cis/private/lehre/benotungstool/studentenansicht.php b/cis/private/lehre/benotungstool/studentenansicht.php index be203d8d7..d13f24aa0 100644 --- a/cis/private/lehre/benotungstool/studentenansicht.php +++ b/cis/private/lehre/benotungstool/studentenansicht.php @@ -24,7 +24,7 @@ // ******************** require_once('../../../../config/cis.config.inc.php'); -require_once('../../../../include/basis_db.class.php'); +require_once('../../../../include/basis_db.class.php'); require_once('../../../../include/functions.inc.php'); require_once('../../../../include/lehrveranstaltung.class.php'); require_once('../../../../include/studiengang.class.php'); @@ -41,14 +41,13 @@ require_once('../../../../include/zeugnisnote.class.php'); require_once('../../../../include/phrasen.class.php'); include('functions.inc.php'); -$sprache = getSprache(); -$p = new phrasen($sprache); +$sprache = getSprache(); +$p = new phrasen($sprache); if (!$db = new basis_db()) die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); $user = get_uid(); -//$user = 'if06b172'; -//$user = 'if06b144'; + $lektorenansicht = 0; if(isset($_GET['lvid']) && is_numeric($_GET['lvid'])) //Lehrveranstaltung_id @@ -62,12 +61,10 @@ else $lehreinheit_id = ''; $uid = (isset($_GET['uid'])?$_GET['uid']:''); //Uid - - if(check_lektor($user) && (isset($_GET['uid']) && $_GET["uid"] != "")) { $rights = new benutzerberechtigung(); - $rights->getBerechtigungen($user); + $rights->getBerechtigungen($user); $lehreinheit=new lehreinheit($_GET["lehreinheit_id"]); if(!check_lektor_lehrveranstaltung($user, $lehreinheit->lehrveranstaltung_id, $lehreinheit->studiensemester_kurzbz) && !$rights->isBerechtigt('admin',0)) die($p->t('global/keineBerechtigungFuerDieseSeite')); @@ -94,17 +91,29 @@ $datum_obj = new datum(); $uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:''); //Abgabedatei ausliefern -if (isset($_GET["download_abgabe"])){ +if (isset($_GET["download_abgabe"])) +{ $file=$_GET["download_abgabe"]; + $file = preg_replace('/[^A-Za-z0-9\-_.]/', '',$file); $uebung_id = $_GET["uebung_id"]; $ueb = new uebung(); - $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; + if($ueb->load_studentuebung($user, $uebung_id)) + { + if($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; + } + else + { + die($ueb->errormsg); + } + } + else + die($ueb->errormsg); } //Angabedatei ausliefern @@ -162,20 +171,21 @@ if (isset($_POST["abgabe"])) { $abgabedatei_up = $_FILES["abgabedatei"]["tmp_name"]; $abgabe_anmerkung = (isset($_POST["abgabe_anmerkung"])?$_POST["abgabe_anmerkung"]:''); - + if ($abgabedatei_up) { //echo $abgabedatei_up; $datum = date('Y-m-d H:i:s'); - $datumstr = ereg_replace(" ","_",$datum); + $datumstr = str_replace(" ","_",$datum); $name_up = pathinfo($_FILES["abgabedatei"]["name"]); $name_neu = makeUploadName($db, $which='abgabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem,$uid=$user, $date=$datumstr); + $name_neu = preg_replace('/[^A-Za-z0-9\-_]/', '',$name_neu); $abgabedatei = $name_neu.".".$name_up["extension"]; - $abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei; - + $abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei; + $uebung_obj = new uebung(); $uebung_obj->load_studentuebung($user, $uebung_id); - + if ($uebung_obj->errormsg != "") { $uebung_obj->student_uid = $user; @@ -194,12 +204,12 @@ if (isset($_POST["abgabe"])) $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->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; @@ -213,10 +223,10 @@ if (isset($_POST["abgabe"])) $uebung_obj->abgabe_save(true); } $uebung_obj->studentuebung_save(false); - //Abgabedatei ablegen + //Abgabedatei ablegen move_uploaded_file($_FILES['abgabedatei']['tmp_name'], $abgabepfad); } - + else { $abgabe_anmerkung = $_POST["abgabe_anmerkung"]; @@ -225,7 +235,7 @@ if (isset($_POST["abgabe"])) if ($uebung_obj2->errormsg == "") { if ($uebung_obj2->abgabe_id != null) - { + { $uebung_obj2->load_abgabe($uebung_obj2->abgabe_id); $uebung_obj2->abgabe_anmerkung = $abgabe_anmerkung; $uebung_obj2->abgabe_save(false); @@ -259,11 +269,11 @@ $qry = "SELECT distinct lehreinheit_id, lehrfach.kurzbz FROM lehre.tbl_lehreinhe SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id) WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem).") UNION - SELECT - lehreinheit_id - FROM + SELECT + lehreinheit_id + FROM public.tbl_student, lehre.tbl_lehreinheitgruppe, public.tbl_studentlehrverband - WHERE + WHERE tbl_student.student_uid=".$db->db_add_param($user)." AND tbl_studentlehrverband.student_uid=tbl_student.student_uid AND tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND @@ -370,7 +380,7 @@ echo ' '; echo "\n"; echo "
".$lv_obj->bezeichnung_arr[$sprache]."".$p->t('benotungstool/downloadverzeichnisAnzeigen')."

"; -if($lehreinheit_id=='') +if($lehreinheit_id=='') die($p->t('benotungstool/keineKreuzerllistenFuerDieseLehrveranstaltung')); $qry = "SELECT vorname, nachname FROM campus.vw_student WHERE uid=".$db->db_add_param($user); @@ -383,7 +393,7 @@ if($result = $db->db_query($qry)) if (!isset($_GET["notenuebersicht"])) { - $l = 0; + $l = 0; $ueb_check = new uebung(); $ueb_check->load_uebung($lehreinheit_id,1); if (count($ueb_check->uebungen > 0)) @@ -396,7 +406,7 @@ if (!isset($_GET["notenuebersicht"])) $l = 1; } } - + if ($l > 0) { echo "
".$p->t('lehre/leistungsuebersicht')." / ".$p->t('benotungstool/notenuebersichtFuer')." $name

"; @@ -409,12 +419,12 @@ if (!isset($_GET["notenuebersicht"])) echo ""; foreach ($uebung_obj->uebungen as $row) { - + if($uebung_id == $row->uebung_id) $selected = 'selected'; else - $selected = ''; - + $selected = ''; + $subuebung_obj = new uebung(); $subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id); if(count($subuebung_obj->uebungen)>0) @@ -427,41 +437,41 @@ if (!isset($_GET["notenuebersicht"])) } else $disabled = ''; - - - + + + if(count($subuebung_obj->uebungen)>0) { foreach ($subuebung_obj->uebungen as $subrow) { if($uebung_id=='') $uebung_id=$subrow->uebung_id; - + if($uebung_id == $subrow->uebung_id) $selected = 'selected'; else $selected = ''; - + echo "'; - + } } } - + echo ''; echo ''; - + echo " @@ -482,21 +492,21 @@ if (!isset($_GET["notenuebersicht"])) else { $callURL="studentenansicht.php?lvid=$lvid&stsem=$stsem&lehreinheit_id=$lehreinheit_id¬enuebersicht=1&uid=$user"; - #header("Location:$callURL"); + #header("Location:$callURL"); echo ""; - exit; - //echo "Derzeit sind keine Kreuzerllisten oder Abgaben angelegt"; + exit; + //echo "Derzeit sind keine Kreuzerllisten oder Abgaben angelegt"; } - - - + + + //******SPEICHERN DER DATEN************* if(isset($_POST['submit'])) { $error=false; - + $ueb_hlp_obj = new uebung(); $ueb_hlp_obj->load($uebung_id); //Wenn Kreuzerlliste Freigegeben ist @@ -504,21 +514,21 @@ if (!isset($_GET["notenuebersicht"])) $datum_obj->mktime_fromtimestamp($ueb_hlp_obj->freigabebis)>time()) { $bsp_obj = new beispiel(); - + if($bsp_obj->load_beispiel($uebung_id)) { - $anzahl_solved = 0; + $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(); - + if($stud_bsp_obj->load_studentbeispiel($user, $row->beispiel_id)) { $stud_bsp_obj->new=false; @@ -530,18 +540,18 @@ if (!isset($_GET["notenuebersicht"])) $stud_bsp_obj->insertvon = $user; $stud_bsp_obj->vorbereitet = false; } - if (isset($_POST['solved_'.$row->beispiel_id])) + 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; - + if(!$row->check_anzahl_studentbeispiel($row->beispiel_id)) die('Fehler beim Ermitteln der Beispiele'); - if (($row->anzahl_studentbeispiel >= $ueb_hlp_obj->maxstd) && ($stud_bsp_obj->vorbereitet==true) && ($ueb_hlp_obj->maxstd != null)) //isset($_POST['problem_'.$row->beispiel_id]) && $stud_bsp_obj->new || + if (($row->anzahl_studentbeispiel >= $ueb_hlp_obj->maxstd) && ($stud_bsp_obj->vorbereitet==true) && ($ueb_hlp_obj->maxstd != null)) //isset($_POST['problem_'.$row->beispiel_id]) && $stud_bsp_obj->new || { $hlp = new beispiel(); if($hlp->load_studentbeispiel($user, $row->beispiel_id)) @@ -552,7 +562,7 @@ if (!isset($_GET["notenuebersicht"])) $error = true; } } - } + } else { if(!$stud_bsp_obj->studentbeispiel_save()) @@ -565,11 +575,11 @@ if (!isset($_GET["notenuebersicht"])) } else { - $error=true; + $error=true; echo $p->t('benotungstool/zuVieleBeispieleAngekreuzt')."!
"; } } - + if($error) echo "".$p->t('benotungstool/esKonntenNichtAlleDatenGespeichertWerden')."
"; else @@ -578,19 +588,20 @@ if (!isset($_GET["notenuebersicht"])) else echo "".$p->t('benotungstool/nichtGespeichertKreuzerllisteNichtFreigegeben')."!"; } - + //********ANZEIGE DER EINGETRAGENEN KREUZERL*********** if ($l > 0) - { + { $uebung_obj = new uebung(); $uebung_obj->load($uebung_id); $downloadname = mb_ereg_replace($uebung_id,mb_ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei); + $downloadname = preg_replace('/[^A-Za-z0-9\-_.]/', '',$downloadname); echo $p->t('benotungstool/freigegebenVon')." ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon))." ".$p->t('global/bis')." ".date('d.m.Y H:i',$datum_obj->mktime_fromtimestamp($uebung_obj->freigabebis)); echo "

$uebung_obj->bezeichnung

"; if ($uebung_obj->angabedatei) echo $p->t('benotungstool/angabe').": ".$downloadname."

"; - - + + $ueb_obj = new uebung(); if($ueb_obj->load_studentuebung($user, $uebung_id)) { @@ -608,39 +619,39 @@ if (!isset($_GET["notenuebersicht"])) $anmerkung = mb_str_replace("\n", "
", $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 =".$db->db_add_param($uebung_id, FHC_INTEGER).") AND vorbereitet=true and student_uid = ".$db->db_add_param($user); if($result_cnt = $db->db_query($qry_cnt)) if($row_cnt = $db->db_fetch_object($result_cnt)) $anzahl = $row_cnt->anzahl; - + echo ""; - + $bsp_obj = new beispiel(); - $bsp_obj->load_beispiel($uebung_id); + $bsp_obj->load_beispiel($uebung_id); if ($bsp_obj->beispiele) { echo "
"; @@ -648,7 +659,7 @@ if (!isset($_GET["notenuebersicht"])) echo ""; if ($uebung_obj->maxstd > 0) echo ""; - echo "
".$p->t('benotungstool/maxBeispieleStudent').":".$uebung_obj->maxbsp."
".$p->t('benotungstool/maxStudentenBeispiel').":".$uebung_obj->maxstd."
"; + echo ""; echo "
@@ -664,12 +675,12 @@ if (!isset($_GET["notenuebersicht"])) "; - - - + + + foreach ($bsp_obj->beispiele as $row) { - $bsp_voll = false; + $bsp_voll = false; $stud_bsp_obj = new beispiel(); if ($uebung_obj->maxstd > 0) { @@ -690,7 +701,7 @@ if (!isset($_GET["notenuebersicht"])) if ($bsp_voll) { $ro = " disabled"; - $markiert = " style='background-color:#dddddd;'"; + $markiert = " style='background-color:#dddddd;'"; } else { @@ -704,64 +715,64 @@ if (!isset($_GET["notenuebersicht"])) "; - - + + } - + //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 "
".$p->t('benotungstool/probleme')." ".$p->t('benotungstool/punkte')."
$row->punkte
"; } else echo "
".$p->t('benotungstool/keineBeispieleAngelegt')."
- +
 
"; - + 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); + { + $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 "\n"; - + } echo "
".$p->t('benotungstool/abgabedatei').":
".$uebung_obj->abgabedatei.""; - if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) + 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=".$db->db_add_param($uebung_id, FHC_INTEGER); $punkte_gesamt=0; if($result=$db->db_query($qry)) if($row = $db->db_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=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($user)." AND vorbereitet=true"; $punkte_eingetragen=0; if($result=$db->db_query($qry)) if($row = $db->db_fetch_object($result)) $punkte_eingetragen = ($row->punkteeingetragen!=''?$row->punkteeingetragen:0); - + //Gesamtpunkte alle Kreuzerllisten in dieser Übung $ueb_help = new uebung($uebung_id); $liste_id = $ueb_help->liste_id; @@ -772,19 +783,19 @@ if (!isset($_GET["notenuebersicht"])) if($result=$db->db_query($qry)) if($row = $db->db_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=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND - tbl_uebung.liste_id = ".$db->db_add_param($liste_id, FHC_INTEGER)." AND + tbl_uebung.liste_id = ".$db->db_add_param($liste_id, FHC_INTEGER)." AND tbl_studentbeispiel.student_uid=".$db->db_add_param($user)." AND vorbereitet=true"; $punkte_eingetragen_alle=0; if($result=$db->db_query($qry)) if($row = $db->db_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=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($user)." AND liste_id = ".$db->db_add_param($liste_id, FHC_INTEGER); @@ -792,7 +803,7 @@ if (!isset($_GET["notenuebersicht"])) if($result=$db->db_query($qry)) if($row = $db->db_fetch_object($result)) $mitarbeit_alle = ($row->mitarbeitspunkte!=''?$row->mitarbeitspunkte:0); - + //Mitarbeitspunkte $qry = "SELECT mitarbeitspunkte FROM campus.tbl_studentuebung WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($user); @@ -801,7 +812,7 @@ if (!isset($_GET["notenuebersicht"])) if($row = $db->db_fetch_object($result)) $mitarbeit = $row->mitarbeitspunkte; echo " - + @@ -844,16 +855,16 @@ if (!isset($_GET["notenuebersicht"]))
".$p->t('benotungstool/dieseKreuzerlliste').":
"; - - + + echo "
- + "; - + //**********STATISTIK*************** if($uebung_obj->statistik) { @@ -878,7 +889,7 @@ if (!isset($_GET["notenuebersicht"])) $qry_cnt = "SELECT distinct student_uid FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id=".$db->db_add_param($uebung_id)." GROUP BY student_uid"; if($result_cnt = $db->db_query($qry_cnt)) $gesamt=$db->db_num_rows($result_cnt); - + foreach ($beispiel_obj->beispiele as $row) { $i++; @@ -888,12 +899,12 @@ if (!isset($_GET["notenuebersicht"])) if($result_cnt = $db->db_query($qry_cnt)) if($row_cnt = $db->db_fetch_object($result_cnt)) $solved = $row_cnt->anzahl; - - - + + + if($solved>0) $psolved = $solved/$gesamt*100; - + echo ' '.$row->bezeichnung.' @@ -928,24 +939,24 @@ if (!isset($_GET["notenuebersicht"])) } else if ($uebung_obj->abgabe) { - + echo "\n"; echo "\n"; - echo" + 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); + { + $uebung_obj->load_abgabe($uebung_obj->abgabe_id); echo " "; echo" "; echo ""; } @@ -954,14 +965,14 @@ if (!isset($_GET["notenuebersicht"])) echo " \n"; echo " \n"; echo " \n"; + echo " \n"; echo " \n"; echo "\n"; } echo "
".($note!=''?''.$p->t('benotungstool/note').': '.$note.'

':'')."
".($anmerkung!=''?''.$p->t('global/anmerkungen').':
'.$anmerkung.'

':'')."

".$p->t('benotungstool/abgabedatei').": ".$uebung_obj->abgabedatei.""; - if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) + if($datum_obj->mktime_fromtimestamp($uebung_obj->freigabevon)mktime_fromtimestamp($uebung_obj->freigabebis)>time()) echo " [del]
\n"; - echo "
".$p->t('global/anmerkung').":

"; + echo "
".$p->t('global/anmerkung').":

"; echo "
".$p->t('global/datei').":
"; - echo "
\n"; - + } } @@ -974,7 +985,7 @@ else $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 = ".$db->db_add_param($stsem)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname"; if($result_stud_dd = $db->db_query($qry_stud_dd)) { @@ -983,43 +994,43 @@ else { $uid_arr[] = $row_stud_dd->uid; $vorname_arr[] = $row_stud_dd->vorname; - $nachname_arr[] = $row_stud_dd->nachname; + $nachname_arr[] = $row_stud_dd->nachname; } } - echo "


"; + echo "


"; echo $p->t('benotungstool/studentenAuswaehlen').": "; $key = array_search($uid,$uid_arr); $prev = $key-1; $next = $key+1; if ($key > 0) - echo " << "; - echo "\n"; for ($j = 0; $j < count($uid_arr); $j++) - { + { if ($uid_arr[$j] == $uid) $selected = " selected"; else $selected = ""; - + echo ""; } echo ""; if ($key < count($uid_arr)-1) - echo " >> "; - + echo " >> "; + echo "


"; } - - echo "
".$p->t('benotungstool/leistungsuebersichtNotenuebersichtFuer')." $name

"; + + echo "
".$p->t('benotungstool/leistungsuebersichtNotenuebersichtFuer')." $name

"; echo "
"; - + $uebung_obj = new uebung(); $uebung_obj->load_uebung($lehreinheit_id,1); if(count($uebung_obj->uebungen)>0) { - + echo ""; echo " \n"; echo " \n"; @@ -1029,21 +1040,21 @@ else echo " "; echo " \n"; foreach ($uebung_obj->uebungen as $row) - { - + { + $subuebung_obj = new uebung(); $subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id); $l1note = new studentnote(); 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"; + $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 " "; echo " "; - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; } else if ($subrow->abgabe) { $l1note->calc_note($subrow->uebung_id, $user); - echo " \n"; - echo " "; - echo " \n"; + echo " \n"; + echo " "; + echo " \n"; } echo " \n"; /* if($datum_obj->mktime_fromtimestamp($subrow->freigabevon)mktime_fromtimestamp($subrow->freigabebis)>time()) @@ -1097,9 +1108,9 @@ else else echo ' - '; */ - + } - + } } $l1note->calc_gesamtnote($lehreinheit_id, $stsem, $user); @@ -1108,24 +1119,24 @@ else else $gesamtnote = $l1note->studentgesamtnote; echo ""; - - + + echo "
".$p->t('benotungstool/aufgabe')."".$p->t('benotungstool/note')."
"; echo $row->bezeichnung; if ($row->positiv) @@ -1051,23 +1062,23 @@ else echo " ".$row->gewicht.""; - if ($l1note->punkte_gesamt_l1 >0) + if ($l1note->punkte_gesamt_l1 >0) echo $l1note->punkte_gesamt_l1; echo "".$l1_note."
- - \n"; echo $subrow->bezeichnung; if ($subrow->positiv) @@ -1081,15 +1092,15 @@ else { $l1note->calc_punkte($subrow->uebung_id, $user); echo " ".$l1note->punkte_gesamt."".$l1note->note."".$l1note->note."
".$p->t('benotungstool/errechneteGesamtnote').": ".$gesamtnote."
"; echo "".$p->t('benotungstool/mussPositivSein').""; } - + echo "
"; - + $legesamtnote = new legesamtnote($lehreinheit_id); - + if (!$legesamtnote->load($user, $lehreinheit_id)) - { + { $lenote = null; } else { $lenote = $legesamtnote->note; - } + } if ($lvgesamtnote = new lvgesamtnote($lvid,$user,$stsem)) { $lvnote = $lvgesamtnote->note; @@ -1138,7 +1149,7 @@ else } else $znote = null; - + echo "\n"; echo " "; echo "\n"; @@ -1154,7 +1165,7 @@ else echo ""; echo "\n"; echo "
".$p->t('benotungstool/eingetrageneNoten')."
".$znote."
"; - + echo "
"; } ?> diff --git a/cis/private/lehre/benotungstool/studentenpunkteverwalten.php b/cis/private/lehre/benotungstool/studentenpunkteverwalten.php index 3ddbfee9a..199b3a841 100644 --- a/cis/private/lehre/benotungstool/studentenpunkteverwalten.php +++ b/cis/private/lehre/benotungstool/studentenpunkteverwalten.php @@ -21,7 +21,7 @@ */ require_once('../../../../config/cis.config.inc.php'); -require_once('../../../../include/basis_db.class.php'); +require_once('../../../../include/basis_db.class.php'); require_once('../../../../include/functions.inc.php'); require_once('../../../../include/lehrveranstaltung.class.php'); require_once('../../../../include/studiengang.class.php'); @@ -34,9 +34,9 @@ require_once('../../../../include/studentnote.class.php'); require_once('../../../../include/datum.class.php'); require_once('functions.inc.php'); require_once('../../../../include/phrasen.class.php'); - -$sprache = getSprache(); -$p = new phrasen($sprache); + +$sprache = getSprache(); +$p = new phrasen($sprache); if (!$db = new basis_db()) die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); $user = get_uid(); @@ -102,9 +102,9 @@ if (isset($_GET["handbuch"])){ if (isset($_FILES["abgabedatei"])) { - //echo $_FILES["abgabedatei"]; + //echo $_FILES["abgabedatei"]; $abgabedatei_up = $_FILES["abgabedatei"]["tmp_name"]; - + if ($abgabedatei_up) { $student_uid = $uid; @@ -112,13 +112,14 @@ if (isset($_FILES["abgabedatei"])) $datumstr = ereg_replace(" ","_",$datum); $name_up = pathinfo($_FILES["abgabedatei"]["name"]); $name_neu = makeUploadName($db, $which='abgabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem,$uid=$student_uid, $date=$datumstr); + $name_neu = preg_replace('/[^A-Za-z0-9\-_]/', '',$name_neu); $abgabedatei = $name_neu.".".$name_up["extension"]; - $abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei; - + $abgabepfad = BENOTUNGSTOOL_PATH."abgabe/".$abgabedatei; + $uebung_obj = new uebung(); $uebung_obj->load_studentuebung($student_uid, $uebung_id); - - + + if ($uebung_obj->errormsg != "") { $uebung_obj->student_uid = $student_uid; @@ -137,12 +138,12 @@ if (isset($_FILES["abgabedatei"])) $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->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 = ""; @@ -156,7 +157,7 @@ if (isset($_FILES["abgabedatei"])) $uebung_obj->abgabe_save(true); } $uebung_obj->studentuebung_save(false); - //Abgabedatei ablegen + //Abgabedatei ablegen move_uploaded_file($_FILES['abgabedatei']['tmp_name'], $abgabepfad); } } @@ -217,11 +218,11 @@ $stsem_content.= "\n"; //Lehreinheiten laden if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz)) { - $qry = "SELECT - distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz - FROM + $qry = "SELECT + distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz + FROM lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter - WHERE + WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND @@ -229,11 +230,11 @@ if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->st } else { - $qry = "SELECT - distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz - FROM + $qry = "SELECT + distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz + FROM lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter - WHERE + WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND @@ -440,14 +441,14 @@ if(isset($_GET['uid']) && $_GET['uid']!='') die($p->t('benotungstool/studentWurdeNichtGefunden')); //echo "$row_stud->vorname $row_stud->nachname
\n"; - - + + $uid_arr = Array(); $vorname_arr = Array(); $nachname_arr = Array(); - // studentenquery + // studentenquery $qry_stud_dd = "SELECT uid, vorname, nachname, matrikelnr FROM campus.vw_student_lehrveranstaltung JOIN campus.vw_student using(uid) WHERE studiensemester_kurzbz = ".$db->db_add_param($stsem)." and lehreinheit_id = ".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." ORDER BY nachname, vorname"; if($result_stud_dd = $db->db_query($qry_stud_dd)) { @@ -456,7 +457,7 @@ if(isset($_GET['uid']) && $_GET['uid']!='') { $uid_arr[] = $row_stud_dd->uid; $vorname_arr[] = $row_stud_dd->vorname; - $nachname_arr[] = $row_stud_dd->nachname; + $nachname_arr[] = $row_stud_dd->nachname; } } @@ -467,22 +468,22 @@ if(isset($_GET['uid']) && $_GET['uid']!='') $prev = $key-1; $next = $key+1; if ($key > 0) - echo "
<< "; - echo "\n"; for ($j = 0; $j < count($uid_arr); $j++) - { + { if ($uid_arr[$j] == $uid) $selected = " selected"; else $selected = ""; - + echo ""; } echo ""; if ($key < count($uid_arr)-1) - echo " >> "; - - + echo " >> "; + + $uebung_obj = new uebung(); $uebung_obj->load_uebung($lehreinheit_id,1); if(count($uebung_obj->uebungen)>0) @@ -492,15 +493,15 @@ if(isset($_GET['uid']) && $_GET['uid']!='') echo ""; foreach ($uebung_obj->uebungen as $row) { - + if($uebung_id == $row->uebung_id) $selected = 'selected'; else - $selected = ''; - + $selected = ''; + if($uebung_id=='') $uebung_id=$row->uebung_id; - + $subuebung_obj = new uebung(); $subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id); if(count($subuebung_obj->uebungen)>0) @@ -510,46 +511,46 @@ if(isset($_GET['uid']) && $_GET['uid']!='') } else $disabled = ''; - + echo "'; - + if(count($subuebung_obj->uebungen)>0) { foreach ($subuebung_obj->uebungen as $subrow) { if($uebung_id=='') $uebung_id=$subrow->uebung_id; - + if($uebung_id == $subrow->uebung_id) $selected = 'selected'; else $selected = ''; - + echo "'; - + } } } - + echo ''; - + echo ''; - + echo " @@ -581,7 +582,7 @@ if(isset($_GET['uid']) && $_GET['uid']!='') $mitarbeit = 0; $note = ''; } - + if ($ueb_obj->beispiele && is_numeric($_GET['uebung_id'])) { echo " @@ -598,10 +599,10 @@ if(isset($_GET['uid']) && $_GET['uid']!='') "; - + $bsp_obj = new beispiel(); $bsp_obj->load_beispiel($uebung_id); - + foreach ($bsp_obj->beispiele as $row) { $stud_bsp_obj = new beispiel(); @@ -623,14 +624,14 @@ if(isset($_GET['uid']) && $_GET['uid']!='') "; } - + echo "
".$p->t('benotungstool/probleme')." ".$p->t('benotungstool/punkte')."
$row->punkte
"; - - - + + + $ueb_obj->load_studentuebung($uid, $uebung_id); - if ($ueb_obj->abgabe_id) - { + if ($ueb_obj->abgabe_id) + { $ueb_obj->load_abgabe($ueb_obj->abgabe_id); $filename = $ueb_obj->abgabedatei; } @@ -639,27 +640,27 @@ if(isset($_GET['uid']) && $_GET['uid']!='') if ($filename != '') echo "
".$p->t('benotungstool/abgabedatei').": ".$filename."

"; - - + + echo " "; - + //Gesamtpunkte diese Kreuzerlliste $qry = "SELECT sum(punkte) as punktegesamt FROM campus.tbl_beispiel WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER); $punkte_gesamt=0; if($result=$db->db_query($qry)) if($row = $db->db_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=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid)." AND vorbereitet=true"; $punkte_eingetragen=0; if($result=$db->db_query($qry)) if($row = $db->db_fetch_object($result)) $punkte_eingetragen = ($row->punkteeingetragen!=''?$row->punkteeingetragen:0); - - + + //Gesamtpunkte alle Kreuzerllisten in dieser Übung $ueb_help = new uebung($uebung_id); $liste_id = $ueb_help->liste_id; @@ -670,19 +671,19 @@ if(isset($_GET['uid']) && $_GET['uid']!='') if($result=$db->db_query($qry)) if($row = $db->db_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=".$db->db_add_param($lehreinheit_id)." AND - tbl_uebung.liste_id = ".$db->db_add_param($liste_id)." AND + tbl_uebung.liste_id = ".$db->db_add_param($liste_id)." AND tbl_studentbeispiel.student_uid=".$db->db_add_param($uid)." AND vorbereitet=true"; $punkte_eingetragen_alle=0; if($result=$db->db_query($qry)) if($row = $db->db_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=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid)." and liste_id=".$db->db_add_param($liste_id); @@ -690,7 +691,7 @@ if(isset($_GET['uid']) && $_GET['uid']!='') if($result=$db->db_query($qry)) if($row = $db->db_fetch_object($result)) $mitarbeit_alle = ($row->mitarbeitspunkte!=''?$row->mitarbeitspunkte:0); - + //Mitarbeitspunkte $qry = "SELECT mitarbeitspunkte FROM campus.tbl_studentuebung WHERE uebung_id=".$db->db_add_param($uebung_id, FHC_INTEGER)." AND student_uid=".$db->db_add_param($uid); @@ -742,8 +743,8 @@ if(isset($_GET['uid']) && $_GET['uid']!='') "; - - + + echo " @@ -752,18 +753,18 @@ if(isset($_GET['uid']) && $_GET['uid']!='') - + - + "; } else if (is_numeric($_GET['uebung_id'])) { $ueb_obj->load_studentuebung($uid, $uebung_id); - if ($ueb_obj->abgabe_id) - { + if ($ueb_obj->abgabe_id) + { $ueb_obj->load_abgabe($ueb_obj->abgabe_id); $filename = $ueb_obj->abgabedatei; } @@ -790,28 +791,28 @@ if(isset($_GET['uid']) && $_GET['uid']!='') - + - + "; } - echo ""; - echo "\n"; + echo "
"; + echo "\n"; echo " \n"; echo " \n"; echo " \n"; + echo " \n"; echo " \n"; echo "\n"; echo "
\n"; echo " ".$p->t('benotungstool/studentenabgabedatei').":
"; - echo "
"; } else { - + //Übungen benoten $uebung_obj = new uebung(); $uebung_obj->load_uebung($lehreinheit_id,1); @@ -822,15 +823,15 @@ else echo ""; foreach ($uebung_obj->uebungen as $row) { - + if($uebung_id == $row->uebung_id) $selected = 'selected'; else - $selected = ''; - + $selected = ''; + if($uebung_id=='') $uebung_id=$row->uebung_id; - + $subuebung_obj = new uebung(); $subuebung_obj->load_uebung($lehreinheit_id,2,$row->uebung_id); if(count($subuebung_obj->uebungen)>0) @@ -840,61 +841,62 @@ else } else $disabled = ''; - + echo "'; - + if(count($subuebung_obj->uebungen)>0) { foreach ($subuebung_obj->uebungen as $subrow) { if($uebung_id=='') $uebung_id=$subrow->uebung_id; - + if($uebung_id == $subrow->uebung_id) $selected = 'selected'; else $selected = ''; - + echo "'; - + } } } - + echo ''; echo " [".$p->t('benotungstool/benoten')."]"; $abgabe_obj = new uebung($uebung_id); if ($abgabe_obj->abgabe && glob(BENOTUNGSTOOL_PATH."abgabe/*_[WS]S[0-9][0-9][0-9][0-9]_".$uebung_id."_*")) { - $date = date('Y-m-d_H:i:s'); + $date = date('Y-m-d_H:i:s'); $downloadname = makeUploadName($db, $which="zip", $lehreinheit_id, $uebung_id, $stsem, $uid=null, $date); - $downloadname = mb_ereg_replace($uebung_id, ereg_replace(" ","_",$abgabe_obj->bezeichnung), $downloadname); + $downloadname = str_replace($uebung_id, str_replace(" ","_",$abgabe_obj->bezeichnung), $downloadname); + $downloadname = preg_replace('/[^A-Za-z0-9\-_]/', '',$downloadname); echo " [".$p->t('benotungstool/abgabenDownloaden')."]"; } else echo "[".$p->t('benotungstool/keineAbgabenVerfuegbar')."]"; - + echo ''; } - - - - + + + + echo "


"; //Studentenliste echo $p->t('benotungstool/bitteWaehlenSieDenStudentenAus')."
"; @@ -907,14 +909,14 @@ else       - + ".$p->t('global/uid')." ".$p->t('global/nachname')." ".$p->t('global/vorname')." ".$p->t('benotungstool/studentenansicht')." - +   @@ -922,7 +924,7 @@ else     "; - /* + /* if($row_grp->gruppe_kurzbz!='') { echo " @@ -945,16 +947,16 @@ else " ORDER BY nachname, vorname"; } */ - // studentenquery + // studentenquery $qry_stud = "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 = $db->db_query($qry_stud)) { $i=1; while($row_stud = $db->db_fetch_object($result_stud)) { - - + + echo " $row_stud->uid diff --git a/cis/private/lehre/benotungstool/verwaltung_listen.php b/cis/private/lehre/benotungstool/verwaltung_listen.php index 57a149caa..85b1c016e 100644 --- a/cis/private/lehre/benotungstool/verwaltung_listen.php +++ b/cis/private/lehre/benotungstool/verwaltung_listen.php @@ -36,11 +36,11 @@ require_once('functions.inc.php'); require_once('../../../../include/phrasen.class.php'); $sprache = getSprache(); -$p = new phrasen($sprache); +$p = new phrasen($sprache); if (!$db = new basis_db()) die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); - + function microtime_float() { list($usec, $sec) = explode(" ", microtime()); @@ -64,7 +64,7 @@ if(isset($_GET['lehreinheit_id']) && is_numeric($_GET['lehreinheit_id'])) //Lehr $lehreinheit_id = $_GET['lehreinheit_id']; else $lehreinheit_id = ''; - + //Angabedatei ausliefern if (isset($_GET["download"])){ $file=$_GET["download"]; @@ -100,7 +100,7 @@ if (isset($_GET["download"])){ { return confirm('t('gesamtnote/wollenSieWirklichLoeschen');?>'); } - + function set_notenschluessel_prozent() { document.ns.schluessel_punkte_1.value=89; @@ -156,7 +156,7 @@ if (isset($_FILES["angabedatei"])) $angabedatei_up = $_FILES["angabedatei"]["tmp_name"]; else $angabedatei_up = null; - + $beispiel_id = (isset($_GET['beispiel_id'])?$_GET['beispiel_id']:''); $uebung_id = (isset($_GET['uebung_id'])?$_GET['uebung_id']:''); @@ -223,11 +223,11 @@ $stsem_content.= "\n"; //Lehreinheiten laden if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->studiengang_kz) || $rechte->isBerechtigt('lehre',$lv_obj->studiengang_kz)) { - $qry = "SELECT - distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz - FROM + $qry = "SELECT + distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz + FROM lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter - WHERE + WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND @@ -235,11 +235,11 @@ if($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('admin',$lv_obj->st } else { - $qry = "SELECT - distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz - FROM + $qry = "SELECT + distinct lehrfach.kurzbz as lfbez, tbl_lehreinheit.lehreinheit_id, tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz + FROM lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheitmitarbeiter - WHERE + WHERE tbl_lehreinheit.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND tbl_lehreinheit.lehrfach_id = lehrfach.lehrveranstaltung_id AND tbl_lehreinheit.lehreinheit_id = tbl_lehreinheitmitarbeiter.lehreinheit_id AND @@ -384,7 +384,7 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) $error_anzahlderbeispiele = "".$p->t('benotungstool/anzahlDerBeispieleKleiner100').""; $error=true; } - + if ($maxstd != '') { if(!is_numeric($maxstd)) @@ -405,7 +405,7 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) } else $maxstd = null; - + if ($maxbsp != '') { if(!is_numeric($maxbsp)) @@ -427,7 +427,7 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) else $maxbsp = null; } - + $freigabevon_sav = $datum_obj->mktime_datumundzeit($freigabevon); $freigabebis_sav = $datum_obj->mktime_datumundzeit($freigabebis); @@ -462,7 +462,7 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) $uebung_obj->freigabebis = date('Y-m-d H:i',$freigabebis_sav); if (isset($_POST["uebung_neu"])) { - if (isset($_POST["kl_abgabe"])) + if (isset($_POST["kl_abgabe"])) $uebung_obj->abgabe=true; else $uebung_obj->abgabe=false; @@ -487,12 +487,12 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) $uebung_obj->maxbsp = $maxbsp; $uebung_obj->gewicht = $gewicht; $uebung_obj->get_next_nummer(); - $uebung_obj->nummer = $uebung_obj->next_nummer; + $uebung_obj->nummer = $uebung_obj->next_nummer; if($uebung_obj->save(true)) { $uebung_id = $uebung_obj->uebung_id; - + //Angabedatei ablegen if ($angabedatei_up) { @@ -503,12 +503,12 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) //Find occurence of extensions ending with ".tar." if (in_array(substr($_FILES["angabedatei"]["name"], strripos($_FILES["angabedatei"]["name"], '.tar.')), $ext_array)) $extension = substr($_FILES["angabedatei"]["name"], strripos($_FILES["angabedatei"]["name"]+1, '.tar.')); - else + else $extension = $name_up["extension"]; $name_neu = makeUploadName($db, $which='angabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem); $angabedatei = $name_neu.".".$extension; - + $angabepfad = BENOTUNGSTOOL_PATH."angabe/".$angabedatei; //$angabepfad = BENOTUNGSTOOL_PATH.$angabedatei; //unlink($angabepfad); @@ -518,7 +518,7 @@ if(isset($_POST['uebung_neu']) || isset($_POST['abgabe_neu'])) $uebung_obj->save(false); } //Beispiele anlegen - + $error_msg=''; for($i=0;$i<$anzahlderbeispiele;$i++) { @@ -625,7 +625,7 @@ if(isset($_POST['uebung_edit'])) } else $maxstd = null; - + if ($maxbsp != '') { if(!is_numeric($maxbsp)) @@ -646,7 +646,7 @@ if(isset($_POST['uebung_edit'])) } else $maxbsp = null; - + if($freigabevon_sav>$freigabebis_sav) { echo "".$p->t('benotungstool/vonDatumNichtGroesserAlsBisDatum').""; @@ -680,7 +680,7 @@ if(isset($_POST['uebung_edit'])) $extension = $name_up["extension"]; $name_neu = makeUploadName($db, $which='angabe', $lehreinheit_id=$lehreinheit_id, $uebung_id=$uebung_id, $ss=$stsem); $angabedatei_neu = $name_neu.".".$extension; - + $angabepfad = BENOTUNGSTOOL_PATH."angabe/".$angabedatei_neu; //$angabepfad = BENOTUNGSTOOL_PATH.$angabedatei; //unlink($angabepfad); @@ -690,7 +690,7 @@ if(isset($_POST['uebung_edit'])) move_uploaded_file($_FILES['angabedatei']['tmp_name'], $angabepfad); } else - { + { $uebung_akt = new uebung(); $uebung_akt->load($uebung_id); $angabedatei_neu = $uebung_akt->angabedatei; @@ -702,7 +702,7 @@ if(isset($_POST['uebung_edit'])) $uebung_obj->angabedatei=$angabedatei_neu; $uebung_obj->freigabevon = date('Y-m-d H:i',$freigabevon_sav); $uebung_obj->freigabebis = date('Y-m-d H:i',$freigabebis_sav); - if ($uebung_obj->beispiele) + if ($uebung_obj->beispiele) $uebung_obj->abgabe = (isset($_POST['kl_abgabe'])?true:false); //$uebung_obj->beispiele=true; $uebung_obj->bezeichnung=$thema; @@ -749,11 +749,11 @@ if(isset($_POST['liste_edit'])) echo "".$p->t('benotungstool/gewichtMussEineZahlSein').""; $error = true; } - + if(!$error) { - + $uebung_obj = new uebung(); $uebung_obj->load($_GET['liste_id']); $uebung_obj->gewicht=$gewicht; @@ -804,7 +804,7 @@ if(isset($_POST['beispiel_neu']) || isset($_POST['beispiel_edit'])) $beispiel_obj = new beispiel(); if(isset($_POST['beispiel_edit'])) { - $beispiel_obj->load($beispiel_id); + $beispiel_obj->load($beispiel_id); $beispiel_obj->beispiel_id= $beispiel_id; $beispiel_obj->new=false; } @@ -845,7 +845,7 @@ if(isset($_POST['beispiel_neu']) || isset($_POST['beispiel_edit'])) //Uebersichtstabelle if(isset($_GET["uebung_id"]) && $_GET["uebung_id"]!='') { - + echo ""; - + if ($uebung_obj->beispiele){ echo ""; echo""; echo ""; - } + } else if ($uebung_obj->abgabe) { echo ""; echo ""; } - if ($uebung_obj->beispiele) + if ($uebung_obj->beispiele) echo""; echo ""; echo ""; @@ -900,25 +901,25 @@ if(isset($_GET["uebung_id"]) && $_GET["uebung_id"]!='') echo "\n"; echo "
"; //Bearbeiten der ausgewaehlten Uebung echo "
\n"; @@ -857,23 +857,24 @@ if(isset($_GET["uebung_id"]) && $_GET["uebung_id"]!='') //$downloadname = mb_ereg_replace($uebung_id,ereg_replace(' ','_',$uebung_obj->bezeichnung), $uebung_obj->angabedatei); $downloadname = mb_str_replace(' ', '_', $uebung_obj->bezeichnung); $downloadname = mb_str_replace($uebung_id, $downloadname, $uebung_obj->angabedatei); + $downloadname = preg_replace('/[^A-Za-z0-9\-_.]/', '',$downloadname); echo "
".$p->t('benotungstool/thema')."$error_thema
".$p->t('benotungstool/freigabe')."von mktime_fromtimestamp($uebung_obj->freigabevon))."'>
".$p->t('benotungstool/format')."bis mktime_fromtimestamp($uebung_obj->freigabebis))."'>
".$p->t('benotungstool/maxStudentenBeispiel')."$error_maxstd
".$p->t('benotungstool/maxBeispieleStudent')."$error_maxbsp
".$p->t('benotungstool/abgabe')." abgabe?'checked':'').">
".$p->t('benotungstool/gewicht')."$error_gewicht
".$p->t('benotungstool/positiv')." positiv?'checked':'').">
".$p->t('benotungstool/statistikFuerStudentenAnzeigen')." statistik?'checked':'').">
".$p->t('benotungstool/angabeidatei')."
\n"; echo "\n\n"; - + echo ""; echo ""; - + echo "
".$p->t('benotungstool/neuesBeispielAnlegen')."
 
".$p->t('global/bezeichnung')." "; echo " ".$p->t('benotungstool/punkte')."
"; } - + echo ""; - - + + //Uebersicht der Beispiele if ($uebung_obj->beispiele) { echo "
\n"; echo "\n"; echo "\n\n"; - + if($anzahl>0) { echo "\n"; @@ -932,7 +933,7 @@ if(isset($_GET["uebung_id"]) && $_GET["uebung_id"]!='') } else echo ""; - + echo "
".$p->t('benotungstool/vorhandeneBeispiele')."
 
".$p->t('benotungstool/beispiel')."".$p->t('benotungstool/punkte')."".$p->t('benotungstool/auswahl')."
".$p->t('benotungstool/keineBeispieleAngelegt')."
"; } echo ""; @@ -969,10 +970,10 @@ else echo "
\n"; echo "\n"; echo ""; - + $liste_obj = new uebung(); $liste_obj->load($liste_id); - + echo " @@ -980,13 +981,13 @@ else
".$p->t('benotungstool/uebungBearbeiten')." 
 
".$p->t('benotungstool/thema')."$error_thema
".$p->t('benotungstool/gewicht')."$error_gewicht
".$p->t('benotungstool/positiv')." positiv?'checked':'').">
"; } - + //Gesamtuebersicht ueber alle Listen innerhalb der Uebung echo "
"; echo "
"; echo ""; $studentuebung = new uebung(); - if (!$studentuebung->check_studentuebung($liste_id)) + if (!$studentuebung->check_studentuebung($liste_id)) echo ""; $uebung_obj = new uebung(); @@ -1138,10 +1139,10 @@ else $maxstudentenprobeispiel = ''; $maxbeispieleprostudent = ''; $gewicht = 1; - + } echo ""; } - else + else { $htmlstr .= " "; } @@ -279,16 +275,16 @@ if(isset($_REQUEST['ok']) || (isset($_REQUEST['aktion']) && $_REQUEST['aktion']= { $zipfile = $row->paabgabe_id.'_'.$row->uid.'.pdf'; } - else + else { $zipfile .= " ".$row->paabgabe_id.'_'.$row->uid.'.pdf'; - } + } } } $htmlstr .= "
".$p->t('benotungstool/vorhandeneAufgabeBearbeiten')."
"; - + if ($anzeigen != 'abgabe' && $anzeigen != 'nada') { echo " @@ -1181,27 +1182,27 @@ else } } } - + if ($anzeigen != "beide") - { + { if ($liste_obj->prozent == 't') { $einheit = " %"; $einheit_link = $p->t('benotungstool/notenschluesselInProzent')." / ".$p->t('benotungstool/punkten').""; - } + } else { $einheit=" ".$p->t('benotungstool/punkte'); $einheit_link = $p->t('benotungstool/notenschluesselIn')." ".$p->t('benotungstool/prozentPunkten'); } - + echo "\n"; echo "\n"; echo ""; echo ""; - echo ""; + echo ""; + echo ""; echo "\n"; echo ""; echo ""; @@ -1215,14 +1216,14 @@ else echo "
"; echo ""; echo ""; - + echo "
".$p->t('benotungstool/notenschluesselDefinieren')."
"; echo $einheit_link; - echo "
 
".$p->t('benotungstool/note')."".$p->t('benotungstool/minimum')."
$einheit
"; } } if(!isset($_POST['uebung_neu'])) $thema = "Abgabe ".($anzahl<9?'0'.($anzahl+1):($anzahl+1)); - + if ($anzeigen != 'beispiele' && $anzeigen != 'nada') { echo " diff --git a/cis/private/lehre/benotungstool/zipdownload_benotungstool.php b/cis/private/lehre/benotungstool/zipdownload_benotungstool.php index e3b9a9f27..9e177dba7 100755 --- a/cis/private/lehre/benotungstool/zipdownload_benotungstool.php +++ b/cis/private/lehre/benotungstool/zipdownload_benotungstool.php @@ -15,7 +15,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * - * Authors: Christian Paminger , + * Authors: Christian Paminger , * Andreas Oesterreicher * Rudolf Hangl < rudolf.hangl@technikum-wien.at > * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > @@ -28,12 +28,12 @@ require_once('../../../../config/cis.config.inc.php'); require_once('../../../../include/functions.inc.php'); -$user = get_uid(); +$user = get_uid(); if(!check_lektor($user)) die('Sie haben keine Berechtigung fuer diese Seite'); -//Gueltigkeit der Parameter pruefen +//Gueltigkeit der Parameter pruefen if(!isset($_GET['uebung_id']) || !is_numeric($_GET['uebung_id'])) { die('Fehler bei der Parameteruebergabe'); @@ -62,24 +62,30 @@ if(mb_strstr($downloadname,'..')) //Pfade bauen $pfad = BENOTUNGSTOOL_PATH.'abgabe/'; $filename = 'download_'.$user.'_'.$downloadname.'.zip'; +$filename_tmp = 'download_'.$user.'_'.$uebung_id.'.zip'; -if(!check_filename($filename)) +if(!check_filename($filename) || !check_filename($filename_tmp)) die('Ungueltiger Parameter gefunden'); //Pfad wechseln -chdir($pfad); +if(chdir($pfad)) +{ + //File loeschen falls es existiert + //if(file_exists("download_".$user."*")) + exec('rm download_'.$user.'*'); -//File loeschen falls es existiert -//if(file_exists("download_".$user."*")) -exec('rm download_'.$user.'*'); - -//Zip File erstellen -exec("zip -r ".escapeshellarg($filename).' *_[WS]S[0-9][0-9][0-9][0-9]_'.$uebung_id.'_*'); + //Zip File erstellen + exec("zip -r ".escapeshellarg($filename_tmp).' *_[WS]S[0-9][0-9][0-9][0-9]_'.$uebung_id.'_*'); -//Auf Zip File Verweisen -//header("Location: $pfad$filename"); -header('Content-Type: application/octet-stream'); -header('Content-disposition: attachment; filename="'.$filename.'"'); -readfile($filename); -unlink($filename); + //Auf Zip File Verweisen + //header("Location: $pfad$filename"); + header('Content-Type: application/octet-stream'); + header('Content-disposition: attachment; filename="'.$filename.'"'); + readfile($filename_tmp); + unlink($filename_tmp); +} +else +{ + die('Path change failed'); +} ?> diff --git a/cis/private/tools/projektabgabe.php b/cis/private/tools/projektabgabe.php index 7e2e7aaab..afbdf3bd7 100644 --- a/cis/private/tools/projektabgabe.php +++ b/cis/private/tools/projektabgabe.php @@ -22,7 +22,7 @@ */ /******************************************************************************************************* * projektabgabe - * projektabgabe ermöglicht den Download aller Abgaben eines Stg. + * projektabgabe ermöglicht den Download aller Abgaben eines Stg. * fuer Diplom- und Bachelorarbeiten *******************************************************************************************************/ @@ -53,12 +53,12 @@ if(!is_numeric($stg_kz) && $stg_kz!='') $abgabetyp=(isset($_REQUEST['abgabetyp'])?$_REQUEST['abgabetyp']:''); $termin=(isset($_REQUEST['termin'])?$_REQUEST['termin']:''); - + $htmlstr=''; $datum_obj = new datum(); $user = get_uid(); $rechte = new benutzerberechtigung(); -$rechte->getBerechtigungen($user); +$rechte->getBerechtigungen($user); $berechtigung_kurzbz = 'lehre/abgabetool:download'; if(isset($_GET['id']) && isset($_GET['uid'])) @@ -67,14 +67,14 @@ if(isset($_GET['id']) && isset($_GET['uid'])) { if(!is_numeric($_GET['id']) || $_GET['id']=='') die($p->t('global/fehlerBeiDerParameteruebergabe')); - + $file = $_GET['id'].'_'.$_GET['uid'].'.pdf'; $filename = PAABGABE_PATH.$file; header('Content-Type: application/octet-stream'); header('Content-disposition: attachment; filename="'.$file.'"'); readfile($filename); } - else + else { die($p->t('global/keineBerechtigungFuerDieseSeite')); } @@ -84,8 +84,7 @@ if(isset($_GET['id']) && isset($_GET['uid'])) if($aktion!='zip') { - echo ' - + echo ' '.$p->t('abgabetool/projektabgabeUebersicht').' @@ -97,22 +96,22 @@ if($aktion!='zip')

'.$p->t('abgabetool/projektabgabeUebersicht').'

'; - + $s = new studiengang(); $s->loadArray($rechte->getStgKz($berechtigung_kurzbz),'typ,kurzbz'); - + echo'
'; echo $p->t('global/studiengang').": "; - - - $qry_termin=" SELECT distinct campus.tbl_paabgabe.datum as termin , to_char(campus.tbl_paabgabe.datum, 'DD-MM-YYYY') as termin_anzeige - FROM lehre.tbl_projektarbeit - JOIN campus.tbl_paabgabe USING(projektarbeit_id) - LEFT JOIN public.tbl_benutzer ON(uid=student_uid) - LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id) - LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) - LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) - LEFT JOIN public.tbl_studiengang USING(studiengang_kz) - WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom') - - "; - //AND public.tbl_benutzer.aktiv - if ($stg_kz!='') - $qry_termin.=" AND public.tbl_studiengang.studiengang_kz='$stg_kz'"; - if ($abgabetyp!='') - $qry_termin.=" AND campus.tbl_paabgabe.paabgabetyp_kurzbz='$abgabetyp'"; - $qry_termin.=" ORDER BY termin desc"; - + $qry_termin=" SELECT distinct campus.tbl_paabgabe.datum as termin , to_char(campus.tbl_paabgabe.datum, 'DD-MM-YYYY') as termin_anzeige + FROM lehre.tbl_projektarbeit + JOIN campus.tbl_paabgabe USING(projektarbeit_id) + LEFT JOIN public.tbl_benutzer ON(uid=student_uid) + LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id) + LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) + LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) + LEFT JOIN public.tbl_studiengang USING(studiengang_kz) + WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom') + "; + //AND public.tbl_benutzer.aktiv + if ($stg_kz!='') + $qry_termin.=" AND public.tbl_studiengang.studiengang_kz=".$db->db_add_param($stg_kz, FHC_INTEGER); + if ($abgabetyp!='') + $qry_termin.=" AND campus.tbl_paabgabe.paabgabetyp_kurzbz=".$db->db_add_param($abgabetyp); + $qry_termin.=" ORDER BY termin desc"; + echo ' '.$p->t('abgabetool/termin').' '; - + ?> - + $('#termin').html(output); + $('#termin').result(function(event, data, formatted) {}).focus(); + } + } + ); + } + t('global/anzeigen')."' onclick=\"f=document.abgabeFrm;f.aktion.value='';\"> 

"; } - + ##if($stg_kz!='' || $abgabetyp!='' || $termin!='') if(isset($_REQUEST['ok']) || (isset($_REQUEST['aktion']) && $_REQUEST['aktion']=='zip')) @@ -207,20 +203,20 @@ if(isset($_REQUEST['ok']) || (isset($_REQUEST['aktion']) && $_REQUEST['aktion']= { die($p->t('global/studiengangKonnteNichtGefundenWerden')); } - + if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt($berechtigung_kurzbz, $s->oe_kurzbz)) { $qry=""; - - $qry.=" SELECT public.tbl_studiengang.bezeichnung as stgbez, campus.tbl_paabgabe.datum as termin,* FROM lehre.tbl_projektarbeit + + $qry.=" SELECT public.tbl_studiengang.bezeichnung as stgbez, campus.tbl_paabgabe.datum as termin,* FROM lehre.tbl_projektarbeit JOIN campus.tbl_paabgabe USING(projektarbeit_id) - LEFT JOIN public.tbl_benutzer ON(uid=student_uid) + LEFT JOIN public.tbl_benutzer ON(uid=student_uid) LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id) - LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) - LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) + LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) + LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) LEFT JOIN public.tbl_studiengang USING(studiengang_kz) - WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom') - + WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom') + "; if ($stg_kz!='') @@ -233,7 +229,7 @@ if(isset($_REQUEST['ok']) || (isset($_REQUEST['aktion']) && $_REQUEST['aktion']= if($stg_kz=='' && $abgabetyp=='' && $termin=='') { - $qry.=" limit 100 "; + $qry.=" limit 100 "; } if(!$erg=$db->db_query($qry)) @@ -261,7 +257,7 @@ if(isset($_REQUEST['ok']) || (isset($_REQUEST['aktion']) && $_REQUEST['aktion']= { $htmlstr .= "
uid' target='_blank'>PDF    
"; } - } - else + } + else { die($p->t('global/keineBerechtigungFuerDieseSeite')); } @@ -317,18 +313,18 @@ else header('Content-Type: application/octet-stream'); header('Content-disposition: attachment; filename="Abgabe_'.$s->kuerzel.'.zip"'); $handle = fopen($zipausgabe, "rb"); - - while (!feof($handle)) + + while (!feof($handle)) { echo fread($handle, 1024); } - + fclose($handle); //echo file_get_contents($zipausgabe); - unlink($zipausgabe); + unlink($zipausgabe); } - else + else { echo $p->t('global/dateiExistiertNicht'); } diff --git a/cms/menu/menu_addon_freifaecher.inc.php b/cms/menu/menu_addon_freifaecher.inc.php index 33e04abc4..1e34b05a3 100755 --- a/cms/menu/menu_addon_freifaecher.inc.php +++ b/cms/menu/menu_addon_freifaecher.inc.php @@ -25,6 +25,7 @@ require_once(dirname(__FILE__).'/menu_addon.class.php'); require_once(dirname(__FILE__).'/../../include/functions.inc.php'); require_once(dirname(__FILE__).'/../../include/lehrveranstaltung.class.php'); +require_once(dirname(__FILE__).'/../../include/studiensemester.class.php'); class menu_addon_freifaecher extends menu_addon { @@ -35,6 +36,8 @@ class menu_addon_freifaecher extends menu_addon $this->link=false; $sprache = getSprache(); + $stsem = new studiensemester(); + $stsem = $stsem->getAktOrNext(); $lv_obj = new lehrveranstaltung(); if(!$lv_obj->load_lva('0',null, null,true,false,'bezeichnung')) @@ -44,7 +47,7 @@ class menu_addon_freifaecher extends menu_addon { $this->items[] = array('title'=>$row->bezeichnung_arr[$sprache], 'target'=>'content', - 'link'=>'private/lehre/lesson.php?lvid='.$row->lehrveranstaltung_id, + 'link'=>'private/lehre/lesson.php?lvid='.$row->lehrveranstaltung_id.'&studiensemester_kurzbz='.$stsem, 'name'=>'aktiv?' style="" ':' style=""').'>'.(!$row->aktiv?' ':' ').' '.$this->CutString($row->bezeichnung_arr[$sprache], 21).'' ); } @@ -70,4 +73,4 @@ class menu_addon_freifaecher extends menu_addon } new menu_addon_freifaecher(); -?> \ No newline at end of file +?> diff --git a/include/benutzerfunktion.class.php b/include/benutzerfunktion.class.php index 9a08a1b0b..08270da67 100644 --- a/include/benutzerfunktion.class.php +++ b/include/benutzerfunktion.class.php @@ -131,9 +131,15 @@ class benutzerfunktion extends basis_db */ public function getBenutzerFunktion($uid, $funktion_kurzbz, $oe_kurzbz) { - $qry = "SELECT * FROM public.tbl_benutzerfunktion - WHERE uid=".$this->db_add_param($uid)." AND funktion_kurzbz=".$this->db_add_param($funktion_kurzbz)." - AND oe_kurzbz=".$this->db_add_param($oe_kurzbz); + $qry = "SELECT + bfunk.*, stg.studiengang_kz + FROM + public.tbl_benutzerfunktion AS bfunk + INNER JOIN public.tbl_studiengang AS stg ON(stg.oe_kurzbz = bfunk.oe_kurzbz) + WHERE + bfunk.uid=".$this->db_add_param($uid)." + AND bfunk.funktion_kurzbz=".$this->db_add_param($funktion_kurzbz)." + AND bfunk.oe_kurzbz=".$this->db_add_param($oe_kurzbz); if($result = $this->db_query($qry)) { diff --git a/include/vendor_custom/easyui/icon.css b/include/vendor_custom/easyui/icon.css index 0b15469c2..38967a835 100755 --- a/include/vendor_custom/easyui/icon.css +++ b/include/vendor_custom/easyui/icon.css @@ -1,12 +1,12 @@ .icon-fhc-chart{ - background:url('../../../skin/images/Graphs_clip_art.svg') no-repeat center center; + background:url('../../../skin/images/Chart.svg') no-repeat center center; background-size: 16px 16px; } .icon-fhc-report{ - background:url('../../../skin/images/x-office-presentation.svg') no-repeat center center; + background:url('../../../skin/images/Report.svg') no-repeat center center; background-size: 16px 16px; } .icon-fhc-statistik{ - background:url('../../../skin/images/x-office-spreadsheet.svg') no-repeat center center; + background:url('../../../skin/images/Statistik.svg') no-repeat center center; background-size: 16px 16px; } diff --git a/skin/images/Chart.svg b/skin/images/Chart.svg new file mode 100644 index 000000000..91beaf369 --- /dev/null +++ b/skin/images/Chart.svg @@ -0,0 +1,165 @@ + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/skin/images/Filter.svg b/skin/images/Filter.svg new file mode 100644 index 000000000..7667ca554 --- /dev/null +++ b/skin/images/Filter.svg @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/skin/images/Report.svg b/skin/images/Report.svg new file mode 100644 index 000000000..422faa343 --- /dev/null +++ b/skin/images/Report.svg @@ -0,0 +1,480 @@ + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/skin/images/Statistik.svg b/skin/images/Statistik.svg new file mode 100644 index 000000000..8df81c229 --- /dev/null +++ b/skin/images/Statistik.svg @@ -0,0 +1,571 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vilesci/bis/studentenmeldung.php b/vilesci/bis/studentenmeldung.php index b51a8b0ad..4693f1c55 100644 --- a/vilesci/bis/studentenmeldung.php +++ b/vilesci/bis/studentenmeldung.php @@ -927,7 +927,7 @@ function GenerateXMLStudentBlock($row) $gsblock.=" ".$rowgs->mobilitaetsprogramm_code." - ".sprintf('%04s',$rowgs->programm_code)." + ".$rowgs->programm_code." ".$studtyp." ".$rowgs->partner_code." ".$rowgs->ausbildungssemester." diff --git a/vilesci/statistik/filter_overview.php b/vilesci/statistik/filter_overview.php index eda34f67c..fa716399f 100644 --- a/vilesci/statistik/filter_overview.php +++ b/vilesci/statistik/filter_overview.php @@ -117,7 +117,7 @@ if (!$filter->loadAll()) filter_id ?> - +