diff --git a/application/models/ressource/Stundenplan_model.php b/application/models/ressource/Stundenplan_model.php index 7b7bc24cd..511bf5000 100755 --- a/application/models/ressource/Stundenplan_model.php +++ b/application/models/ressource/Stundenplan_model.php @@ -24,7 +24,7 @@ class Stundenplan_model extends DB_Model $this->addJoin('public.tbl_studiensemester ss1', 'bg.studiensemester_kurzbz=ss1.studiensemester_kurzbz AND ss1.start<=sp.datum AND ss1.ende>=sp.datum', 'LEFT'); $this->db->join('public.tbl_studentlehrverband slv', "sp.studiengang_kz=slv.studiengang_kz AND slv.student_uid=? AND (slv.semester=sp.semester OR sp.semester IS NULL) AND (slv.verband=sp.verband OR sp.verband IS NULL OR sp.verband='' OR sp.verband='0') AND (slv.gruppe=sp.gruppe OR sp.gruppe IS NULL OR sp.gruppe='' OR sp.gruppe='0') AND sp.gruppe_kurzbz IS NULL", 'LEFT', false); $this->addJoin('public.tbl_studiensemester ss2', 'slv.studiensemester_kurzbz=ss2.studiensemester_kurzbz AND ss2.start<=sp.datum AND ss2.ende>=sp.datum', 'LEFT'); - $this->addJoin('lehre.tbl_lehreinheit le', 'le.lehreinheit_id=sp.lehreinheit_id', 'LEFT'); + $this->db->join('lehre.tbl_lehreinheit le', 'le.lehreinheit_id=sp.lehreinheit_id', 'LEFT'); $this->db->or_where('ss1.studiensemester_kurzbz IS NOT NULL', null, false); $this->db->or_where('ss2.studiensemester_kurzbz IS NOT NULL', null, false); diff --git a/include/lehreinheit.class.php b/include/lehreinheit.class.php index bf26f47b9..1b7ed10e4 100755 --- a/include/lehreinheit.class.php +++ b/include/lehreinheit.class.php @@ -1158,6 +1158,63 @@ public function lehreinheitInfo($lvid,$angezeigtes_stsem,$lehrfach_id) return $ret; } + +public function lehrfach_id_mitarbeiter($angezeigtes_stsem,$user,$lvid) +{ + $qry = "SELECT + distinct lehrfach_id + FROM + lehre.tbl_lehreinheit + JOIN lehre.tbl_lehreinheitmitarbeiter USING(lehreinheit_id) + WHERE + studiensemester_kurzbz=".$this->db_add_param($angezeigtes_stsem)." + AND mitarbeiter_uid=".$this->db_add_param($user)." + AND lehrveranstaltung_id=".$this->db_add_param($lvid, FHC_INTEGER); + + + $result = $this->db_query($qry); + if (!$result) + { + $this->errormsg=$this->db_last_error().$qry; + return false; + } + $ret = array(); + + while($row = $this->db_fetch_object($result)) + { + $ret[] = $row; + } + + return $ret; +} + +public function lehrfach_id_studierender($lvid,$angezeigtes_stsem,$user) +{ + $qry = "SELECT distinct lehrfach_id + FROM + campus.vw_student_lehrveranstaltung + WHERE + lehrveranstaltung_id=".$this->db_add_param($lvid, FHC_INTEGER)." + AND studiensemester_kurzbz=".$this->db_add_param($angezeigtes_stsem)." + AND uid=".$this->db_add_param($user); + + $result = $this->db_query($qry); + if (!$result) + { + $this->errormsg=$this->db_last_error().$qry; + return false; + } + $ret = array(); + + while($row = $this->db_fetch_object($result)) + { + $ret[] = $row; + } + + return $ret; +} + + } diff --git a/include/lehrveranstaltung.class.php b/include/lehrveranstaltung.class.php index 48edd9d0a..b2a3bc481 100755 --- a/include/lehrveranstaltung.class.php +++ b/include/lehrveranstaltung.class.php @@ -2861,5 +2861,36 @@ class lehrveranstaltung extends basis_db return false; } } +//Berechtigungen auf Fachbereichsebene +public function getBerechtigungenAufFachberechsebene($lvid,$angezeigtes_stsem) +{ + $qry = "SELECT + distinct lehrfach.oe_kurzbz + FROM + lehre.tbl_lehrveranstaltung + JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id) + JOIN lehre.tbl_lehrveranstaltung as lehrfach ON(tbl_lehreinheit.lehrfach_id=lehrfach.lehrveranstaltung_id) + WHERE tbl_lehrveranstaltung.lehrveranstaltung_id=".$this->db_add_param($lvid, FHC_INTEGER); + + if(isset($angezeigtes_stsem) && $angezeigtes_stsem!=''){ + $qry .= " AND studiensemester_kurzbz=".$this->db_add_param($angezeigtes_stsem); + } + + $lehrveranstaltungen = []; + if($result = $this->db_query($qry)) + { + while($row = $this->db_fetch_object($result)) + { + $lehrveranstaltungen[] = $row; + } + return $lehrveranstaltungen; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } +} + } ?>