Meine LV zeigt jetzt LVs des Sommer- und Wintersemesters an wenn kein aktuelles Studiensemester vorhanden ist

This commit is contained in:
oesi
2016-08-18 11:51:19 +02:00
parent cac1aae235
commit 7e498482d8
+36 -18
View File
@@ -19,7 +19,7 @@
*/
/**
* Menue Addon zur Anzeige der zugeordneten LVs
*
*
* Zeigt eine Liste mit den LVs zu denen der Lektor oder Student zugeordnet ist.
*/
require_once(dirname(__FILE__).'/menu_addon.class.php');
@@ -34,15 +34,15 @@ class menu_addon_meinelv extends menu_addon
public function __construct()
{
parent::__construct();
$sprache = getSprache();
$user = get_uid();
$is_lector=check_lektor($user);
$p = new phrasen($sprache);
$cutlength=21;
//Meine LVs Student
if(!$is_lector)
{
@@ -51,10 +51,19 @@ class menu_addon_meinelv extends menu_addon
if ($stsemobj = new studiensemester())
{
$stsem = $stsemobj->getNearest();
$qry = "SELECT distinct lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, lehre,
lehreverzeichnis from campus.vw_student_lehrveranstaltung
WHERE uid='".addslashes($user)."' AND studiensemester_kurzbz='".addslashes($stsem)."'
$stsem_arr=array();
if(!$stsemobj->getakt())
{
$stsem_arr[]=$stsemobj->getNearest();
$stsem_arr[]=$stsemobj->getNearestFrom($stsem_arr[0]);
}
else
{
$stsem_arr[] = $stsemobj->getNearest();
}
$qry = "SELECT distinct lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, lehre,
lehreverzeichnis from campus.vw_student_lehrveranstaltung
WHERE uid=".$this->db_add_param($user)." AND studiensemester_kurzbz in(".$this->db_implode4SQL($stsem_arr).")
AND lehre=true AND lehreverzeichnis<>'' ORDER BY studiengang_kz, semester, bezeichnung";
if($result = $this->db_query($qry))
{
@@ -87,21 +96,30 @@ class menu_addon_meinelv extends menu_addon
else
{
echo "Fehler Semester beim Auslesen der LV";
}
}
}
//Eigenen LV des eingeloggten Lektors anzeigen
if($is_lector)
{
if ($stsemobj = new studiensemester())
{
$stsem = $stsemobj->getNearest();
$stsem_arr=array();
if(!$stsemobj->getakt())
{
$stsem_arr[]=$stsemobj->getNearest();
$stsem_arr[]=$stsemobj->getNearestFrom($stsem_arr[0]);
}
else
{
$stsem_arr[] = $stsemobj->getNearest();
}
$qry = "SELECT distinct bezeichnung, studiengang_kz, semester, lehreverzeichnis, tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.orgform_kurzbz FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter
WHERE tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
mitarbeiter_uid='".addslashes($user)."' AND tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem)."'
mitarbeiter_uid=".$this->db_add_param($user)." AND tbl_lehreinheit.studiensemester_kurzbz in(".$this->db_implode4SQL($stsem_arr).")
ORDER BY studiengang_kz, semester, bezeichnung";
if($result = $this->db_query($qry))
{
$this->items[] = array('title'=>$p->t("lvaliste/titel"),
@@ -121,19 +139,19 @@ class menu_addon_meinelv extends menu_addon
'link'=>'private/freifaecher/lesson.php?lvid='.$row->lehrveranstaltung_id,
'name'=>'FF '.$this->CutString($row->lehreverzeichnis, $cutlength)
);
}
}
else
{
$stg_obj = new studiengang();
$stg_obj->load($row->studiengang_kz);
$kurzbz = $stg_obj->kuerzel.'-'.$row->semester.' '.$row->orgform_kurzbz;
$this->items[] = array('title'=>$lv_obj->bezeichnung_arr[$sprache],
'target'=>'content',
'link'=>'private/lehre/lesson.php?lvid='.$row->lehrveranstaltung_id,
'name'=>$kurzbz.' '.$this->CutString($lv_obj->bezeichnung_arr[$sprache], $cutlength)
);
}
}
}
}
else
@@ -146,7 +164,7 @@ class menu_addon_meinelv extends menu_addon
}
$this->output();
}
private function CutString($strVal, $limit)
{
if(mb_strlen($strVal) > $limit+3)