/** * Lädt alle Studenten eines gewissen Kriteriums * @param $studiengang * @param $semester * @param $verband * @param $gruppe * @param $authentifizierung */ function getStudentFromStudiengang($studiengang, $semester = null, $verband = null, $gruppe = null, $authentifizierung) { $recht = new webservicerecht(); $user = $authentifizierung->username; $passwort = $authentifizierung->passwort; // User authentifizieren if (!check_user($user, $passwort)) { return new SoapFault("Server", "Invalid Credentials"); } // darf User überhaupt Methode verwenden $recht = new webservicerecht(); if (!$recht->isUserAuthorized($user, 'getStudentFromStudiengang')) { return new SoapFault("Server", "No permission"); } $studentObj = new student(); // Studentendaten $preStudent = new prestudent(); // StudentenStatus $studiensemester = new studiensemester(); // aktuelles Studiensemester $studSemester = $studiensemester->getakt(); $studentObj->result = $studentObj->getStudents($studiengang, $semester, $verband, $gruppe, null, $studSemester); $studentArray = array(); foreach ($studentObj->result as $stud) { $student = new foo(); // Rückgabeobjekt $preStudent->getLastStatus($stud->prestudent_id); $student->studiengang_kz = $stud->studiengang_kz; $student->person_id = $stud->person_id; $student->semester = $stud->semester; $student->verband = $stud->verband; $student->gruppe = $stud->gruppe; $student->vorname = $stud->vorname; $student->nachname = $stud->nachname; $student->uid = $stud->uid; $student->status = $preStudent->status_kurzbz; $student->personenkennzeichen = $stud->matrikelnr; $student->email = $stud->uid . '@' . DOMAIN; $student = $recht->clearResponse($user, 'getStudentFromStudiengang', $student); $studentArray[] = $student; } return $studentArray; }
} elseif ($_REQUEST['parameter_' . $i] == "null") { $parameter[] = null; } else { $parameter[] = $_REQUEST['parameter_' . $i]; } } else { break; } } require_once '../config/vilesci.config.inc.php'; require_once '../include/functions.inc.php'; require_once '../include/webservicerecht.class.php'; require_once '../include/' . $class . '.class.php'; // Berechtigung pruefen $uid = get_uid(); $wsrecht = new webservicerecht(); if (!$wsrecht->isUserAuthorized($uid, $method, $class)) { die('Sie haben keine Berechtigung fuer diesen Vorgang:' . $class . '->' . $method); } // Funktion aufrufen $obj = new $class(); $error = false; // Bei Save Funktionen werden alle Parameter zugewiesen if (mb_stristr($method, 'save')) { $loaddata = json_decode($_REQUEST['loaddata'], true); $savedata = json_decode($_REQUEST['savedata'], true); if (isset($loaddata['method'])) { if (!$wsrecht->isUserAuthorized($uid, $loaddata['method'])) { die('keine Berechtigung'); } // Bearbeiten
function getLehrveranstaltungFromStudiengang($studiengang, $semester, $ausbildungssemester, $authentifizierung) { $user = $authentifizierung->username; $passwort = $authentifizierung->passwort; if ($studiengang == '' || $semester == '') { return new SOAPFault("Server", "studiengang | semester must be set"); } // User authentifizieren if (!check_user($user, $passwort)) { return new SoapFault("Server", "Invalid Credentials"); } // darf user überhaupt was von Methode sehen $recht = new webservicerecht(); if (!$recht->isUserAuthorized($user, 'getLehrveranstaltungFromStudiengang')) { return new SoapFault("Server", "No permission"); } // Daten für Lehrveranstaltung $lehrveranstaltung = new lehrveranstaltung(); $stud = new studiengang(); if (!$stud->load($studiengang)) { return new SoapFault("Server", "Error loading Studiengang"); } if (!$lehrveranstaltung->load_lva_le($stud->studiengang_kz, $semester, $ausbildungssemester)) { return new SoapFault("Server", "Error loading Lv"); } class bar { } $lvFromStudiengang = array(); foreach ($lehrveranstaltung->lehrveranstaltungen as $lv) { $mitarbeiterlehreinheit = array(); // uids aller mitarbeiter der lehreinheit $gruppelehreinheit = array(); // ids aller grupper der lehreinheit $moodleArray = array(); // hole alle Lehreinheiten von Lehrveranstaltung $lehreinheit = new lehreinheit(); if (!$lehreinheit->load_lehreinheiten($lv->lehrveranstaltung_id, $semester)) { return new SoapFault("Server", $lehreinheit->errormsg); } foreach ($lehreinheit->lehreinheiten as $l) { // alle mitarbeiter der lehreinheit $mitarbeiter = new lehreinheitmitarbeiter(); $mitarbeiter->getLehreinheitmitarbeiter($l->lehreinheit_id); foreach ($mitarbeiter->lehreinheitmitarbeiter as $m) { $mitarbeiterlehreinheit[] = $m->mitarbeiter_uid; } // alle gruppen der lehreinheit $gruppe = new lehreinheitgruppe(); $gruppe->getLehreinheitgruppe($l->lehreinheit_id); foreach ($gruppe->lehreinheitgruppe as $g) { $grp = new bar(); $grp->studiengang_kz = $g->studiengang_kz; $grp->semester = $g->semester; $grp->verband = $g->verband; $grp->gruppe = $g->gruppe; $grp->grupppe_kurzbz = $g->gruppe_kurzbz; $gruppelehreinheit[] = $grp; } } // alle moodlekurse der lehrveranstaltung $moodleArray = $lv->getMoodleKurse($lv->lehrveranstaltung_id, $semester); // LV Object für Rückgabe $lehrveranstaltungen = new bar(); $lehrveranstaltungen->bezeichnung = $lv->bezeichnung; $lehrveranstaltungen->lehreverzeichnis = $lv->lehreverzeichnis; $lehrveranstaltungen->moodle_id = $moodleArray; $lehrveranstaltungen->lektoren = $mitarbeiterlehreinheit; $lehrveranstaltungen->gruppen = $gruppelehreinheit; $lehrveranstaltungen = $recht->clearResponse($user, 'getLehrveranstaltungFromStudiengang', $lehrveranstaltungen); $lvFromStudiengang[] = $lehrveranstaltungen; } return $lvFromStudiengang; }