mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
0bc0a09bf4
- application/extensions file system permission now is 775 - application/logs file system permission now is 775 - Added extensions directory in application/: config, controllers, helpers, hooks, libraries, models, views and widgets - Added view views/extensions/manage.php - Added controller controllers/system/extensions/Manager.php - Added library ExtensionsLib to manage extensions - Added model models/system/Extensions_model.php - Moved code related to print out info from MigrationLib to EPrintfLib
1047 lines
34 KiB
PHP
1047 lines
34 KiB
PHP
<?php
|
|
/* Copyright (C) 2007 fhcomplete.org
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation; either version 2 of the
|
|
* License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
|
*
|
|
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
|
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at>,
|
|
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
|
|
* Gerald Raab <gerald.raab@technikum-wien.at>.
|
|
*/
|
|
require_once(dirname(__FILE__).'/basis_db.class.php');
|
|
|
|
class studiengang extends basis_db
|
|
{
|
|
public $new; // boolean
|
|
public $result = array(); // studiengang Objekt
|
|
|
|
public $studiengang_kz; // integer
|
|
public $kurzbz; // varchar(5)
|
|
public $kurzbzlang; // varchar(10)
|
|
public $bezeichnung; // varchar(128)
|
|
public $english; // varchar(128)
|
|
public $typ; // char(1)
|
|
public $farbe; // char(6)
|
|
public $email; // varchar(64)
|
|
public $max_semester; // smallint
|
|
public $max_verband; // char(1)
|
|
public $max_gruppe; // char(1)
|
|
public $erhalter_kz; // smallint
|
|
public $bescheid; // varchar(256)
|
|
public $bescheidbgbl1; // varchar(16)
|
|
public $bescheidbgbl2; // varchar(16)
|
|
public $bescheidgz; // varchar(16)
|
|
public $bescheidvom; // Date
|
|
public $titelbescheidvom; // Date
|
|
public $ext_id; // bigint
|
|
public $orgform_kurzbz; // varchar(3)
|
|
public $zusatzinfo_html; // text
|
|
public $sprache; // varchar(16)
|
|
public $testtool_sprachwahl;// boolean
|
|
public $studienplaetze; // smallint
|
|
public $oe_kurzbz; // varchar(32)
|
|
public $onlinebewerbung; // boolean
|
|
|
|
public $kuerzel; // = typ + kurzbz (Bsp: BBE)
|
|
public $kuerzel_arr = array(); // Array mit allen Kurzeln Index=studiengangs_kz
|
|
public $moodle; // boolean
|
|
public $lgartcode; //integer
|
|
public $mischform; // boolean
|
|
public $projektarbeit_note_anzeige; // boolean
|
|
public $bezeichnung_arr = array();
|
|
public $beschreibung;
|
|
public $studiengang_typ_arr = array(); // Array mit den Studiengangstypen
|
|
|
|
/**
|
|
* Konstruktor
|
|
* @param studiengang_kz Kennzahl des zu ladenden Studienganges
|
|
*/
|
|
public function __construct($studiengang_kz=null)
|
|
{
|
|
parent::__construct();
|
|
|
|
if(!is_null($studiengang_kz))
|
|
$this->load($studiengang_kz);
|
|
}
|
|
|
|
/**
|
|
* Laedt einen Studiengang
|
|
* @param studiengang_kz KZ des Studienganges der zu Laden ist
|
|
* @return true wenn ok, false im Fehlerfall
|
|
*/
|
|
public function load($studiengang_kz)
|
|
{
|
|
if(!is_numeric($studiengang_kz))
|
|
{
|
|
$this->errormsg = 'Studiengang_kz muss eine gueltige Zahl sein';
|
|
return false;
|
|
}
|
|
|
|
$qry = "SELECT * FROM public.tbl_studiengang WHERE studiengang_kz = " . $this->db_add_param($studiengang_kz);
|
|
|
|
if($this->db_query($qry))
|
|
{
|
|
if($row = $this->db_fetch_object())
|
|
{
|
|
$this->studiengang_kz = $row->studiengang_kz;
|
|
$this->kurzbz = $row->kurzbz;
|
|
$this->kurzbzlang = $row->kurzbzlang;
|
|
$this->bezeichnung = $row->bezeichnung;
|
|
$this->english = $row->english;
|
|
$this->typ = $row->typ;
|
|
$this->farbe = $row->farbe;
|
|
$this->email = $row->email;
|
|
$this->max_semester = $row->max_semester;
|
|
$this->max_verband = $row->max_verband;
|
|
$this->max_gruppe = $row->max_gruppe;
|
|
$this->erhalter_kz = $row->erhalter_kz;
|
|
$this->bescheid = $row->bescheid;
|
|
$this->bescheidbgbl1 = $row->bescheidbgbl1;
|
|
$this->bescheidbgbl2 = $row->bescheidbgbl2;
|
|
$this->bescheidgz = $row->bescheidgz;
|
|
$this->bescheidvom = $row->bescheidvom;
|
|
$this->ext_id = $row->ext_id;
|
|
$this->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
|
$this->orgform_kurzbz = $row->orgform_kurzbz;
|
|
$this->zusatzinfo_html = $row->zusatzinfo_html;
|
|
$this->sprache = $row->sprache;
|
|
$this->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
|
$this->studienplaetze = $row->studienplaetze;
|
|
$this->oe_kurzbz = $row->oe_kurzbz;
|
|
$this->lgartcode = $row->lgartcode;
|
|
$this->telefon = $row->telefon;
|
|
$this->titelbescheidvom = $row->titelbescheidvom;
|
|
$this->aktiv = $this->db_parse_bool($row->aktiv);
|
|
$this->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
|
$this->moodle = $this->db_parse_bool($row->moodle);
|
|
$this->mischform = $this->db_parse_bool($row->mischform);
|
|
$this->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
|
|
|
$this->bezeichnung_arr['German'] = $this->bezeichnung;
|
|
$this->bezeichnung_arr['English'] = $this->english;
|
|
$this->bezeichnung_arr['Italian'] = $this->bezeichnung;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = 'Datensatz konnte nicht geladen werden';
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* Liefert alle Studiengaenge
|
|
* @param $order Sortierreihenfolge
|
|
* @param $aktiv wenn true dann nur aktive sonst alle
|
|
* @return true wenn ok, false im Fehlerfall
|
|
*/
|
|
public function getAll($order=null, $aktiv=true)
|
|
{
|
|
$qry = 'SELECT * FROM public.tbl_studiengang';
|
|
if ($aktiv)
|
|
$qry.=' WHERE aktiv=true';
|
|
|
|
if($order!=null)
|
|
$qry .=" ORDER BY $order";
|
|
|
|
if(!$result = $this->db_query($qry))
|
|
{
|
|
$this->errormsg = 'Datensatz konnte nicht geladen werden';
|
|
return false;
|
|
}
|
|
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$stg_obj = new studiengang();
|
|
|
|
$stg_obj->studiengang_kz = $row->studiengang_kz;
|
|
$stg_obj->kurzbz = $row->kurzbz;
|
|
$stg_obj->kurzbzlang = $row->kurzbzlang;
|
|
$stg_obj->bezeichnung = $row->bezeichnung;
|
|
$stg_obj->english = $row->english;
|
|
$stg_obj->typ = $row->typ;
|
|
$stg_obj->farbe = $row->farbe;
|
|
$stg_obj->email = $row->email;
|
|
$stg_obj->max_semester = $row->max_semester;
|
|
$stg_obj->max_verband = $row->max_verband;
|
|
$stg_obj->max_gruppe = $row->max_gruppe;
|
|
$stg_obj->erhalter_kz = $row->erhalter_kz;
|
|
$stg_obj->bescheid = $row->bescheid;
|
|
$stg_obj->bescheidbgbl1 = $row->bescheidbgbl1;
|
|
$stg_obj->bescheidbgbl2 = $row->bescheidbgbl2;
|
|
$stg_obj->bescheidgz = $row->bescheidgz;
|
|
$stg_obj->bescheidvom = $row->bescheidvom;
|
|
$stg_obj->ext_id = $row->ext_id;
|
|
$stg_obj->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
|
$stg_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
|
$stg_obj->zusatzinfo_html = $row->zusatzinfo_html;
|
|
$stg_obj->sprache = $row->sprache;
|
|
$stg_obj->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
|
$stg_obj->studienplaetze = $row->studienplaetze;
|
|
$stg_obj->oe_kurzbz = $row->oe_kurzbz;
|
|
$stg_obj->lgartcode = $row->lgartcode;
|
|
$stg_obj->telefon = $row->telefon;
|
|
$stg_obj->titelbescheidvom = $row->titelbescheidvom;
|
|
$stg_obj->aktiv = $this->db_parse_bool($row->aktiv);
|
|
$stg_obj->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
|
$stg_obj->moodle = $this->db_parse_bool($row->moodle);
|
|
$stg_obj->mischform = $this->db_parse_bool($row->mischform);
|
|
$stg_obj->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
|
|
|
$stg_obj->bezeichnung_arr['German'] = $row->bezeichnung;
|
|
$stg_obj->bezeichnung_arr['English'] = $row->english;
|
|
$this->result[] = $stg_obj;
|
|
$this->kuerzel_arr[$row->studiengang_kz] = $stg_obj->kuerzel;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
// DEPRECATED! SIEHE NAECHSTE FUNKTION
|
|
/**
|
|
* Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann
|
|
*
|
|
* @param string $order Default: typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC. Spalten, nach denen Sortiert werden soll.
|
|
* @return boolean
|
|
*/
|
|
public function getAllForBewerbung($order = 'typ, tbl_lgartcode.bezeichnung ASC')
|
|
{
|
|
$qry = 'SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, standort, lgartcode, tbl_lgartcode.bezeichnung '
|
|
. 'FROM lehre.vw_studienplan '
|
|
. 'LEFT JOIN bis.tbl_lgartcode USING (lgartcode) '
|
|
. 'WHERE onlinebewerbung IS TRUE '
|
|
. 'AND aktiv IS TRUE ';
|
|
|
|
$qry .= ' ORDER BY '.$order;
|
|
|
|
if(!$result = $this->db_query($qry))
|
|
{
|
|
$this->errormsg = 'Datensatz konnte nicht geladen werden';
|
|
return false;
|
|
}
|
|
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$this->result[] = $row;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
// DIESE FUNKTION WARE BESSER GEEIGNET, DA DIE ALTE NOCH AUF DIE vw_studienplan ZUGREIFT
|
|
// IN DER DIE GUELTIGEN SEMESTER NOCH VON DEN STUDIENORDNUNGEN ERMITTELT WERDEN ANSTATT VON DEN STUDIENPLAENEN
|
|
// IN DIESER WERDEN AUCH DIE STUDIENSEMESTER ABGEFRAGT
|
|
/**
|
|
* Gibt alle Studiengaenge zurueck, fuer die man sich online bewerben kann
|
|
*
|
|
* @param string $order Default: typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC. Spalten, nach denen Sortiert werden soll.
|
|
* @param array $studiensemester_kurzbz Array von Studiensemestern, in deren Gueltigkeit die Studienplaene liegen
|
|
* @return boolean
|
|
*/
|
|
/*public function getAllForBewerbung($order = 'typ, studiengangbezeichnung, tbl_lgartcode.bezeichnung ASC', $studiensemester_kurzbz = '')
|
|
{
|
|
$qry = "SELECT DISTINCT studiengang_kz, typ, organisationseinheittyp_kurzbz, studiengangbezeichnung, standort, studiengangbezeichnung_englisch, lgartcode, tbl_lgartcode.bezeichnung "
|
|
. "FROM lehre.tbl_studienplan "
|
|
. "JOIN lehre.tbl_studienordnung USING (studienordnung_id) "
|
|
. "JOIN public.tbl_studiengang USING (studiengang_kz) "
|
|
. "JOIN public.tbl_organisationseinheit USING (oe_kurzbz) "
|
|
. "JOIN public.tbl_organisationseinheittyp USING (organisationseinheittyp_kurzbz) "
|
|
. "LEFT JOIN lehre.tbl_studienplan_semester USING (studienplan_id) "
|
|
. "LEFT JOIN bis.tbl_lgartcode USING (lgartcode) "
|
|
. "WHERE onlinebewerbung IS TRUE "
|
|
. "AND tbl_studienplan.aktiv IS TRUE "
|
|
. "AND tbl_studienplan_semester.semester=1 "
|
|
. "AND tbl_studienplan_semester.studiensemester_kurzbz IN (".$this->implode4SQL($studiensemester_kurzbz).") ";
|
|
|
|
$qry .= " ORDER BY ".$order;
|
|
|
|
if(!$result = $this->db_query($qry))
|
|
{
|
|
$this->errormsg = 'Datensatz konnte nicht geladen werden';
|
|
return false;
|
|
}
|
|
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$this->result[] = $row;
|
|
}
|
|
|
|
return true;
|
|
}*/
|
|
|
|
/**
|
|
* Laedt alle Studientypen in das Attribut studiengang_typ_array
|
|
*/
|
|
public function getAllTypes()
|
|
{
|
|
$qry='SELECT * FROM public.tbl_studiengangstyp';
|
|
if($result = $this->db_query($qry))
|
|
{
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$this->studiengang_typ_arr[$row->typ]=$row->bezeichnung;
|
|
}
|
|
}
|
|
else
|
|
$this->errormsg = 'Fehler beim Laden der Studiengangstypen';
|
|
}
|
|
|
|
/**
|
|
* Gibt aktive OrgFormen eines Studiengangs zurück.
|
|
* @return array
|
|
*/
|
|
public function getOrgForm($studiengang_kz)
|
|
{
|
|
$qry = 'SELECT distinct tbl_studienplan.orgform_kurzbz '
|
|
. 'FROM lehre.tbl_studienordnung '
|
|
. 'JOIN lehre.tbl_studienplan '
|
|
. 'USING (studienordnung_id) '
|
|
. 'WHERE aktiv '
|
|
. 'AND studiengang_kz = ' . $this->db_add_param($studiengang_kz, FHC_INTEGER)
|
|
. ' AND tbl_studienplan.orgform_kurzbz!='. $this->db_add_param('DDP');
|
|
|
|
if($result = $this->db_query($qry))
|
|
{
|
|
$ret = array();
|
|
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$ret[] = $row->orgform_kurzbz;
|
|
}
|
|
}
|
|
|
|
return $ret;
|
|
}
|
|
|
|
/**
|
|
* Gibt aktive Sprachen eines Studiengangs zurück.
|
|
* @return array
|
|
*/
|
|
public function getSprache($studiengang_kz)
|
|
{
|
|
$qry = 'SELECT distinct sprache '
|
|
. 'FROM lehre.tbl_studienordnung '
|
|
. 'JOIN lehre.tbl_studienplan '
|
|
. 'USING (studienordnung_id) '
|
|
. 'WHERE aktiv '
|
|
. 'AND studiengang_kz = ' . $this->db_add_param($studiengang_kz, FHC_INTEGER);
|
|
|
|
if($result = $this->db_query($qry))
|
|
{
|
|
$ret = array();
|
|
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$ret[] = $row->sprache;
|
|
}
|
|
}
|
|
|
|
return $ret;
|
|
}
|
|
|
|
/**
|
|
* Laedt die Studiengaenge die als Array uebergeben werden
|
|
* @param $stgs Array mit den Kennzahlen
|
|
* @param $order Sortierreihenfolge
|
|
* @param $aktiv wenn true dann nur aktive sonst alle
|
|
* @return true wenn ok, false im Fehlerfall
|
|
*/
|
|
public function loadArray($kennzahlen, $order=null, $aktiv=true)
|
|
{
|
|
if(count($kennzahlen)==0)
|
|
return true;
|
|
|
|
$kennzahlen = $this->implode4SQL($kennzahlen);
|
|
|
|
$qry = 'SELECT * FROM public.tbl_studiengang WHERE studiengang_kz in('.$kennzahlen.')';
|
|
if ($aktiv)
|
|
$qry.=' AND aktiv=true';
|
|
|
|
if($order!=null)
|
|
$qry .=" ORDER BY $order";
|
|
|
|
if(!$result = $this->db_query($qry))
|
|
{
|
|
$this->errormsg = 'Datensatz konnte nicht geladen werden';
|
|
return false;
|
|
}
|
|
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$stg_obj = new studiengang();
|
|
|
|
$stg_obj->studiengang_kz = $row->studiengang_kz;
|
|
$stg_obj->kurzbz = $row->kurzbz;
|
|
$stg_obj->kurzbzlang = $row->kurzbzlang;
|
|
$stg_obj->bezeichnung = $row->bezeichnung;
|
|
$stg_obj->english = $row->english;
|
|
$stg_obj->typ = $row->typ;
|
|
$stg_obj->farbe = $row->farbe;
|
|
$stg_obj->email = $row->email;
|
|
$stg_obj->max_semester = $row->max_semester;
|
|
$stg_obj->max_verband = $row->max_verband;
|
|
$stg_obj->max_gruppe = $row->max_gruppe;
|
|
$stg_obj->erhalter_kz = $row->erhalter_kz;
|
|
$stg_obj->bescheid = $row->bescheid;
|
|
$stg_obj->bescheidbgbl1 = $row->bescheidbgbl1;
|
|
$stg_obj->bescheidbgbl2 = $row->bescheidbgbl2;
|
|
$stg_obj->bescheidgz = $row->bescheidgz;
|
|
$stg_obj->bescheidvom = $row->bescheidvom;
|
|
$stg_obj->ext_id = $row->ext_id;
|
|
$stg_obj->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
|
$stg_obj->orgform_kurzbz = $row->orgform_kurzbz;
|
|
$stg_obj->zusatzinfo_html = $row->zusatzinfo_html;
|
|
$stg_obj->sprache = $row->sprache;
|
|
$stg_obj->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
|
$stg_obj->studienplaetze = $row->studienplaetze;
|
|
$stg_obj->oe_kurzbz = $row->oe_kurzbz;
|
|
$stg_obj->lgartcode = $row->lgartcode;
|
|
$stg_obj->telefon = $row->telefon;
|
|
$stg_obj->titelbescheidvom = $row->titelbescheidvom;
|
|
$stg_obj->aktiv = $this->db_parse_bool($row->aktiv);
|
|
$stg_obj->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
|
$stg_obj->moodle = $this->db_parse_bool($row->moodle);
|
|
$stg_obj->mischform = $this->db_parse_bool($row->mischform);
|
|
$stg_obj->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
|
|
|
$stg_obj->bezeichnung_arr['German'] = $row->bezeichnung;
|
|
$stg_obj->bezeichnung_arr['English'] = $row->english;
|
|
|
|
$this->result[] = $stg_obj;
|
|
$this->kuerzel_arr[$row->studiengang_kz] = $stg_obj->kuerzel;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* Prueft die Gueltigkeit der Variablen
|
|
* @return true wenn ok, false im Fehlerfall
|
|
*/
|
|
private function validate()
|
|
{
|
|
//Laenge Pruefen
|
|
if(mb_strlen($this->bezeichnung)>128)
|
|
{
|
|
$this->errormsg = 'Bezeichnung darf nicht laenger als 128 Zeichen sein.';
|
|
return false;
|
|
}
|
|
if(mb_strlen($this->kurzbz)>5)
|
|
{
|
|
$this->errormsg = 'Kurzbez darf nicht laenger als 5 Zeichen sein.';
|
|
return false;
|
|
}
|
|
if(mb_strlen($this->kurzbzlang)>10)
|
|
{
|
|
$this->errormsg = 'Kurzbezlang darf nicht laenger als 10 Zeichen sein';
|
|
return false;
|
|
}
|
|
if(mb_strlen($this->english)>128)
|
|
{
|
|
$this->errormsg = 'english darf nicht laenger als 128 Zeichen sein';
|
|
return false;
|
|
}
|
|
if(!is_numeric($this->studiengang_kz))
|
|
{
|
|
$this->errormsg = 'studiengang_kz ungueltig!';
|
|
return false;
|
|
}
|
|
$this->errormsg = '';
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* Speichert den aktuellen Datensatz
|
|
* @param $new boolean Legt fest ob der Datensatz neu angelegt wird oder nicht
|
|
* @return true wenn ok, false im Fehlerfall
|
|
*/
|
|
public function save($new=null)
|
|
{
|
|
if(is_null($new))
|
|
$new = $this->new;
|
|
|
|
//Gueltigkeit der Variablen pruefen
|
|
if(!$this->validate())
|
|
{
|
|
return false;
|
|
}
|
|
|
|
if($new)
|
|
{
|
|
//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, onlinebewerbung, orgform_kurzbz, zusatzinfo_html,
|
|
oe_kurzbz, moodle, sprache, testtool_sprachwahl, studienplaetze, lgartcode, mischform,projektarbeit_note_anzeige) VALUES ('.
|
|
$this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '.
|
|
$this->db_add_param($this->kurzbz).', '.
|
|
$this->db_add_param($this->kurzbzlang).', '.
|
|
$this->db_add_param($this->bezeichnung).', '.
|
|
$this->db_add_param($this->english).', '.
|
|
$this->db_add_param($this->typ).', '.
|
|
$this->db_add_param($this->farbe).', '.
|
|
$this->db_add_param($this->email).', '.
|
|
$this->db_add_param($this->telefon).', '.
|
|
$this->db_add_param($this->max_verband).', '.
|
|
$this->db_add_param($this->max_semester).', '.
|
|
$this->db_add_param($this->max_gruppe).', '.
|
|
$this->db_add_param($this->erhalter_kz).', '.
|
|
$this->db_add_param($this->bescheid).', '.
|
|
$this->db_add_param($this->bescheidbgbl1).', '.
|
|
$this->db_add_param($this->bescheidbgbl2).', '.
|
|
$this->db_add_param($this->bescheidgz).', '.
|
|
$this->db_add_param($this->bescheidvom).', '.
|
|
$this->db_add_param($this->titelbescheidvom).', '.
|
|
$this->db_add_param($this->aktiv, FHC_BOOLEAN).', '.
|
|
$this->db_add_param($this->onlinebewerbung, FHC_BOOLEAN).', '.
|
|
$this->db_add_param($this->orgform_kurzbz).', '.
|
|
$this->db_add_param($this->zusatzinfo_html).', '.
|
|
$this->db_add_param($this->oe_kurzbz).', '.
|
|
$this->db_add_param($this->moodle, FHC_BOOLEAN).', '.
|
|
$this->db_add_param($this->sprache).', '.
|
|
$this->db_add_param($this->testtool_sprachwahl, FHC_BOOLEAN).', '.
|
|
$this->db_add_param($this->studienplaetze).', '.
|
|
$this->db_add_param($this->lgartcode).', '.
|
|
$this->db_add_param($this->mischform, FHC_BOOLEAN).','.
|
|
$this->db_add_param($this->projektarbeit_note_anzeige, FHC_BOOLEAN).');';
|
|
}
|
|
else
|
|
{
|
|
//bestehenden Datensatz akualisieren
|
|
|
|
$qry = 'UPDATE public.tbl_studiengang SET '.
|
|
'studiengang_kz='.$this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '.
|
|
'kurzbz='.$this->db_add_param($this->kurzbz).', '.
|
|
'kurzbzlang='.$this->db_add_param($this->kurzbzlang).', '.
|
|
'bezeichnung='.$this->db_add_param($this->bezeichnung).', '.
|
|
'english='.$this->db_add_param($this->english).', '.
|
|
'typ='.$this->db_add_param($this->typ).', '.
|
|
'farbe='.$this->db_add_param($this->farbe).', '.
|
|
'email='.$this->db_add_param($this->email).', '.
|
|
'max_verband='.$this->db_add_param($this->max_verband).', '.
|
|
'max_semester='.$this->db_add_param($this->max_semester).', '.
|
|
'max_gruppe='.$this->db_add_param($this->max_gruppe).', '.
|
|
'erhalter_kz='.$this->db_add_param($this->erhalter_kz).', '.
|
|
'bescheid='.$this->db_add_param($this->bescheid).', '.
|
|
'bescheidbgbl1='.$this->db_add_param($this->bescheidbgbl1).', '.
|
|
'bescheidbgbl2='.$this->db_add_param($this->bescheidbgbl2).', '.
|
|
'bescheidgz='.$this->db_add_param($this->bescheidgz).', '.
|
|
'bescheidvom='.$this->db_add_param($this->bescheidvom).', '.
|
|
'titelbescheidvom='.$this->db_add_param($this->titelbescheidvom).', '.
|
|
'telefon='.$this->db_add_param($this->telefon).', '.
|
|
'orgform_kurzbz='.$this->db_add_param($this->orgform_kurzbz).', '.
|
|
'aktiv='.$this->db_add_param($this->aktiv, FHC_BOOLEAN).', '.
|
|
'onlinebewerbung='.$this->db_add_param($this->onlinebewerbung, FHC_BOOLEAN).', '.
|
|
'oe_kurzbz='.$this->db_add_param($this->oe_kurzbz).','.
|
|
'zusatzinfo_html='.$this->db_add_param($this->zusatzinfo_html).', '.
|
|
'moodle='.$this->db_add_param($this->moodle, FHC_BOOLEAN).', '.
|
|
'projektarbeit_note_anzeige='.$this->db_add_param($this->projektarbeit_note_anzeige, FHC_BOOLEAN).', '.
|
|
'sprache='.$this->db_add_param($this->sprache).', '.
|
|
'testtool_sprachwahl='.$this->db_add_param($this->testtool_sprachwahl, FHC_BOOLEAN).', '.
|
|
'studienplaetze='.$this->db_add_param($this->studienplaetze).', '.
|
|
'lgartcode='.$this->db_add_param($this->lgartcode).', '.
|
|
'mischform='.$this->db_add_param($this->mischform, FHC_BOOLEAN).' '.
|
|
'WHERE studiengang_kz='.$this->db_add_param($this->studiengang_kz, FHC_INTEGER, false).';';
|
|
}
|
|
|
|
if($this->db_query($qry))
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Setzt Studiengaenge aktiv/inaktiv
|
|
* benoetigt studiengang_kz und 'on'/'off'
|
|
* @return true wenn ok, false im Fehlerfall
|
|
*/
|
|
public function toggleAktiv($studiengang_kz)
|
|
{
|
|
if(!is_numeric($studiengang_kz))
|
|
{
|
|
$this->errormsg = 'Studiengang_kz muss eine gueltige Zahl sein';
|
|
return false;
|
|
}
|
|
$qry = "UPDATE public.tbl_studiengang SET aktiv = NOT aktiv WHERE studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER);
|
|
|
|
if($this->db_query($qry))
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
|
|
return false;
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* Liefert die UIDs der Studiengangsleiter
|
|
*
|
|
* @param $studiengang_kz wenn gesetzt werden die Leiter dieses Studienganges geliefert
|
|
* wenn null werden alle Stgl zurueckgeliefert
|
|
*/
|
|
public function getLeitung($studiengang_kz=null)
|
|
{
|
|
$stgl = array();
|
|
|
|
$qry = "SELECT
|
|
uid
|
|
FROM
|
|
public.tbl_benutzerfunktion
|
|
JOIN public.tbl_studiengang USING(oe_kurzbz)
|
|
WHERE
|
|
funktion_kurzbz='Leitung' AND
|
|
(datum_von is null OR datum_von<=now()) AND
|
|
(datum_bis is null OR datum_bis>=now())";
|
|
|
|
if(!is_null($studiengang_kz))
|
|
$qry.=" AND studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER);
|
|
|
|
if($result = $this->db_query($qry))
|
|
{
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$stgl[] = $row->uid;
|
|
}
|
|
return $stgl;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = 'Fehler beim Laden der Studiengangsleiter';
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Laedt einen Studiengang anhand seiner Organisationseinheit
|
|
* @param $oe_kurzbz
|
|
* @return boolean
|
|
*/
|
|
public function getStudiengangFromOe($oe_kurzbz)
|
|
{
|
|
$qry ="SELECT * FROM public.tbl_studiengang WHERE oe_kurzbz =".$this->db_add_param($oe_kurzbz);
|
|
|
|
if($this->db_query($qry))
|
|
{
|
|
if($row = $this->db_fetch_object())
|
|
{
|
|
$this->studiengang_kz = $row->studiengang_kz;
|
|
$this->kurzbz = $row->kurzbz;
|
|
$this->kurzbzlang = $row->kurzbzlang;
|
|
$this->bezeichnung = $row->bezeichnung;
|
|
$this->english = $row->english;
|
|
$this->typ = $row->typ;
|
|
$this->farbe = $row->farbe;
|
|
$this->email = $row->email;
|
|
$this->max_semester = $row->max_semester;
|
|
$this->max_verband = $row->max_verband;
|
|
$this->max_gruppe = $row->max_gruppe;
|
|
$this->erhalter_kz = $row->erhalter_kz;
|
|
$this->bescheid = $row->bescheid;
|
|
$this->bescheidbgbl1 = $row->bescheidbgbl1;
|
|
$this->bescheidbgbl2 = $row->bescheidbgbl2;
|
|
$this->bescheidgz = $row->bescheidgz;
|
|
$this->bescheidvom = $row->bescheidvom;
|
|
$this->ext_id = $row->ext_id;
|
|
$this->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
|
$this->orgform_kurzbz = $row->orgform_kurzbz;
|
|
$this->zusatzinfo_html = $row->zusatzinfo_html;
|
|
$this->sprache = $row->sprache;
|
|
$this->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
|
$this->studienplaetze = $row->studienplaetze;
|
|
$this->oe_kurzbz = $row->oe_kurzbz;
|
|
$this->lgartcode = $row->lgartcode;
|
|
$this->telefon = $row->telefon;
|
|
$this->titelbescheidvom = $row->titelbescheidvom;
|
|
$this->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
|
$this->moodle = $this->db_parse_bool($row->moodle);
|
|
$this->mischform = $this->db_parse_bool($row->mischform);
|
|
$this->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
|
|
|
$this->bezeichnung_arr['German'] = $this->bezeichnung;
|
|
$this->bezeichnung_arr['English'] = $this->english;
|
|
return true;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = "Fehler bei der Datenbankabfrage aufgetreten.";
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* @return Array mit allen Semestern des Studienganges
|
|
*/
|
|
public function getSemesterFromStudiengang($studiengang_kz)
|
|
{
|
|
$qry = "SELECT DISTINCT semester from lehre.tbl_lehrveranstaltung where studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." order by semester asc;";
|
|
if(!$this->db_query($qry))
|
|
{
|
|
$this->errormsg = 'Datensatz konnte nicht geladen werden';
|
|
return false;
|
|
}
|
|
$result = array();
|
|
while ($row = $this->db_fetch_object()) {
|
|
$result[]= $row->semester;
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* Laedt einen Studiengangstyp
|
|
*
|
|
* @param $typ Studiengangstyp
|
|
* @return boolean true wenn erfolgreich geladen, false im Fehlerfall
|
|
*/
|
|
public function getStudiengangTyp($typ)
|
|
{
|
|
$qry = "SELECT * FROM public.tbl_studiengangstyp WHERE typ =".$this->db_add_param($typ,FHC_STRING).";";
|
|
|
|
if($result = $this->db_query($qry))
|
|
{
|
|
if($row = $this->db_fetch_object($result))
|
|
{
|
|
$this->typ = $row->typ;
|
|
$this->bezeichnung = $row->bezeichnung;
|
|
$this->beschreibung = $row->beschreibung;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @param $studiengaenge array
|
|
* @return array|bool
|
|
*/
|
|
public function getTypes($studiengaenge) {
|
|
|
|
$qry = 'SELECT distinct typ ' .
|
|
'FROM public.tbl_studiengang ' .
|
|
'WHERE studiengang_kz IN (' . implode(',', $studiengaenge) . ')';
|
|
|
|
$types = array();
|
|
|
|
if($result = $this->db_query($qry))
|
|
{
|
|
while($row = $this->db_fetch_object($result)) {
|
|
|
|
$types[] = $row->typ;
|
|
|
|
}
|
|
|
|
return $types;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = "Fehler bei der Abfrage aufgetreten";
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Sucht nach einem Studiengang
|
|
* @param type $searchItem
|
|
* @return boolean true, wenn ok; false, im Fehlerfall
|
|
*/
|
|
public function search($searchItem)
|
|
{
|
|
$qry = 'SELECT * FROM public.tbl_studiengang WHERE
|
|
LOWER(bezeichnung) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\') OR
|
|
LOWER(english) LIKE LOWER(\'%'.$this->db_escape((implode(' ',$searchItem))).'%\')
|
|
ORDER BY typ,bezeichnung;';
|
|
|
|
if($this->db_query($qry))
|
|
{
|
|
while($row = $this->db_fetch_object())
|
|
{
|
|
$obj = new studiengang();
|
|
|
|
$obj->studiengang_kz = $row->studiengang_kz;
|
|
$obj->kurzbz = $row->kurzbz;
|
|
$obj->kurzbzlang = $row->kurzbzlang;
|
|
$obj->bezeichnung = $row->bezeichnung;
|
|
$obj->english = $row->english;
|
|
$obj->typ = $row->typ;
|
|
$obj->farbe = $row->farbe;
|
|
$obj->email = $row->email;
|
|
$obj->max_semester = $row->max_semester;
|
|
$obj->max_verband = $row->max_verband;
|
|
$obj->max_gruppe = $row->max_gruppe;
|
|
$obj->erhalter_kz = $row->erhalter_kz;
|
|
$obj->bescheid = $row->bescheid;
|
|
$obj->bescheidbgbl1 = $row->bescheidbgbl1;
|
|
$obj->bescheidbgbl2 = $row->bescheidbgbl2;
|
|
$obj->bescheidgz = $row->bescheidgz;
|
|
$obj->bescheidvom = $row->bescheidvom;
|
|
$obj->ext_id = $row->ext_id;
|
|
$obj->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
|
$obj->orgform_kurzbz = $row->orgform_kurzbz;
|
|
$obj->zusatzinfo_html = $row->zusatzinfo_html;
|
|
$obj->sprache = $row->sprache;
|
|
$obj->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
|
$obj->studienplaetze = $row->studienplaetze;
|
|
$obj->oe_kurzbz = $row->oe_kurzbz;
|
|
$obj->lgartcode = $row->lgartcode;
|
|
$obj->telefon = $row->telefon;
|
|
$obj->titelbescheidvom = $row->titelbescheidvom;
|
|
$obj->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
|
$obj->moodle = $this->db_parse_bool($row->moodle);
|
|
$obj->mischform = $this->db_parse_bool($row->mischform);
|
|
$obj->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
|
$obj->aktiv = $this->db_parse_bool($row->aktiv);
|
|
|
|
$this->result[] = $obj;
|
|
}
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = 'Fehler beim Laden des Studiengangs';
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Laedt alle Studiengaenge in einer Organisationseinheit
|
|
* @param varchar $oe_kurzbz Organisationseinheit
|
|
* @param boolean $aktiv Wenn true dann werden nur aktive Studiengaenge geliefert
|
|
* @return boolean
|
|
*/
|
|
public function getStudiengaengeFromOe($oe_kurzbz, $aktiv=true)
|
|
{
|
|
$qry ="WITH RECURSIVE oes(oe_kurzbz) as
|
|
(
|
|
SELECT oe_kurzbz FROM public.tbl_organisationseinheit WHERE oe_kurzbz=".$this->db_add_param($oe_kurzbz)."
|
|
UNION
|
|
SELECT tbl_organisationseinheit.oe_kurzbz FROM public.tbl_organisationseinheit JOIN oes ON(oe_parent_kurzbz=oes.oe_kurzbz)
|
|
)
|
|
SELECT * FROM public.tbl_studiengang JOIN oes USING(oe_kurzbz) WHERE oe_kurzbz = oes.oe_kurzbz";
|
|
|
|
if($aktiv===true)
|
|
{
|
|
$qry.=" AND tbl_studiengang.aktiv";
|
|
}
|
|
|
|
if($this->db_query($qry))
|
|
{
|
|
while($row = $this->db_fetch_object())
|
|
{
|
|
$obj = new studiengang();
|
|
|
|
$obj->studiengang_kz = $row->studiengang_kz;
|
|
$obj->kurzbz = $row->kurzbz;
|
|
$obj->kurzbzlang = $row->kurzbzlang;
|
|
$obj->bezeichnung = $row->bezeichnung;
|
|
$obj->english = $row->english;
|
|
$obj->typ = $row->typ;
|
|
$obj->farbe = $row->farbe;
|
|
$obj->email = $row->email;
|
|
$obj->max_semester = $row->max_semester;
|
|
$obj->max_verband = $row->max_verband;
|
|
$obj->max_gruppe = $row->max_gruppe;
|
|
$obj->erhalter_kz = $row->erhalter_kz;
|
|
$obj->bescheid = $row->bescheid;
|
|
$obj->bescheidbgbl1 = $row->bescheidbgbl1;
|
|
$obj->bescheidbgbl2 = $row->bescheidbgbl2;
|
|
$obj->bescheidgz = $row->bescheidgz;
|
|
$obj->bescheidvom = $row->bescheidvom;
|
|
$obj->ext_id = $row->ext_id;
|
|
$obj->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
|
$obj->orgform_kurzbz = $row->orgform_kurzbz;
|
|
$obj->zusatzinfo_html = $row->zusatzinfo_html;
|
|
$obj->sprache = $row->sprache;
|
|
$obj->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
|
$obj->studienplaetze = $row->studienplaetze;
|
|
$obj->oe_kurzbz = $row->oe_kurzbz;
|
|
$obj->lgartcode = $row->lgartcode;
|
|
$obj->telefon = $row->telefon;
|
|
$obj->titelbescheidvom = $row->titelbescheidvom;
|
|
$obj->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
|
$obj->moodle = $this->db_parse_bool($row->moodle);
|
|
$obj->mischform = $this->db_parse_bool($row->mischform);
|
|
$obj->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
|
|
|
$obj->bezeichnung_arr['German'] = $obj->bezeichnung;
|
|
$obj->bezeichnung_arr['English'] = $obj->english;
|
|
|
|
$this->result[] = $obj;
|
|
}
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = "Fehler bei der Datenbankabfrage aufgetreten.";
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Laedt die Lehrgangstypen
|
|
* @return boolean true wenn ok sonst false
|
|
*/
|
|
public function getLehrgangstyp()
|
|
{
|
|
$qry = "SELECT * FROM bis.tbl_lgartcode";
|
|
|
|
if($result = $this->db_query($qry))
|
|
{
|
|
while($row = $this->db_fetch_object($result))
|
|
{
|
|
$obj = new stdClass();
|
|
|
|
$obj->lgartcode = $row->lgartcode;
|
|
$obj->kurzbz = $row->kurzbz;
|
|
$obj->bezeichnung = $row->bezeichnung;
|
|
$obj->beantragung = $this->db_parse_bool($row->beantragung);
|
|
$obj->lgart_biscode = $row->lgart_biscode;
|
|
|
|
$this->result[]= $obj;
|
|
}
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = 'Fehler beim Laden der Daten';
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Laedt die Studiengänge die innerhalb eines Studiensemesters gültig sind
|
|
* @param $studiensemester_kurzbz
|
|
*/
|
|
public function loadStudiengangFromStudiensemester($studiensemester_kurzbz)
|
|
{
|
|
$qry = "SELECT
|
|
distinct tbl_studiengang.*
|
|
FROM
|
|
public.tbl_studiengang
|
|
JOIN lehre.tbl_studienordnung USING(studiengang_kz)
|
|
JOIN lehre.tbl_studienplan USING(studienordnung_id)
|
|
JOIN lehre.tbl_studienplan_semester USING(studienplan_id)
|
|
WHERE
|
|
tbl_studienplan_semester.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
|
|
ORDER BY
|
|
typ, kurzbz";
|
|
|
|
if($this->db_query($qry))
|
|
{
|
|
while($row = $this->db_fetch_object())
|
|
{
|
|
$obj = new studiengang();
|
|
|
|
$obj->studiengang_kz = $row->studiengang_kz;
|
|
$obj->kurzbz = $row->kurzbz;
|
|
$obj->kurzbzlang = $row->kurzbzlang;
|
|
$obj->bezeichnung = $row->bezeichnung;
|
|
$obj->english = $row->english;
|
|
$obj->typ = $row->typ;
|
|
$obj->farbe = $row->farbe;
|
|
$obj->email = $row->email;
|
|
$obj->max_semester = $row->max_semester;
|
|
$obj->max_verband = $row->max_verband;
|
|
$obj->max_gruppe = $row->max_gruppe;
|
|
$obj->erhalter_kz = $row->erhalter_kz;
|
|
$obj->bescheid = $row->bescheid;
|
|
$obj->bescheidbgbl1 = $row->bescheidbgbl1;
|
|
$obj->bescheidbgbl2 = $row->bescheidbgbl2;
|
|
$obj->bescheidgz = $row->bescheidgz;
|
|
$obj->bescheidvom = $row->bescheidvom;
|
|
$obj->ext_id = $row->ext_id;
|
|
$obj->kuerzel = mb_strtoupper($row->typ . $row->kurzbz);
|
|
$obj->orgform_kurzbz = $row->orgform_kurzbz;
|
|
$obj->zusatzinfo_html = $row->zusatzinfo_html;
|
|
$obj->sprache = $row->sprache;
|
|
$obj->testtool_sprachwahl = $this->db_parse_bool($row->testtool_sprachwahl);
|
|
$obj->studienplaetze = $row->studienplaetze;
|
|
$obj->oe_kurzbz = $row->oe_kurzbz;
|
|
$obj->lgartcode = $row->lgartcode;
|
|
$obj->telefon = $row->telefon;
|
|
$obj->titelbescheidvom = $row->titelbescheidvom;
|
|
$obj->onlinebewerbung = $this->db_parse_bool($row->onlinebewerbung);
|
|
$obj->moodle = $this->db_parse_bool($row->moodle);
|
|
$obj->mischform = $this->db_parse_bool($row->mischform);
|
|
$obj->projektarbeit_note_anzeige = $this->db_parse_bool($row->projektarbeit_note_anzeige);
|
|
|
|
$obj->bezeichnung_arr['German'] = $obj->bezeichnung;
|
|
$obj->bezeichnung_arr['English'] = $obj->english;
|
|
|
|
$this->result[] = $obj;
|
|
}
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = "Fehler bei der Datenbankabfrage aufgetreten.";
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* Laedt einen Lehrgangstyp anhand des lgartcodes
|
|
* @param integer $lgartcode
|
|
* @return boolean true wenn ok sonst false
|
|
*/
|
|
public function loadLehrgangstyp($lgartcode)
|
|
{
|
|
if(!is_numeric($lgartcode))
|
|
{
|
|
$this->errormsg = 'Lgartcode muss eine gueltige Zahl sein';
|
|
return false;
|
|
}
|
|
|
|
$qry = "SELECT * FROM bis.tbl_lgartcode WHERE lgartcode=".$this->db_add_param($lgartcode);
|
|
|
|
if(!$this->db_query($qry))
|
|
{
|
|
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
|
|
return false;
|
|
}
|
|
|
|
if($row = $this->db_fetch_object())
|
|
{
|
|
$this->lgartcode = $row->lgartcode;
|
|
$this->kurzbz = $row->kurzbz;
|
|
$this->bezeichnung = $row->bezeichnung;
|
|
$this->beantragung = $this->db_parse_bool($row->beantragung);
|
|
$this->lgart_biscode = $row->lgart_biscode;
|
|
}
|
|
else
|
|
{
|
|
$this->errormsg = 'Fehler beim Laden der Daten';
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
}
|