From a50854343c64d8273509a3ac7ffa09094085f39c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 5 Feb 2014 08:24:30 +0000 Subject: [PATCH] =?UTF-8?q?Prestudent=20Funktionen=20f=C3=BCr=20Studienpla?= =?UTF-8?q?tzverwaltung=20hinzugefuegt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/profile/studienplan.php | 45 +-- include/prestudent.class.php | 270 ++++++++++++++++++ include/studienordnung.class.php | 10 +- include/tw/generateZahlungsreferenz.inc.php | 4 +- skin/images/not-available.png | Bin 0 -> 932 bytes skin/styles/tw.css | 6 +- soap/lehrveranstaltung.json.php | 12 +- system/checksystem.php | 3 +- vilesci/lehre/lehrveranstaltung_lvangebot.php | 4 + 9 files changed, 317 insertions(+), 37 deletions(-) create mode 100644 skin/images/not-available.png diff --git a/cis/private/profile/studienplan.php b/cis/private/profile/studienplan.php index cd0756762..49a819a0f 100644 --- a/cis/private/profile/studienplan.php +++ b/cis/private/profile/studienplan.php @@ -75,6 +75,8 @@ if(isset($_GET['getAnmeldung'])) // Die Anmeldung ist zur Lehrveranstaltung selbst und zu den dazu kompatiblen Lehrveranstaltungen moeglich if($kompatibel = $lehrveranstaltung->loadLVkompatibel($lehrveranstaltung_id)) { + $kompatibel[]=$lehrveranstaltung_id; + $kompatibel = array_unique($kompatibel); foreach($kompatibel as $lvid) { $lvangebot = new lvangebot(); @@ -110,11 +112,11 @@ if(isset($_GET['getAnmeldung'])) echo '
'.$lv->bezeichnung.''; } } - else +/* else { - // LV wird angeboten, Anmeldefenster ist aber nicht offen + // LV wird angeboten, Anmeldefenster ist aber nicht offen oder keine Gruppe zugeteilt echo '
'.$lv->bezeichnung.''; - } + }*/ } } } @@ -363,26 +365,25 @@ function drawTree($tree, $depth) foreach($stsem_arr as $key=>$stsem) { $semester=$key+1; - - $empfehlung=""; + + $tdclass=array(); //Empfehlung holen if(isset($lv_arr[$row_tree->lehrveranstaltung_id])) { $empfohlenesSemester = $lv_arr[$row_tree->lehrveranstaltung_id]->semester; if($semester==$empfohlenesSemester) - $empfehlung='class="empfehlung"'; + $tdclass[]='empfehlung'; } - echo ''; - + $tdinhalt=''; // Ist bereits eine Note für diese LV in diesem Stsem vorhanden? if(isset($noten_arr[$row_tree->lehrveranstaltung_id][$stsem])) { if($note_pruef_arr[$noten_arr[$row_tree->lehrveranstaltung_id][$stsem]]->positiv) - echo ''.$note_pruef_arr[$noten_arr[$row_tree->lehrveranstaltung_id][$stsem]]->anmerkung.''; + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$row_tree->lehrveranstaltung_id][$stsem]]->anmerkung.''; else - echo ''.$note_pruef_arr[$noten_arr[$row_tree->lehrveranstaltung_id][$stsem]]->anmerkung.''; + $tdinhalt .= ''.$note_pruef_arr[$noten_arr[$row_tree->lehrveranstaltung_id][$stsem]]->anmerkung.''; } else { @@ -444,34 +445,38 @@ function drawTree($tree, $depth) if($semesterlock) { - echo ''; + $tdinhalt.= ''; } else { if($angebot_vorhanden) { + $tdclass[]='angebot'; if($angemeldet) { - echo ''; + $tdinhalt.= ''; } else { if($anmeldungmoeglich) - echo ''; + $tdinhalt.= ''; else - echo 'X'; + $tdinhalt.= '-'; if(!$regelerfuellt) - echo 'X'; + $tdinhalt.= 'X'; } } else { // LV wird nicht angeboten - echo '-'; + $tdinhalt.= '-'; } } } + $class=implode(',',$tdclass); + echo ''; + echo $tdinhalt; echo ''; } echo ''; @@ -489,11 +494,15 @@ echo '

'.$p->t('studienplan/legende').':
'.$p->t('studienplan/legendeEmpfehlung').' - X + + + + +        '.$p->t('studienplan/legendeLVwirdAngeboten').' - + '.$p->t('studienplan/legendeLock').' diff --git a/include/prestudent.class.php b/include/prestudent.class.php index 2268707ee..4ecd03802 100644 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -1062,5 +1062,275 @@ class prestudent extends person return false; } } + + /** + * Liefert die Anzahl der Bewerber im ausgewaehlten Bereich + * @param $studiensemester_kurzbz Studiensemester + * @param $studiengang_kz Kennzahl des Studienganges (optional) + * @param $orgform_kurzbz Organisationsform (optional) + * @param $ausbildungssemester Ausbildungssemester (optional) + * @return Anzahl der Bewerber oder false im Fehlerfall + */ + public function getAnzBewerber($studiensemester_kurzbz, $studiengang_kz=null, $orgform_kurzbz=null, $ausbildungssemester=null) + { + $qry = "SELECT + count(*) as anzahl + FROM + public.tbl_prestudent + JOIN public.tbl_prestudentstatus USING(prestudent_id) + WHERE + tbl_prestudentstatus.status_kurzbz='Bewerber' + AND tbl_prestudentstatus.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz); + + if(!is_null($studiengang_kz)) + $qry.=" AND tbl_prestudent.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER); + + if(!is_null($orgform_kurzbz)) + $qry.=" AND (tbl_prestudentstatus.orgform_kurzbz=".$this->db_add_param($orgform_kurzbz)." OR (tbl_prestudentstatus.orgform_kurzbz IS NULL AND EXISTS(SELECT 1 FROM public.tbl_studiengang WHERE studiengang_kz=tbl_prestudent.studiengang_kz AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz).")))"; + + if(!is_null($ausbildungssemester)) + $qry.=" AND tbl_prestudentstatus.ausbildungssemester=".$this->db_add_param($ausbildungssemester); + + if($result = $this->db_query($qry)) + { + if($row = $this->db_fetch_object($result)) + { + return $row->anzahl; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + + /** + * Liefert die Anzahl der Interessenten im ausgewaehlten Bereich + * @param $studiensemester_kurzbz Studiensemester + * @param $studiengang_kz Kennzahl des Studienganges (optional) + * @param $orgform_kurzbz Organisationsform (optional) + * @param $ausbildungssemester Ausbildungssemester (optional) + * @return Anzahl der Interessenten oder false im Fehlerfall + */ + public function getAnzInteressenten($studiensemester_kurzbz, $studiengang_kz=null, $orgform_kurzbz=null, $ausbildungssemester=null) + { + $qry = "SELECT + count(*) as anzahl + FROM + public.tbl_prestudent + JOIN public.tbl_prestudentstatus USING(prestudent_id) + WHERE + tbl_prestudentstatus.status_kurzbz='Interessent' + AND tbl_prestudentstatus.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz); + + if(!is_null($studiengang_kz)) + $qry.=" AND tbl_prestudent.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER); + + if(!is_null($orgform_kurzbz)) + $qry.=" AND (tbl_prestudentstatus.orgform_kurzbz=".$this->db_add_param($orgform_kurzbz)." OR (tbl_prestudentstatus.orgform_kurzbz IS NULL AND EXISTS(SELECT 1 FROM public.tbl_studiengang WHERE studiengang_kz=tbl_prestudent.studiengang_kz AND orgform_kurzbz=".$this->db_add_param($orgform_kurzbz).")))"; + + if(!is_null($ausbildungssemester)) + $qry.=" AND tbl_prestudentstatus.ausbildungssemester=".$this->db_add_param($ausbildungssemester); + + if($result = $this->db_query($qry)) + { + if($row = $this->db_fetch_object($result)) + { + return $row->anzahl; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + + /** + * Liefert die Anzahl der Interessenten mit Zugangsvoraussetzung im ausgewaehlten Bereich + * @param $studiensemester_kurzbz Studiensemester + * @param $studiengang_kz Kennzahl des Studienganges (optional) + * @param $orgform_kurzbz Organisationsform (optional) + * @param $ausbildungssemester Ausbildungssemester (optional) + * @return Anzahl der Interessenten mit ZGV oder false im Fehlerfall + */ + public function getAnzInteressentenZGV($studiensemester_kurzbz, $studiengang_kz=null, $orgform_kurzbz=null, $ausbildungssemester=null) + { + $qry = "SELECT + count(*) as anzahl + FROM + public.tbl_prestudent + JOIN public.tbl_prestudentstatus USING(prestudent_id) + JOIN public.tbl_studiengang USING(studiengang_kz) + WHERE + tbl_prestudentstatus.status_kurzbz='Interessent' + AND tbl_prestudentstatus.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)." + AND ((tbl_studiengang.typ<>'m' AND zgv_code IS NOT NULL) OR zgvmas_code IS NOT NULL)"; + + if(!is_null($studiengang_kz)) + $qry.=" AND tbl_prestudent.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER); + + if(!is_null($orgform_kurzbz)) + $qry.=" AND (tbl_prestudentstatus.orgform_kurzbz=".$this->db_add_param($orgform_kurzbz)." OR (tbl_prestudentstatus.orgform_kurzbz IS NULL AND tbl_studiengang.orgform_kurzbz=".$this->db_add_param($orgform_kurzbz)."))"; + + if(!is_null($ausbildungssemester)) + $qry.=" AND tbl_prestudentstatus.ausbildungssemester=".$this->db_add_param($ausbildungssemester); + + if($result = $this->db_query($qry)) + { + if($row = $this->db_fetch_object($result)) + { + return $row->anzahl; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + + } + + /** + * Liefert ein Array mit den Bewerberzahlen + * @param $studiensemester_kurzbz (optional) + * @return true wenn ok, false im Fehlerfall DatenArray in $this->result + * Bsp: + * $prestudent->result[$stsem][$stg_kz]['anzahl'] + * $prestudent->result[$stsem][$stg_kz][$orgform][$semester]['anzahl'] + */ + public function listAnzBewerber($studiensemester_kurzbz=null) + { + $qry = "SELECT + tbl_prestudentstatus.studiensemester_kurzbz, + tbl_prestudent.studiengang_kz, + tbl_prestudentstatus.ausbildungssemester, + COALESCE(tbl_prestudentstatus.orgform_kurzbz, tbl_studiengang.orgform_kurzbz) as orgform_kurzbz + FROM + public.tbl_prestudent + JOIN public.tbl_prestudentstatus USING(prestudent_id) + JOIN public.tbl_studiengang USING(studiengang_kz) + WHERE + tbl_prestudentstatus.status_kurzbz='Bewerber'"; + + if(!is_null($studiensemester_kurzbz)) + $qry.=" AND tbl_prestudentstatus.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz); + + $this->result = array(); + if($result = $this->db_query($qry)) + { + while($row = $this->db_fetch_object($result)) + { + // Studiensemester + if(!isset($this->result[$row->studiensemester_kurzbz]['anzahl'])) + $this->result[$row->studiensemester_kurzbz]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz]['anzahl']++; + + // Studiengang + if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl'])) + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']++; + + // Orgform + if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl'])) + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']++; + + // Ausbildungssemester + if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz][$row->ausbildungssemester]['anzahl'])) + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz][$row->ausbildungssemester]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz][$row->ausbildungssemester]['anzahl']++; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + + /** + * Liefert ein Array mit den Interessentenzahlen + * @param $studiensemester_kurzbz (optional) + * @return true wenn ok, false im Fehlerfall DatenArray in $this->result + * Bsp: + * $prestudent->result[$stsem][$stg_kz]['anzahl'] + * $prestudent->result[$stsem][$stg_kz][$orgform][$semester]['anzahl'] + */ + public function listAnzInteressenten($studiensemester_kurzbz=null) + { + $qry = "SELECT + tbl_prestudentstatus.studiensemester_kurzbz, + tbl_prestudent.studiengang_kz, + tbl_prestudentstatus.ausbildungssemester, + COALESCE(tbl_prestudentstatus.orgform_kurzbz, tbl_studiengang.orgform_kurzbz) as orgform_kurzbz + FROM + public.tbl_prestudent + JOIN public.tbl_prestudentstatus USING(prestudent_id) + JOIN public.tbl_studiengang USING(studiengang_kz) + WHERE + tbl_prestudentstatus.status_kurzbz='Interessent'"; + + if(!is_null($studiensemester_kurzbz)) + $qry.=" AND tbl_prestudentstatus.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz); + + $this->result = array(); + if($result = $this->db_query($qry)) + { + while($row = $this->db_fetch_object($result)) + { + // Studiensemester + if(!isset($this->result[$row->studiensemester_kurzbz]['anzahl'])) + $this->result[$row->studiensemester_kurzbz]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz]['anzahl']++; + + // Studiengang + if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl'])) + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']++; + + // Orgform + if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl'])) + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']++; + + // Ausbildungssemester + if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz][$row->ausbildungssemester]['anzahl'])) + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz][$row->ausbildungssemester]['anzahl']=0; + + $this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz][$row->ausbildungssemester]['anzahl']++; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } } ?> diff --git a/include/studienordnung.class.php b/include/studienordnung.class.php index c02abd9dc..74147b1c7 100644 --- a/include/studienordnung.class.php +++ b/include/studienordnung.class.php @@ -44,7 +44,6 @@ class studienordnung extends basis_db protected $studiengangbezeichnung_englisch; // varchar (256) protected $studiengangkurzbzlang; // varchar (256) protected $akadgrad_id; // integer (FK akadgrad) - protected $max_semester; // smallint protected $updateamum; // timestamp protected $updatevon; // varchar protected $insertamum; // timestamp @@ -113,7 +112,6 @@ class studienordnung extends basis_db $this->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch; $this->studiengangkurzbzlang = $row->studiengangkurzbzlang; $this->akadgrad_id = $row->akadgrad_id; - $this->max_semester = $row->max_semester; $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; $this->insertamum = $row->insertamum; @@ -190,7 +188,6 @@ class studienordnung extends basis_db $obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch; $obj->studiengangkurzbzlang = $row->studiengangkurzbzlang; $obj->akadgrad_id = $row->akadgrad_id; - $obj->max_semester = $row->max_semester; $obj->updateamum = $row->updateamum; $obj->updatevon = $row->updatevon; $obj->insertamum = $row->insertamum; @@ -285,7 +282,7 @@ class studienordnung extends basis_db if($this->new) { //Neuen Datensatz einfuegen - $qry='BEGIN;INSERT INTO lehre.tbl_studienordnung (studiengang_kz, version, bezeichnung, ects, gueltigvon, gueltigbis, studiengangbezeichnung, studiengangbezeichnung_englisch, studiengangkurzbzlang, akadgrad_id, max_semester, insertamum, insertvon) VALUES ('. + $qry='BEGIN;INSERT INTO lehre.tbl_studienordnung (studiengang_kz, version, bezeichnung, ects, gueltigvon, gueltigbis, studiengangbezeichnung, studiengangbezeichnung_englisch, studiengangkurzbzlang, akadgrad_id, insertamum, insertvon) VALUES ('. $this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '. $this->db_add_param($this->version).', '. $this->db_add_param($this->bezeichnung).', '. @@ -296,7 +293,7 @@ class studienordnung extends basis_db $this->db_add_param($this->studiengangbezeichnung_englisch).', '. $this->db_add_param($this->studiengangkurzbzlang).', '. $this->db_add_param($this->akadgrad_id,FHC_INTEGER).', '. - $this->db_add_param($this->max_semester,FHC_INTEGER).', now(), '. + ' now(), '. $this->db_add_param($this->insertvon).');'; } else @@ -318,7 +315,6 @@ class studienordnung extends basis_db ' studiengangbezeichnung_englisch='.$this->db_add_param($this->studiengangbezeichnung_englisch).', '. ' studiengangkurzbzlang='.$this->db_add_param($this->studiengangkurzbzlang).','. ' akadgrad_id='.$this->db_add_param($this->akadgrad_id, FHC_INTEGER).', '. - ' max_semester='.$this->db_add_param($this->max_semester, FHC_INTEGER).', '. ' updateamum= now(), '. ' updatevon='.$this->db_add_param($this->updatevon).' '. ' WHERE studienordnung_id='.$this->db_add_param($this->studienordnung_id, FHC_INTEGER, false).';'; @@ -413,7 +409,6 @@ class studienordnung extends basis_db $obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch; $obj->studiengangkurzbzlang = $row->studiengangkurzbzlang; $obj->akadgrad_id = $row->akadgrad_id; - $obj->max_semester = $row->max_semester; $obj->updateamum = $row->updateamum; $obj->updatevon = $row->updatevon; $obj->insertamum = $row->insertamum; @@ -437,7 +432,6 @@ class studienordnung extends basis_db $obj->studiengangbezeichnung_englisch = $this->studiengangbezeichnung_englisch; $obj->studiengangkurzbzlang = $this->studiengangkurzbzlang; $obj->akadgrad_id = $this->akadgrad_id; - $obj->max_semester = $this->max_semester; $obj->updateamum = $this->updateamum; $obj->updatevon = $this->updatevon; $obj->insertamum = $this->insertamum; diff --git a/include/tw/generateZahlungsreferenz.inc.php b/include/tw/generateZahlungsreferenz.inc.php index 64586d989..a63c69bfd 100755 --- a/include/tw/generateZahlungsreferenz.inc.php +++ b/include/tw/generateZahlungsreferenz.inc.php @@ -19,8 +19,6 @@ * Authors: Stefan Puraner , * */ - -require_once(dirname(__FILE__).'/../../config/cis.config.inc.php'); require_once(dirname(__FILE__).'/../../include/functions.inc.php'); require_once(dirname(__FILE__).'/../../include/studiengang.class.php'); @@ -36,4 +34,4 @@ function generateZahlungsreferenz($studiengang_kz, $buchungsNr) } //generateZahlungsreferenz(33403, 257); -?> \ No newline at end of file +?> diff --git a/skin/images/not-available.png b/skin/images/not-available.png new file mode 100644 index 0000000000000000000000000000000000000000..a8aadbde71c2890ae74223e1e5e43a25271c3f4b GIT binary patch literal 932 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2>S zKM-czcvjvR$dD{?jVKAuPb(=;EJ|f4FE7{2%*!rLPAo{(%P&fw{mw=Ts7M&3C?vBa zCzT;DzeFLiEHN`DF)1fC=-}0(Kxqk(v}0*WMt%{4TTx>?pV~9m>>ttUKkwl5(|IhC^{AQipABLsPQ=C{HiQhghx5&3O z=jLV>?&6n9x^Ip)UkF{?vDE6_s*0BekGTvl=)Rb6i_3LK(9SKZn`SFqT(@HN3oCBp z&m|h!+Oz(Bxc6`W{oi&rdybr0(d$y(!>a+S@l*rbOPozyGvDkS*&>NhycT2fD8>3`o6hU?I;_ zT_~lL|k7P zrLp4>!+~k6+11kNN`gO6KYBD#hq1ZW*7j1EP2cnKMIYjKzR~(I<@Cc>PgH)nxvO$Y zOi*lz7h~F%`ta5T-j??ESk}||_a9^{F)Fe|bl7n=9NG5w{__8(r^?$>ZhT{(y;FWt z%cqBoeSQ5g2mcmHPEfHpqi{QJs_cWSiFWmS558YM_amo|UBwG6h2sa$uG5oQw{|1* znaON1E3$KI@7vqH{VmhkusXE7@pyCJPD>q^#Z$dDRs;skyzcL{^dqmY@$E;26BhlE z4injO^l`*>lg~>c_AEDA@5ylBz+>OT72zJs&wdNx`r63g(GkBuU&GbrNX3lZ+r|sxTKcV3D0p; zxAH%b%PEndSjE_oQ+<_DOrm0yQT~;0`xygW)lNMXJv|MWj2S##{an^LB{Ts5sVisUserAuthorized($uid, $method)) - die('Sie haben keine Berechtigung fuer diesen Vorgang'); +// $wsrecht = new webservicerecht(); +// if(!$wsrecht->isUserAuthorized($uid, $method)) +// die('Sie haben keine Berechtigung fuer diesen Vorgang'); $lv_id = $_REQUEST['lehrveranstaltung_id']; $lv_id_kompatibel = $_REQUEST['lehrveranstaltung_id_kompatibel']; @@ -92,9 +92,9 @@ switch($method) } break; case 'deleteKompatibleLehrveranstaltung': - $wsrecht = new webservicerecht(); - if(!$wsrecht->isUserAuthorized($uid, $method)) - die('Sie haben keine Berechtigung fuer diesen Vorgang'); +// $wsrecht = new webservicerecht(); +// if(!$wsrecht->isUserAuthorized($uid, $method)) +// die('Sie haben keine Berechtigung fuer diesen Vorgang'); $lv_id = $_REQUEST['lehrveranstaltung_id']; $lv_id_kompatibel = $_REQUEST['lehrveranstaltung_id_kompatibel']; diff --git a/system/checksystem.php b/system/checksystem.php index 406503e0e..3eff936d0 100644 --- a/system/checksystem.php +++ b/system/checksystem.php @@ -1468,7 +1468,8 @@ $webservicerecht = array( array('soap/studienordnung','loadStudienplan','studienplan'), array('soap/studienordnung','saveSemesterZuordnung','studienordnung'), array('soap/studienordnung','deleteSemesterZuordnung','studienordnung'), - array('soap/studienordnung','getLVkompatibel','lehrveranstaltung') + array('soap/studienordnung','getLVkompatibel','lehrveranstaltung'), + array('soap/studienordnung','getLvTree','lehrveranstaltung') ); foreach($webservicerecht as $row) diff --git a/vilesci/lehre/lehrveranstaltung_lvangebot.php b/vilesci/lehre/lehrveranstaltung_lvangebot.php index a6c090e1a..ffc8a6e5c 100644 --- a/vilesci/lehre/lehrveranstaltung_lvangebot.php +++ b/vilesci/lehre/lehrveranstaltung_lvangebot.php @@ -71,6 +71,10 @@ $lv_obj->load($lv_id); $stg_obj = new studiengang(); $stg_obj->load($lv_obj->studiengang_kz); $oe_studiengang = $stg_obj->oe_kurzbz; + +if(!$rechte->isBerechtigt('lehre/lehrveranstaltung', $oe_studiengang, 's')) + die('Sie haben keine Berechtigung fuer diese Seite'); + if($rechte->isBerechtigt('lehre/lehrveranstaltung', $oe_studiengang, 'suid')) $write_admin=true;