diff --git a/cis/private/lehre/pruefung/pruefung.js b/cis/private/lehre/pruefung/pruefung.js index 07416a657..d1047ee9c 100644 --- a/cis/private/lehre/pruefung/pruefung.js +++ b/cis/private/lehre/pruefung/pruefung.js @@ -1693,6 +1693,10 @@ function deleteLehrveranstaltungFromPruefung(lvId, pruefung_id) { messageBox("message", "Lehrveranstaltung erfolgreich entfernt", "green", "highlight", 1000); } + else + { + messageBox("message", data.errormsg, "red", "highlight", 1000); + } }).complete(function(){ loadPruefungsDetails(pruefung_id); }); @@ -1720,6 +1724,10 @@ function stornoPruefung(pruefung_id) { messageBox("message", "Prüfung storniert", "green", "highlight", 1000); } + else + { + messageBox("message", data.errormsg, "red", "highlight", 1000); + } }).complete(function(){ loadAllPruefungen(); resetPruefungsverwaltung(); @@ -1776,33 +1784,39 @@ function loadAllPruefungen() }, error: loadError }).success(function(data){ - $("#prfTable tbody").first().html(""); - var tableRow = ""; - data.result.forEach(function(e){ - if(e.storniert === false) - { - tableRow = ""+e.titel+""; - tableRow += ""+e.studiensemester_kurzbz+""; - tableRow += ""; - e.lehrveranstaltungen.forEach(function(f){ - tableRow += f.bezeichnung+"
"; - }); - tableRow+=""; - tableRow+=""; - e.termine.forEach(function(f){ - tableRow += convertDateTime(f.von, "date")+" von "+convertDateTime(f.von, "time")+" bis "+convertDateTime(f.bis, "time")+"
"; - }); - tableRow+=""; - tableRow += ""+e.methode+""; - tableRow += ""+e.pruefungstyp_kurzbz+""; - tableRow += ""+e.einzeln+""; - tableRow += ""+e.mitarbeiter_uid+""; - tableRow += ""+e.storniert+""; - tableRow += ""; - $("#prfTable tbody").first().append(tableRow); - } - - }); + if(data.error != 'true') + { + $("#prfTable tbody").first().html(""); + var tableRow = ""; + data.result.forEach(function(e){ + if(e.storniert === false) + { + tableRow = ""+e.titel+""; + tableRow += ""+e.studiensemester_kurzbz+""; + tableRow += ""; + e.lehrveranstaltungen.forEach(function(f){ + tableRow += f.bezeichnung+"
"; + }); + tableRow+=""; + tableRow+=""; + e.termine.forEach(function(f){ + tableRow += convertDateTime(f.von, "date")+" von "+convertDateTime(f.von, "time")+" bis "+convertDateTime(f.bis, "time")+"
"; + }); + tableRow+=""; + tableRow += ""+e.methode+""; + tableRow += ""+e.pruefungstyp_kurzbz+""; + tableRow += ""+e.einzeln+""; + tableRow += ""+e.mitarbeiter_uid+""; + tableRow += ""+e.storniert+""; + tableRow += ""; + $("#prfTable tbody").first().append(tableRow); + } + }); + } + else + { + messageBox("message", data.errormsg, "red", "highlight", 1000); + } }).complete(function(event, xhr, settings){ if($("#prfTable")[0].hasInitialized !== true) { diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.js b/cis/private/lehre/pruefung/pruefungsbewertung.js index 47edbb69c..6d2900866 100644 --- a/cis/private/lehre/pruefung/pruefungsbewertung.js +++ b/cis/private/lehre/pruefung/pruefungsbewertung.js @@ -89,11 +89,18 @@ function showTeilnehmer(pruefungstermin_id, lehrveranstaltung_id, lehrveranstalt }, error: loadError }).success(function(data){ - data.result.forEach(function(d) + if(data.error != 'true') { - noten += ""; - }); - noten += ""; + data.result.forEach(function(d) + { + noten += ""; + }); + noten += ""; + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + } }).complete(function(event, xhr, settings){ var notenSelect = noten; $.ajax({ @@ -237,7 +244,16 @@ function updateBeurteilung(ele, pruefung_id) }, error: loadError }).success(function(data){ - markAsSaved(ele); + if(data.error != 'true') + { + markAsSaved(ele); + } + else + { + messageBox("message",data.errormsg, "red", "highlight", 1000); + } + + }).complete(function(event, xhr, settings){ }); diff --git a/cis/private/lehre/pruefung/pruefungsbewertung.json.php b/cis/private/lehre/pruefung/pruefungsbewertung.json.php index b3592488a..750628aff 100644 --- a/cis/private/lehre/pruefung/pruefungsbewertung.json.php +++ b/cis/private/lehre/pruefung/pruefungsbewertung.json.php @@ -1,313 +1,370 @@ -getBerechtigungen($uid); - -$studiensemester = new studiensemester(); -$aktStudiensemester = $studiensemester->getaktorNext(); - -$method = filter_input(INPUT_POST, 'method'); - -switch($method) -{ - case 'getPruefungMitarbeiter': - if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) - { - $mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid'); - } - else - { - $mitarbeiter_uid = $uid; - } - $data = getPruefungMitarbeiter($mitarbeiter_uid); - break; - case 'getNoten': - $data = getNoten(); - break; - case 'saveBeurteilung': - $lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id'); - $student_uid = filter_input(INPUT_POST, 'student_uid'); - if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) - { - $mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid'); - } - else - { - $mitarbeiter_uid = $uid; - } - $note = filter_input(INPUT_POST, 'note'); - $pruefung_id = filter_input(INPUT_POST, 'pruefung_id'); - $datum = filter_input(INPUT_POST, 'datum'); - $anmerkung = filter_input(INPUT_POST, 'anmerkung'); - $pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id'); - $data = saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid); - break; - case 'updateBeurteilung': - $pruefung_id = filter_input(INPUT_POST, 'pruefung_id'); - $note = filter_input(INPUT_POST, 'note'); - $anmerkung = filter_input(INPUT_POST, 'anmerkung'); - $data = updateBeurteilung($pruefung_id, $note, $uid, $anmerkung); - break; - case 'loadPruefung': - $pruefung_id = filter_input(INPUT_POST, 'pruefung_id'); - $data = loadPruefung($pruefung_id); - break; - case 'getBeurteilung': - $pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id'); - $data = getBeurteilung($pruefungsanmeldung_id); - break; - case 'getAnmeldungenTermin': - $lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id'); - $pruefungstermin_id = filter_input(INPUT_POST, 'pruefungstermin_id'); - $data = getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id); - break; - default: - break; -} - -echo json_encode($data); - -/** - * Lädt alle Prüfungen eines Lektors/Mitarbeiters - * @param type $uid UID des Lektors/Mitarbeiters - * @return Array - */ -function getPruefungMitarbeiter($uid = null) -{ - $lehrveranstaltung = new lehrveranstaltung(); - if($uid !== null) - { - $lehrveranstaltung->getLVByMitarbeiter($uid); - $result = array(); - foreach($lehrveranstaltung->lehrveranstaltungen as $lv) - { - $pruefung = new pruefungCis(); - $pruefung->getPruefungByLv($lv->lehrveranstaltung_id); - if(!empty($pruefung->lehrveranstaltungen)) - { - foreach($pruefung->lehrveranstaltungen as $tempLv) - { - $prf = new pruefungCis($tempLv->pruefung_id); - $prf->getTermineByPruefung(); - $tempLv->pruefung = $prf; - } - $lv->pruefung = $pruefung; - array_push($result, $lv); - } - } - } - - if(!empty($result)) - { - $data['result']=$result; - $data['error']='false'; - $data['errormsg']=''; - } - else - { - $data['error']='true'; - $data['errormsg']="Keine Prüfungen vorhanden."; - } - return $data; -} - -/** - * Lädt alle Noten per AJAX aus der Datenbank - * @return Array - */ -function getNoten() -{ - $note = new note(); - if($note->getAll()) - { - $data['result']=$note->result; - $data['error']='false'; - $data['errormsg']=''; - } - else - { - $data['error']='true'; - $data['errormsg']=$note->errormsg; - } - return $data; -} - -/** - * Speichert eine Beurteilung - * @param int $lehrveranstaltung_id ID der Lehrveranstaltung - * @param String $student_uid UID des Studenten - * @param String $mitarbeiter_uid UID des Lektors - * @param int $note Prüfungsnote - * @param int $pruefung_id ID der Prüfung - * @param String $datum Datum (YYYY-MM-DD) - * @param String $anmerkung Anmerkung zur Beurteilung - * @param int $pruefungsanmeldung_id ID der Anmeldung - * @param String $uid UID des aktuellen Benutzers - * @return Arrray - */ -function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid) -{ - $pruefungCis = new pruefungCis($pruefung_id); - $lehrveranstaltung = new lehrveranstaltung(); - $lehreinheiten = $lehrveranstaltung->getLehreinheitenOfLv($lehrveranstaltung_id, $student_uid); - $pruefung = new pruefung(); - $pruefung->new = true; - if(!empty($lehreinheiten)) - { - $pruefung->lehreinheit_id = $lehreinheiten[0]; - $pruefung->student_uid = $student_uid; - $pruefung->mitarbeiter_uid = $mitarbeiter_uid; - $pruefung->note = $note; - $pruefung->pruefungstyp_kurzbz = $pruefungCis->pruefungstyp_kurzbz; - $pruefung->datum = $datum; - $pruefung->anmerkung = $anmerkung; - $pruefung->pruefungsanmeldung_id = $pruefungsanmeldung_id; - $pruefung->insertvon = $uid; - $pruefung->insertamum = date('Y-m-d H:i:s'); - - $pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id); - $pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id); - - $datum = new datum(); -// var_dump(date("Y-m-d", time())); -// var_dump($pruefungstermin->von); - if($datum->between("", date("Y-m-d", time()), $pruefungstermin->von)) - { - if($pruefung->save()) - { - $data['result']=$pruefung->pruefung_id; - $data['error']='false'; - $data['errormsg']=''; - } - else - { - $data['error']='true'; - $data['errormsg']=$pruefung->errormsg; - } - } - else - { - $data['error']='true'; - $data['errormsg']="Prüfungstermin liegt nicht in der Vergangenheit."; - } - } - else - { - $data['error']='true'; - $data['errormsg']="Keine Lehreinheiten vorhanden."; - } - - return $data; -} - -/** - * Aktualisiert den Datensatz einer Beurteilung - * @param int $pruefung_id ID der Prüfung - * @param int $note Prüfungsnote - * @param String $uid UID des aktuellen Benutzers - * @return Array - */ -function updateBeurteilung($pruefung_id, $note, $uid, $anmerkung) -{ - $pruefung = new pruefung($pruefung_id); - $pruefung->new = FALSE; - $pruefung->note = $note; - $pruefung->anmerkung = $anmerkung; - $pruefung->updatevon = $uid; - $pruefung->updateamum = date('Y-m-d H:i:s'); - if($pruefung->save()) - { - $data['result']=$pruefung->pruefung_id; - $data['error']='false'; - $data['errormsg']=''; - } - else - { - $data['error']='true'; - $data['errormsg']=$pruefung->errormsg; - } - return $data; -} - -/** - * Lädt die Beurteilung zu einer Anmeldung - * @param int $pruefungsanmeldung_id ID einer Anmeldung - * @return Array - */ -function getBeurteilung($pruefungsanmeldung_id) -{ - $pruefung = new pruefung(); - if($pruefung->getPruefungByAnmeldung($pruefungsanmeldung_id)) - { - $data['result']=$pruefung->pruefung_id; - $data['error']='false'; - $data['errormsg']=''; - } - else - { - $data['error']='true'; - $data['errormsg']=$pruefung->errormsg; - } - return $data; -} - -/** - * Lädt alle Anmeldungen zu einem Prüfungstermin - * @return Array - */ -function getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id) -{ - $pruefungsanmeldung = new pruefungsanmeldung(); - $anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($pruefungstermin_id, $lehrveranstaltung_id); - foreach($anmeldungen as $a) - { - $student = new student($a->uid); - $temp = new stdClass(); - $temp->vorname = $student->vorname; - $temp->nachname = $student->nachname; - $temp->uid = $student->uid; - $a->student = $temp; - $pruefung = new pruefung(); - $pruefung->getPruefungByAnmeldung($a->pruefungsanmeldung_id); - $a->pruefung = $pruefung; - } - if(!empty($anmeldungen)) - { - $data['result']=$anmeldungen; - $data['error']='false'; - $data['errormsg']=''; - } - else - { - $data['error']='true'; - if($pruefungsanmeldung->errormsg !== null) - { - $data['errormsg']=$pruefungsanmeldung->errormsg; - } - else - { - $data['errormsg']= 'Keine Anmeldungen vorhanden'; - } - } - return $data; +getBerechtigungen($uid); + +$studiensemester = new studiensemester(); +$aktStudiensemester = $studiensemester->getaktorNext(); + +$method = filter_input(INPUT_POST, 'method'); + +switch($method) +{ + case 'getPruefungMitarbeiter': + if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) + { + $mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid'); + } + else if($rechte->isBerechtigt('lehre/pruefungsbeurteilung')) + { + $mitarbeiter_uid = $uid; + } + else + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } + $data = getPruefungMitarbeiter($mitarbeiter_uid); + break; + case 'getNoten': + if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && !($rechte->isBerechtigt('lehre/pruefungsbeurteilung'))) + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } + $data = getNoten(); + break; + case 'saveBeurteilung': + $lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id'); + $student_uid = filter_input(INPUT_POST, 'student_uid'); + if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) + { + $mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid'); + } + else if($rechte->isBerechtigt('lehre/pruefungsbeurteilung')) + { + $mitarbeiter_uid = $uid; + } + else + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } + $note = filter_input(INPUT_POST, 'note'); + $pruefung_id = filter_input(INPUT_POST, 'pruefung_id'); + $datum = filter_input(INPUT_POST, 'datum'); + $anmerkung = filter_input(INPUT_POST, 'anmerkung'); + $pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id'); + $data = saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid); + break; + case 'updateBeurteilung': + if($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) + { + $mitarbeiter_uid = filter_input(INPUT_POST, 'mitarbeiter_uid'); + } + else if($rechte->isBerechtigt('lehre/pruefungsbeurteilung')) + { + $mitarbeiter_uid = $uid; + } + else + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } + $pruefung_id = filter_input(INPUT_POST, 'pruefung_id'); + $note = filter_input(INPUT_POST, 'note'); + $anmerkung = filter_input(INPUT_POST, 'anmerkung'); + $data = updateBeurteilung($pruefung_id, $note, $mitarbeiter_uid, $anmerkung); + break; + case 'loadPruefung': + if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && ($rechte->isBerechtigt('lehre/pruefungsbeurteilung'))) + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } + $pruefung_id = filter_input(INPUT_POST, 'pruefung_id'); + $data = loadPruefung($pruefung_id); + break; + case 'getBeurteilung': + if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && !($rechte->isBerechtigt('lehre/pruefungsbeurteilung'))) + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } + $pruefungsanmeldung_id = filter_input(INPUT_POST, 'pruefungsanmeldung_id'); + $data = getBeurteilung($pruefungsanmeldung_id); + break; + case 'getAnmeldungenTermin': + if(!($rechte->isBerechtigt('lehre/pruefungsbeurteilungAdmin')) && !($rechte->isBerechtigt('lehre/pruefungsbeurteilung'))) + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } + $lehrveranstaltung_id = filter_input(INPUT_POST, 'lehrveranstaltung_id'); + $pruefungstermin_id = filter_input(INPUT_POST, 'pruefungstermin_id'); + $data = getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id); + break; + default: + break; +} + +echo json_encode($data); + +/** + * Lädt alle Prüfungen eines Lektors/Mitarbeiters + * @param type $uid UID des Lektors/Mitarbeiters + * @return Array + */ +function getPruefungMitarbeiter($uid = null) +{ + $lehrveranstaltung = new lehrveranstaltung(); + if($uid !== null) + { + $lehrveranstaltung->getLVByMitarbeiter($uid); + $result = array(); + foreach($lehrveranstaltung->lehrveranstaltungen as $lv) + { + $pruefung = new pruefungCis(); + $pruefung->getPruefungByLv($lv->lehrveranstaltung_id); + if(!empty($pruefung->lehrveranstaltungen)) + { + foreach($pruefung->lehrveranstaltungen as $tempLv) + { + $prf = new pruefungCis($tempLv->pruefung_id); + $prf->getTermineByPruefung(); + $tempLv->pruefung = $prf; + } + $lv->pruefung = $pruefung; + array_push($result, $lv); + } + } + } + + if(!empty($result)) + { + $data['result']=$result; + $data['error']='false'; + $data['errormsg']=''; + } + else + { + $data['error']='true'; + $data['errormsg']="Keine Prüfungen vorhanden."; + } + return $data; +} + +/** + * Lädt alle Noten per AJAX aus der Datenbank + * @return Array + */ +function getNoten() +{ + $note = new note(); + if($note->getAll()) + { + $data['result']=$note->result; + $data['error']='false'; + $data['errormsg']=''; + } + else + { + $data['error']='true'; + $data['errormsg']=$note->errormsg; + } + return $data; +} + +/** + * Speichert eine Beurteilung + * @param int $lehrveranstaltung_id ID der Lehrveranstaltung + * @param String $student_uid UID des Studenten + * @param String $mitarbeiter_uid UID des Lektors + * @param int $note Prüfungsnote + * @param int $pruefung_id ID der Prüfung + * @param String $datum Datum (YYYY-MM-DD) + * @param String $anmerkung Anmerkung zur Beurteilung + * @param int $pruefungsanmeldung_id ID der Anmeldung + * @param String $uid UID des aktuellen Benutzers + * @return Arrray + */ +function saveBeurteilung($lehrveranstaltung_id, $student_uid, $mitarbeiter_uid, $note, $pruefung_id, $datum, $anmerkung, $pruefungsanmeldung_id, $uid) +{ + $pruefungCis = new pruefungCis($pruefung_id); + $lehrveranstaltung = new lehrveranstaltung(); + $lehreinheiten = $lehrveranstaltung->getLehreinheitenOfLv($lehrveranstaltung_id, $student_uid); + $pruefung = new pruefung(); + $pruefung->new = true; + if(!empty($lehreinheiten)) + { + $pruefung->lehreinheit_id = $lehreinheiten[0]; + $pruefung->student_uid = $student_uid; + $pruefung->mitarbeiter_uid = $mitarbeiter_uid; + $pruefung->note = $note; + $pruefung->pruefungstyp_kurzbz = $pruefungCis->pruefungstyp_kurzbz; + $pruefung->datum = $datum; + $pruefung->anmerkung = $anmerkung; + $pruefung->pruefungsanmeldung_id = $pruefungsanmeldung_id; + $pruefung->insertvon = $uid; + $pruefung->insertamum = date('Y-m-d H:i:s'); + + $pruefungsanmeldung = new pruefungsanmeldung($pruefungsanmeldung_id); + $pruefungstermin = new pruefungstermin($pruefungsanmeldung->pruefungstermin_id); + + $datum = new datum(); +// var_dump(date("Y-m-d", time())); +// var_dump($pruefungstermin->von); + if($datum->between("", date("Y-m-d", time()), $pruefungstermin->von)) + { + if($pruefung->save()) + { + $data['result']=$pruefung->pruefung_id; + $data['error']='false'; + $data['errormsg']=''; + } + else + { + $data['error']='true'; + $data['errormsg']=$pruefung->errormsg; + } + } + else + { + $data['error']='true'; + $data['errormsg']="Prüfungstermin liegt nicht in der Vergangenheit."; + } + } + else + { + $data['error']='true'; + $data['errormsg']="Keine Lehreinheiten vorhanden."; + } + + return $data; +} + +/** + * Aktualisiert den Datensatz einer Beurteilung + * @param int $pruefung_id ID der Prüfung + * @param int $note Prüfungsnote + * @param String $uid UID des aktuellen Benutzers + * @return Array + */ +function updateBeurteilung($pruefung_id, $note, $uid, $anmerkung) +{ + $pruefung = new pruefung($pruefung_id); + $pruefung->new = FALSE; + $pruefung->note = $note; + $pruefung->anmerkung = $anmerkung; + $pruefung->updatevon = $uid; + $pruefung->updateamum = date('Y-m-d H:i:s'); + if($pruefung->save()) + { + $data['result']=$pruefung->pruefung_id; + $data['error']='false'; + $data['errormsg']=''; + } + else + { + $data['error']='true'; + $data['errormsg']=$pruefung->errormsg; + } + return $data; +} + +/** + * Lädt die Beurteilung zu einer Anmeldung + * @param int $pruefungsanmeldung_id ID einer Anmeldung + * @return Array + */ +function getBeurteilung($pruefungsanmeldung_id) +{ + $pruefung = new pruefung(); + if($pruefung->getPruefungByAnmeldung($pruefungsanmeldung_id)) + { + $data['result']=$pruefung->pruefung_id; + $data['error']='false'; + $data['errormsg']=''; + } + else + { + $data['error']='true'; + $data['errormsg']=$pruefung->errormsg; + } + return $data; +} + +/** + * Lädt alle Anmeldungen zu einem Prüfungstermin + * @return Array + */ +function getAnmeldungenTermin($lehrveranstaltung_id, $pruefungstermin_id) +{ + $pruefungsanmeldung = new pruefungsanmeldung(); + $anmeldungen = $pruefungsanmeldung->getAnmeldungenByTermin($pruefungstermin_id, $lehrveranstaltung_id); + foreach($anmeldungen as $a) + { + $student = new student($a->uid); + $temp = new stdClass(); + $temp->vorname = $student->vorname; + $temp->nachname = $student->nachname; + $temp->uid = $student->uid; + $a->student = $temp; + $pruefung = new pruefung(); + $pruefung->getPruefungByAnmeldung($a->pruefungsanmeldung_id); + $a->pruefung = $pruefung; + } + if(!empty($anmeldungen)) + { + $data['result']=$anmeldungen; + $data['error']='false'; + $data['errormsg']=''; + } + else + { + $data['error']='true'; + if($pruefungsanmeldung->errormsg !== null) + { + $data['errormsg']=$pruefungsanmeldung->errormsg; + } + else + { + $data['errormsg']= 'Keine Anmeldungen vorhanden'; + } + } + return $data; } \ No newline at end of file diff --git a/cis/private/lehre/pruefung/pruefungstermin.json.php b/cis/private/lehre/pruefung/pruefungstermin.json.php index f8536061f..ee2d39f76 100644 --- a/cis/private/lehre/pruefung/pruefungstermin.json.php +++ b/cis/private/lehre/pruefung/pruefungstermin.json.php @@ -58,10 +58,17 @@ switch($method) { $mitarbeiter_uid = $_REQUEST["mitarbeiter_uid"]; } - else + else if($rechte->isBerechtigt('lehre/pruefungstermin')) { $mitarbeiter_uid = $uid; } + else + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } $data = savePruefungstermin($mitarbeiter_uid, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $pruefungsintervall); break; case 'getLehrveranstaltungenByMitarbeiter': @@ -90,22 +97,50 @@ switch($method) { $mitarbeiter_uid = $_REQUEST["mitarbeiter_uid"]; } - else + else if($rechte->isBerechtigt('lehre/pruefungstermin')) { $mitarbeiter_uid = $uid; } + else + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } $data = updatePruefungstermin($mitarbeiter_uid, $pruefung_id, $studiensemester_kurzbz, $pruefungsfenster_id, $pruefungstyp_kurzbz, $titel, $beschreibung, $methode, $einzeln, $lehrveranstaltungen, $termine, $termineNeu, $pruefungsintervall); break; case 'deleteLehrveranstaltungFromPruefung': + if(!($rechte->isBerechtigt('lehre/pruefungsterminAdmin')) && !($rechte->isBerechtigt('lehre/pruefungstermin'))) + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } $lvId = $_POST["lehrveranstaltung_id"]; $pruefung_id = $_POST["pruefung_id"]; $data = deleteLehrveranstaltungFromPruefung($lvId, $pruefung_id); break; case 'stornoPruefung': + if(!($rechte->isBerechtigt('lehre/pruefungsterminAdmin')) && !($rechte->isBerechtigt('lehre/pruefungstermin'))) + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } $pruefung_id = $_REQUEST["pruefung_id"]; $data = stornoPruefung($pruefung_id); break; case 'deleteTermin': + if(!($rechte->isBerechtigt('lehre/pruefungsterminAdmin')) && !($rechte->isBerechtigt('lehre/pruefungstermin'))) + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } $pruefung_id = $_REQUEST["pruefung_id"]; $pruefungstermin_id = $_REQUEST["pruefungstermin_id"]; $data = deleteTermin($pruefung_id, $pruefungstermin_id); @@ -115,10 +150,17 @@ switch($method) { $data = getAllPruefungen($_REQUEST["uid"]); } - else + else if($rechte->isBerechtigt('lehre/pruefungstermin')) { $data = getAllPruefungen($uid); } + else + { + $data['result']='false'; + $data['error']='true'; + $data['errormsg']='Sie haben keine Berechtigung.'; + break; + } break; default: break;