/** * Prüft ob das Modul für den Studierenden abgeschlossen ist * @param $uid UID des Studierenden * @param $studienplan_lehrveranstaltung_id ID der Lehrveranstaltungszuordnung */ public function isAbgeschlossen($uid, $studienplan_lehrveranstaltung_id) { $this->debug('Teste Abschluss für ' . $uid, 2); $ects = 0; $retval = true; if ($result = $this->getLVRegelTree($studienplan_lehrveranstaltung_id)) { list($retval, $ects) = $this->TestRegeln($uid, $result, null); } else { // Keine Regeln vorhanden return true; } $stpllv = new studienplan(); $stpllv->loadStudienplanLehrveranstaltung($studienplan_lehrveranstaltung_id); $lv = new lehrveranstaltung(); $lv->load($stpllv->lehrveranstaltung_id); $this->debug('Abgeschlossen:' . $retval . ' ECTS:' . $ects, 1); if ($ects >= $lv->ects) { return true; } else { return false; } }
$lvregel_id_alt = $regel_obj->lvregel_id; if ($regel_obj->save()) { // Alte und neue ID Speichern damit danach die Parents gesetzt werden koennen $lvregel_ID_Array[$lvregel_id_alt] = $regel_obj->lvregel_id; } } } } } // Damit die Parent Eintraege korrekt gesetzt werden koennen, muessen zuerst die uebergeordneten // Eintraege in der Datenbank vorhanden sein. Deshalb werden zuerst alle Eintraege angelegt // und danach die Parent Keys korrekt gesetzt. // Alle neuen LVZuordnungen nochmals durchlaufen und die parents korrekt setzen foreach ($stpllv_ID_Array as $studienplan_lehrveranstaltung_id) { $stpllv_obj = new studienplan(); if ($stpllv_obj->loadStudienplanLehrveranstaltung($studienplan_lehrveranstaltung_id)) { if ($stpllv_obj->studienplan_lehrveranstaltung_id_parent != '') { $stpllv_obj->studienplan_lehrveranstaltung_id_parent = $stpllv_ID_Array[$stpllv_obj->studienplan_lehrveranstaltung_id_parent]; $stpllv_obj->saveStudienplanLehrveranstaltung(); } } } // Alle neuen LVRegeln nochmals durchlaufen und die parents korrekt setzen foreach ($lvregel_ID_Array as $lvregel_id) { $lvregel_obj = new lvregel(); if ($lvregel_obj->load($lvregel_id)) { if ($lvregel_obj->lvregel_id_parent != '') { $lvregel_obj->lvregel_id_parent = $lvregel_ID_Array[$lvregel_obj->lvregel_id_parent]; $lvregel_obj->save(); } }
$oRdf->obj[$i]->setAttribut('studienplan_bezeichnung', $row_lva->studienplan_bezeichnung); $oRdf->obj[$i]->setAttribut('lehrtyp_kurzbz', $row_lva->lehrtyp_kurzbz); $oRdf->obj[$i]->setAttribut('lehreinheit_id', ''); $oRdf->obj[$i]->setAttribut('lehrform_kurzbz', $row_lva->lv_lehrform_kurzbz); $oRdf->obj[$i]->setAttribut('stundenblockung', ''); $oRdf->obj[$i]->setAttribut('wochenrythmus', ''); $oRdf->obj[$i]->setAttribut('startkw', ''); $oRdf->obj[$i]->setAttribut('raumtyp', ''); $oRdf->obj[$i]->setAttribut('raumtypalternativ', ''); $oRdf->obj[$i]->setAttribut('gruppen', ''); $oRdf->obj[$i]->setAttribut('lektoren', $fbk); $oRdf->obj[$i]->setAttribut('fachbereich', ''); if (isset($row_lva->studienplan_lehrveranstaltung_id_parent) && $row_lva->studienplan_lehrveranstaltung_id_parent != '') { // Wenn ein Parent vorhanden ist, wird er diesem untergeordnet $stpllv = new studienplan(); if ($stpllv->loadStudienplanLehrveranstaltung($row_lva->studienplan_lehrveranstaltung_id_parent)) { $oRdf->addSequence($row_lva->lehrveranstaltung_id, $stpllv->lehrveranstaltung_id); } } else { $oRdf->addSequence($row_lva->lehrveranstaltung_id); } //zugehoerige LE holen $le = new lehreinheit(); if (!$le->load_lehreinheiten($row_lva->lehrveranstaltung_id, $semester_aktuell, $uid, $fachbereich_kurzbz)) { echo "Fehler: {$le->errormsg}"; } foreach ($le->lehreinheiten as $row_le) { //Lehrfach holen $qry = "SELECT kurzbz, bezeichnung FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id='{$row_le->lehrfach_id}'"; $result_lf = $db->db_query($qry); $row_lf = $db->db_fetch_object($result_lf);
$obj->insertvon = $uid; $obj->insertamum = date('Y-m-d H:i:s'); } if (!$error) { // Attribute zuweisen zum Speichern foreach ($savedata as $key => $value) { $obj->{$key} = $value; } } } elseif (mb_stristr($method, 'delete')) { if (!$rechte->isBerechtigt("lehre/studienordnung")) { if (!$rechte->isBerechtigt("lehre/studienordnungInaktiv")) { die('Sie haben keine Berechtigung fuer diesen Vorgang. Recht: lehre/studienordnung'); } else { $studienplan = new studienplan(); $studienplan->loadStudienplanLehrveranstaltung($_REQUEST['parameter_0']); $studienordnung = new studienordnung(); $studienordnung->getStudienordnungFromStudienplan($studienplan->studienplan_id); if ($studienordnung->isAktiv($studienordnung->studienordnung_id)) { die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.'); } } } } $return = ''; if (!$error && ($return = call_user_func_array(array($obj, $method), $parameter))) { $data['result'] = $obj->cleanResult(); $data['return'] = $return; $data['error'] = 'false'; $data['errormsg'] = ''; } else {