mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
merge feature 18233
This commit is contained in:
@@ -69,6 +69,7 @@ class lehrveranstaltung extends basis_db
|
||||
public $semester_alternativ; // smallint
|
||||
public $farbe;
|
||||
public $lehrauftrag=true;
|
||||
public $lehrveranstaltung_template_id; // integer
|
||||
|
||||
|
||||
public $studienplan_lehrveranstaltung_id;
|
||||
@@ -158,6 +159,7 @@ class lehrveranstaltung extends basis_db
|
||||
$this->lvnr = $row->lvnr;
|
||||
$this->semester_alternativ = $row->semester_alternativ;
|
||||
$this->farbe = $row->farbe;
|
||||
$this->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
|
||||
$this->sws = $row->sws;
|
||||
$this->lvs = $row->lvs;
|
||||
@@ -237,6 +239,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
@@ -387,6 +390,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -516,6 +520,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -598,6 +603,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -729,6 +735,25 @@ class lehrveranstaltung extends basis_db
|
||||
$this->errormsg = 'Semesterwochen muss ein eine gueltige ganze Zahl sein';
|
||||
return false;
|
||||
}
|
||||
if ($this->lehrveranstaltung_template_id != '')
|
||||
{
|
||||
if (!isint($this->lehrveranstaltung_template_id)) {
|
||||
$this->errormsg = 'Lehrveranstaltung Template Id muss eine gültige ganze Zahl sein';
|
||||
return false;
|
||||
} elseif($this->lehrtyp_kurzbz == 'tpl') {
|
||||
$this->errormsg = 'Lehrveranstaltung Template Id darf bei Lehrveranstaltungen des Typs "Template" nicht gesetzt werden';
|
||||
return false;
|
||||
} else {
|
||||
$template = new lehrveranstaltung($this->lehrveranstaltung_template_id);
|
||||
if ($template->errormsg) {
|
||||
$this->errormsg = 'Lehrveranstaltung Template: ' . $template->errormsg;
|
||||
return false;
|
||||
} elseif ($template->lehrtyp_kurzbz != 'tpl') {
|
||||
$this->errormsg = 'Lehrveranstaltung Template: Als Lehrtyp muss Template ausgewählt sein';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
$this->errormsg = '';
|
||||
return true;
|
||||
}
|
||||
@@ -753,7 +778,7 @@ class lehrveranstaltung extends basis_db
|
||||
semester, ects, semesterstunden, anmerkung, lehre, lehreverzeichnis, aktiv, insertamum,
|
||||
insertvon, planfaktor, planlektoren, planpersonalkosten, plankostenprolektor, updateamum, updatevon, sort,
|
||||
zeugnis, projektarbeit, sprache, koordinator, bezeichnung_english, orgform_kurzbz, incoming, lehrtyp_kurzbz, oe_kurzbz,
|
||||
raumtyp_kurzbz, anzahlsemester, semesterwochen, lvnr, semester_alternativ, farbe,sws,lvs,alvs,lvps,las,benotung,lvinfo,
|
||||
raumtyp_kurzbz, anzahlsemester, semesterwochen, lvnr, semester_alternativ, farbe, lehrveranstaltung_template_id,sws,lvs,alvs,lvps,las,benotung,lvinfo,
|
||||
lehrauftrag, lehrmodus_kurzbz) VALUES ('.
|
||||
$this->db_add_param($this->studiengang_kz). ', '.
|
||||
$this->db_add_param($this->bezeichnung). ', '.
|
||||
@@ -790,6 +815,7 @@ class lehrveranstaltung extends basis_db
|
||||
$this->db_add_param($this->lvnr).','.
|
||||
$this->db_add_param($this->semester_alternativ).','.
|
||||
$this->db_add_param($this->farbe).','.
|
||||
$this->db_add_param($this->lehrveranstaltung_template_id, FHC_INTEGER).','.
|
||||
$this->db_add_param($this->sws).','.
|
||||
$this->db_add_param($this->lvs).','.
|
||||
$this->db_add_param($this->alvs).','.
|
||||
@@ -846,6 +872,7 @@ class lehrveranstaltung extends basis_db
|
||||
'lvnr = ' . $this->db_add_param($this->lvnr) . ', ' .
|
||||
'semester_alternativ = '.$this->db_add_param($this->semester_alternativ).', '.
|
||||
'farbe = '.$this->db_add_param($this->farbe).', '.
|
||||
'lehrveranstaltung_template_id = '.$this->db_add_param($this->lehrveranstaltung_template_id, FHC_INTEGER).', '.
|
||||
'sws = '.$this->db_add_param($this->sws).', '.
|
||||
'lvs = '.$this->db_add_param($this->lvs).', '.
|
||||
'alvs = '.$this->db_add_param($this->alvs).', '.
|
||||
@@ -960,6 +987,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -1054,6 +1082,7 @@ class lehrveranstaltung extends basis_db
|
||||
$l->lvnr = $row->lvnr;
|
||||
$l->semester_alternativ = $row->semester_alternativ;
|
||||
$l->farbe = $row->farbe;
|
||||
$l->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$l->benotung = $this->db_parse_bool($row->benotung);
|
||||
$l->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$l->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -1137,6 +1166,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -1236,6 +1266,7 @@ class lehrveranstaltung extends basis_db
|
||||
$obj->lvnr = $row->lvnr;
|
||||
$obj->semester_alternativ = $row->semester_alternativ;
|
||||
$obj->farbe = $row->farbe;
|
||||
$obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$obj->stpllv_sort = $row->stpllv_sort;
|
||||
$obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
@@ -1309,7 +1340,7 @@ class lehrveranstaltung extends basis_db
|
||||
return $childs;
|
||||
}
|
||||
|
||||
/**
|
||||
/**
|
||||
* Generiert die Subtrees des Lehrveranstaltungstrees
|
||||
*/
|
||||
public function hasChildren($studienplan_lehrveranstaltung_id)
|
||||
@@ -1360,6 +1391,7 @@ class lehrveranstaltung extends basis_db
|
||||
$obj->stpllv_koordinator = $lv->stpllv_koordinator;
|
||||
$obj->oe_kurzbz = $lv->oe_kurzbz;
|
||||
$obj->lvnr = $lv->lvnr;
|
||||
$obj->lehrveranstaltung_template_id = $lv->lehrveranstaltung_template_id;
|
||||
$obj->benotung = $this->db_parse_bool($lv->benotung);
|
||||
$obj->lvinfo =$this->db_parse_bool( $lv->lvinfo);
|
||||
$obj->zeugnis = $this->db_parse_bool($lv->zeugnis);
|
||||
@@ -1385,6 +1417,7 @@ class lehrveranstaltung extends basis_db
|
||||
$obj->stpllv_koordinator = $this->stpllv_koordinator;
|
||||
$obj->oe_kurzbz = $this->oe_kurzbz;
|
||||
$obj->lvnr = $this->lvnr;
|
||||
$obj->lehrveranstaltung_template_id = $this->lehrveranstaltung_template_id;
|
||||
$obj->benotung = $this->db_parse_bool($this->benotung);
|
||||
$obj->lvinfo =$this->db_parse_bool( $this->lvinfo);
|
||||
$obj->zeugnis = $this->db_parse_bool($this->zeugnis);
|
||||
@@ -1424,6 +1457,7 @@ class lehrveranstaltung extends basis_db
|
||||
$obj->stpllv_pflicht = $lv->stpllv_pflicht;
|
||||
$obj->stpllv_koordinator = $lv->stpllv_koordinator;
|
||||
$obj->lvnr = $lv->lvnr;
|
||||
$obj->lehrveranstaltung_template_id = $lv->lehrveranstaltung_template_id;
|
||||
$obj->stpllv_sort = $lv->stpllv_sort;
|
||||
$obj->oe_kurzbz = $lv->oe_kurzbz;
|
||||
$obj->sws = $lv->sws;
|
||||
@@ -1467,6 +1501,7 @@ class lehrveranstaltung extends basis_db
|
||||
$obj->stpllv_pflicht = $this->stpllv_pflicht;
|
||||
$obj->stpllv_koordinator = $this->stpllv_koordinator;
|
||||
$obj->lvnr = $this->lvnr;
|
||||
$obj->lehrveranstaltung_template_id = $this->lehrveranstaltung_template_id;
|
||||
$obj->benotung = $this->db_parse_bool($this->benotung);
|
||||
$obj->lvinfo =$this->db_parse_bool( $this->lvinfo);
|
||||
$obj->zeugnis = $this->db_parse_bool($this->zeugnis);
|
||||
@@ -1574,6 +1609,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lehrtyp_kurzbz = $row->lehrtyp_kurzbz;
|
||||
$lv_obj->lehrmodus_kurzbz = $row->lehrmodus_kurzbz;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -1660,6 +1696,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lehrtyp_kurzbz = $row->lehrtyp_kurzbz;
|
||||
$lv_obj->lehrmodus_kurzbz = $row->lehrmodus_kurzbz;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -1831,6 +1868,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->oe_kurzbz = $row->oe_kurzbz;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
@@ -1961,6 +1999,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -2088,6 +2127,7 @@ class lehrveranstaltung extends basis_db
|
||||
$lv_obj->lvnr = $row->lvnr;
|
||||
$lv_obj->semester_alternativ = $row->semester_alternativ;
|
||||
$lv_obj->farbe = $row->farbe;
|
||||
$lv_obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$lv_obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$lv_obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$lv_obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -2276,7 +2316,7 @@ class lehrveranstaltung extends basis_db
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt alle Lehrveranstaltungen eine Studienplans
|
||||
* Lädt alle Lehrveranstaltungen eines Studienplans
|
||||
* Optionale Filterung nach Lehrtyp und Semester
|
||||
* @param type $studienplan_id
|
||||
* @param type $lehrtyp_kurzbz
|
||||
@@ -2358,6 +2398,7 @@ class lehrveranstaltung extends basis_db
|
||||
$obj->lvnr = $row->lvnr;
|
||||
$obj->semester_alternativ = $row->semester_alternativ;
|
||||
$obj->farbe = $row->farbe;
|
||||
$obj->lehrveranstaltung_template_id = $row->lehrveranstaltung_template_id;
|
||||
$obj->benotung = $this->db_parse_bool($row->benotung);
|
||||
$obj->lvinfo = $this->db_parse_bool($row->lvinfo);
|
||||
$obj->lehrauftrag = $this->db_parse_bool($row->lehrauftrag);
|
||||
@@ -2665,5 +2706,75 @@ class lehrveranstaltung extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sucht nach LV Templates und gibt Id und Label ("bezeichnung [kurzbz]") aus
|
||||
* Diese funktion ist für autocomplete gedacht
|
||||
*
|
||||
* @param string $filter Suchfilter
|
||||
* @return array
|
||||
*/
|
||||
public function loadTemplates($filter)
|
||||
{
|
||||
$filter = strtolower($filter);
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_lehrveranstaltung.bezeichnung, tbl_lehrveranstaltung.kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.lehrtyp_kurzbz = 'tpl' AND (
|
||||
CAST(tbl_lehrveranstaltung.lehrveranstaltung_id AS TEXT) LIKE '%".$this->db_escape($filter)."%' OR
|
||||
LOWER(tbl_lehrveranstaltung.bezeichnung) LIKE '%".$this->db_escape($filter). "%' OR
|
||||
LOWER(tbl_lehrveranstaltung.kurzbz) LIKE '%".$this->db_escape($filter). "%'
|
||||
)
|
||||
";
|
||||
$lehrveranstaltungen = [];
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$lehrveranstaltungen[] = $row;
|
||||
}
|
||||
return $lehrveranstaltungen;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler bei Datenbankabfrage';
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Lädt Template und gibt Id und Label ("bezeichnung [kurzbz]") zurück
|
||||
* Diese funktion ist für autocomplete gedacht
|
||||
*
|
||||
* @param string $name
|
||||
* @return stdClass | null
|
||||
*/
|
||||
public function loadTemplateByName($name)
|
||||
{
|
||||
$qry = "SELECT
|
||||
tbl_lehrveranstaltung.lehrveranstaltung_id as id, CONCAT(tbl_lehrveranstaltung.bezeichnung, ' [', tbl_lehrveranstaltung.kurzbz, ']') as label
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.lehrtyp_kurzbz = 'tpl' AND (
|
||||
CAST(tbl_lehrveranstaltung.lehrveranstaltung_id AS TEXT) = '".($name ? $this->db_escape($name) : 0)."' OR tbl_lehrveranstaltung.bezeichnung = '".$this->db_escape($name). "' OR tbl_lehrveranstaltung.kurzbz = '".$this->db_escape($name). "'
|
||||
)
|
||||
";
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
return $row;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler bei Datenbankabfrage ' .$this->db_last_error();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user