From ab5251fea26262002460e0e941be3b4638c1badd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 8 Jul 2009 09:29:29 +0000 Subject: [PATCH] --- content/fas.xul.php | 2 +- include/akte.class.php | 2 +- include/benutzerberechtigung.class.php | 19 ++++++++++++++++++- include/fachbereich.class.php | 3 +++ include/studiengang.class.php | 9 +++++++-- rdf/fachbereich_menue.rdf.php | 6 +++--- rdf/studiensemester.rdf.php | 3 ++- 7 files changed, 35 insertions(+), 9 deletions(-) diff --git a/content/fas.xul.php b/content/fas.xul.php index ceef0f250..074400722 100644 --- a/content/fas.xul.php +++ b/content/fas.xul.php @@ -199,7 +199,7 @@ echo ''; getAll(); - foreach ($stsemobj->result as $stsem) + foreach ($stsemobj->studiensemester as $stsem) { echo " errormsg = 'Person ID muss angegeben werden'; return false; } - if($this->dokument_kurzbz!='') + if($this->dokument_kurzbz=='') { $this->errormsg = 'DokumentKurzbz muss angegeben werden'; return false; diff --git a/include/benutzerberechtigung.class.php b/include/benutzerberechtigung.class.php index 6a8f9f768..95fbfcf7c 100644 --- a/include/benutzerberechtigung.class.php +++ b/include/benutzerberechtigung.class.php @@ -22,6 +22,8 @@ */ require_once(dirname(__FILE__).'/basis_db.class.php'); require_once(dirname(__FILE__).'/organisationseinheit.class.php'); +require_once(dirname(__FILE__).'/studiengang.class.php'); +require_once(dirname(__FILE__).'/fachbereich.class.php'); class benutzerberechtigung extends basis_db { @@ -323,10 +325,25 @@ class benutzerberechtigung extends basis_db * @param $art * @return true wenn eine Berechtigung entspricht. */ - public function isBerechtigt($berechtigung_kurzbz,$oe_kurzbz=null,$art=null) + public function isBerechtigt($berechtigung_kurzbz,$oe_kurzbz=null,$art=null, $fachbereich_kurzbz=null) { $timestamp=time(); + //Studiengang + if(is_numeric($oe_kurzbz)) + { + //Studiengang + $stg = new studiengang($oe_kurzbz); + $oe_kurzbz = $stg->oe_kurzbz; + } + + //Fachbereich + if(!is_null($fachbereich_kurzbz)) + { + $fb = new fachbereich($fachbereich_kurzbz); + $oe_kurzbz = $fb->oe_kurzbz; + } + foreach ($this->berechtigungen as $b) { //Pruefen ob eine negativ-Berechtigung vorhanden ist diff --git a/include/fachbereich.class.php b/include/fachbereich.class.php index 163c241c1..f79c931a1 100644 --- a/include/fachbereich.class.php +++ b/include/fachbereich.class.php @@ -37,6 +37,7 @@ class fachbereich extends basis_db public $studiengang_kz; // integer public $aktiv; // boolean public $ext_id; // bigint + public $oe_kurzbz; public $bezeichnung_arr = array(); @@ -76,6 +77,7 @@ class fachbereich extends basis_db $fachb_obj->studiengang_kz = $row->studiengang_kz; $fachb_obj->ext_id = $row->ext_id; $fachb_obj->aktiv = ($row->aktiv=='t'?true:false); + $fachb_obj->oe_kurzbz = $row->oe_kurzbz; $this->result[] = $fachb_obj; $this->bezeichnung_arr[$row->fachbereich_kurzbz] = $row->bezeichnung; @@ -112,6 +114,7 @@ class fachbereich extends basis_db $this->studiengang_kz = $row->studiengang_kz; $this->ext_id = $row->ext_id; $this->aktiv = ($row->aktiv=='t'?true:false); + $this->oe_kurzbz = $row->oe_kurzbz; } else { diff --git a/include/studiengang.class.php b/include/studiengang.class.php index cec6090f9..e4a8309be 100644 --- a/include/studiengang.class.php +++ b/include/studiengang.class.php @@ -51,6 +51,7 @@ class studiengang extends basis_db public $sprache; public $testtool_sprachwahl; public $studienplaetze; + public $oe_kurzbz; public $kuerzel; // = typ + kurzbz (Bsp: BBE) @@ -119,6 +120,7 @@ class studiengang extends basis_db $this->sprache = $row->sprache; $this->testtool_sprachwahl = ($row->testtool_sprachwahl=='t'?true:false); $this->studienplaetze = $row->studienplaetze; + $this->oe_kurzbz = $row->oe_kurzbz; $this->telefon=$row->telefon; $this->titelbescheidvom=$row->titelbescheidvom; @@ -183,6 +185,7 @@ class studiengang extends basis_db $stg_obj->sprache = $row->sprache; $stg_obj->testtool_sprachwahl = ($row->testtool_sprachwahl=='t'?true:false); $stg_obj->studienplaetze = $row->studienplaetze; + $stg_obj->oe_kurzbz = $row->oe_kurzbz; $stg_obj->telefon=$row->telefon; $stg_obj->titelbescheidvom=$row->titelbescheidvom; @@ -248,7 +251,7 @@ class studiengang extends basis_db //Neuen Datensatz anlegen $qry = 'INSERT INTO public.tbl_studiengang (studiengang_kz, kurzbz, kurzbzlang, bezeichnung, english, typ, farbe, email, telefon, max_verband, max_semester, max_gruppe, erhalter_kz, bescheid, bescheidbgbl1, - bescheidbgbl2, bescheidgz, bescheidvom, titelbescheidvom, aktiv, ext_id, orgform_kurzbz, zusatzinfo_html) VALUES ('. + bescheidbgbl2, bescheidgz, bescheidvom, titelbescheidvom, aktiv, ext_id, orgform_kurzbz, zusatzinfo_html, oe_kurzbz) VALUES ('. $this->addslashes($this->studiengang_kz).', '. $this->addslashes($this->kurzbz).', '. $this->addslashes($this->kurzbzlang).', '. @@ -271,7 +274,8 @@ class studiengang extends basis_db $this->addslashes($this->aktiv).', '. $this->addslashes($this->ext_id).', '. $this->addslashes($this->orgform_kurzbz).', '. - $this->addslashes($this->zusatzinfo_html).');'; + $this->addslashes($this->zusatzinfo_html).', '. + $this->addslashes($this->oe_kurzbz).';'; } else { @@ -300,6 +304,7 @@ class studiengang extends basis_db 'telefon='.$this->addslashes($this->telefon).', '. 'orgform_kurzbz='.$this->addslashes($this->orgform_kurzbz).', '. 'aktiv='.$this->addslashes($this->aktiv).', '. + 'oe_kurzbz='.$this->oe_kurzbz.','. 'zusatzinfo_html='.$this->addslashes($this->zusatzinfo_html).' '. 'WHERE studiengang_kz='.$this->addslashes($this->studiengang_kz).';'; } diff --git a/rdf/fachbereich_menue.rdf.php b/rdf/fachbereich_menue.rdf.php index 4dc87e5f9..f273fba96 100644 --- a/rdf/fachbereich_menue.rdf.php +++ b/rdf/fachbereich_menue.rdf.php @@ -49,16 +49,16 @@ $fb = $rechte->getFbKz(); $qry = "SELECT * FROM public.tbl_fachbereich"; -if(count($fb)>0 && !in_array('0',$fb)) +if(count($fb)>0) { + $in=''; foreach($fb as $fbbz) - $in = ", '".addslashes($fbbz)."'"; + $in.= ", '".addslashes($fbbz)."'"; $qry.=" WHERE fachbereich_kurzbz in ('1'$in)"; } $qry.=" ORDER BY bezeichnung"; - $rdf_url='http://www.technikum-wien.at/fachbereich'; echo ' diff --git a/rdf/studiensemester.rdf.php b/rdf/studiensemester.rdf.php index 24928ac9f..225d8c378 100644 --- a/rdf/studiensemester.rdf.php +++ b/rdf/studiensemester.rdf.php @@ -26,7 +26,8 @@ header("Cache-Control: post-check=0, pre-check=0",false); header("Expires Mon, 26 Jul 1997 05:00:00 GMT"); header("Pragma: no-cache"); // content type setzen -header("Content-type: application/vnd.mozilla.xul+xml"); + +header("Content-type: application/xhtml+xml"); // xml echo ''; // DAO