outsources internal queryies to the appropriate classes, to assign the values to the needed variables to fill the menu array of the menu_lv.inc.php

This commit is contained in:
SimonGschnell
2024-07-03 11:56:18 +02:00
parent 19753a9ef7
commit 2a7735bca5
3 changed files with 89 additions and 1 deletions
@@ -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);
+57
View File
@@ -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;
}
}
+31
View File
@@ -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;
}
}
}
?>