diff --git a/cis/private/lehre/notenliste.php b/cis/private/lehre/notenliste.php index 8edd1152d..65a1128a4 100644 --- a/cis/private/lehre/notenliste.php +++ b/cis/private/lehre/notenliste.php @@ -34,6 +34,7 @@ require_once('../../../include/phrasen.class.php'); require_once('../../../include/studiengang.class.php'); require_once('../../../include/lehrveranstaltung.class.php'); require_once('../../../include/pruefung.class.php'); +require_once('../../../include/benutzerberechtigung.class.php'); $sprache = getSprache(); $p = new phrasen($sprache); @@ -71,6 +72,23 @@ else $stsem = ''; $user = get_uid(); + +if(isset($_GET['uid'])) +{ + // Administratoren duerfen die UID als Parameter uebergeben um die Notenliste + // von anderen Personen anzuzeigen + + $rechte = new benutzerberechtigung(); + $rechte->getBerechtigungen($user); + if($rechte->isBerechtigt('admin')) + { + $user = $_GET['uid']; + $getParam = "&uid=" . $user; + } + else + $getParam = ""; +} + $datum_obj = new datum(); $error = ''; @@ -118,12 +136,13 @@ else echo "".$p->t('global/name').": $vorname $nachname
"; echo "".$p->t('global/studiengang').": $stg_name
"; echo "".$p->t('global/studiensemester')."
"; @@ -131,7 +150,15 @@ else echo "
"; //Lehrveranstaltungen und Noten holen - $qry = "SELECT + if($stsem != "alle") + { + $sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." + AND (tbl_lvgesamtnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." OR tbl_lvgesamtnote.studiensemester_kurzbz is null) "; + } + else + $sqlFilter = ""; + + $qry = "SELECT tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte, tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte, tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum, @@ -142,9 +169,8 @@ else campus.tbl_lvgesamtnote USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz) WHERE - tbl_zeugnisnote.student_uid = ".$db->db_add_param($user)." - AND tbl_zeugnisnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." - AND (tbl_lvgesamtnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." OR tbl_lvgesamtnote.studiensemester_kurzbz is null) + tbl_zeugnisnote.student_uid = ".$db->db_add_param($user) + .$sqlFilter." AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id ORDER BY bezeichnung"; diff --git a/cis/private/profile/studienerfolgsbestaetigung.php b/cis/private/profile/studienerfolgsbestaetigung.php index a499f8fa3..b7418075c 100644 --- a/cis/private/profile/studienerfolgsbestaetigung.php +++ b/cis/private/profile/studienerfolgsbestaetigung.php @@ -38,7 +38,7 @@ $uid=get_uid(); if(isset($_GET['uid'])) { - // Administratoren duerfen die UID als Parameter uebergeben um den Studienplan + // Administratoren duerfen die UID als Parameter uebergeben um die Studienerfolgsbestätigung // von anderen Personen anzuzeigen $rechte = new benutzerberechtigung(); diff --git a/content/fas.xul.php b/content/fas.xul.php index 97fcb588c..c5a58bdb0 100644 --- a/content/fas.xul.php +++ b/content/fas.xul.php @@ -148,7 +148,7 @@ foreach($addon_obj->result as $addon) - + @@ -733,11 +733,11 @@ foreach($addon_obj->result as $addon) command = "menu-cis-studienplan:command" accesskey = "&menu-cis-studienplan.accesskey;"/> + id = "menu-cis-notenliste" + key = "menu-cis-notenliste:key" + label = "&menu-cis-notenliste.label;" + command = "menu-cis-notenliste:command" + accesskey = "&menu-cis-notenliste.accesskey;"/> diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php index 76c7848e8..97fe5c8f4 100644 --- a/content/student/studentoverlay.js.php +++ b/content/student/studentoverlay.js.php @@ -5423,13 +5423,13 @@ function StudentCisStudienplan(event) var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid"; var uid = tree.view.getCellText(tree.currentIndex,col); - window.open('cis/private/profile/studienplan.php?uid='+uid); + window.open('cis/private/profile/studienplan.php?uid='+uid); } // **** -// * Öffnet die Studienerfolgsbestätigung des Studenten im CIS +// * Öffnet die Notenliste des Studenten im CIS // **** -function StudentCisStudienerfolg(event) +function StudentCisNotenliste(event) { var tree = document.getElementById('student-tree'); if (tree.currentIndex == -1) @@ -5441,5 +5441,5 @@ function StudentCisStudienerfolg(event) var col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid"; var uid = tree.view.getCellText(tree.currentIndex,col); - window.open('cis/private/profile/studienerfolgsbestaetigung.php?uid='+uid); + window.open('cis/private/lehre/notenliste.php?uid='+uid); } diff --git a/include/pgsql.class.php b/include/pgsql.class.php index 5a286bf60..7bfc118be 100644 --- a/include/pgsql.class.php +++ b/include/pgsql.class.php @@ -353,7 +353,7 @@ class basis_db extends db if ($var == '') return; preg_match_all('/(?<=^\{|,)(([^,"{]*)|\s*"((?:[^"\\\\]|\\\\(?:.|[0-9]+|x[0-9a-f]+))*)"\s*)(,|(? - - - + + + diff --git a/locale/de-SFU/fas.dtd b/locale/de-SFU/fas.dtd index 87a63dff1..3608b4536 100644 --- a/locale/de-SFU/fas.dtd +++ b/locale/de-SFU/fas.dtd @@ -290,9 +290,9 @@ - - - + + +