diff --git a/include/bewerbungstermin.class.php b/include/bewerbungstermin.class.php index 966ff6ce7..a4dffce89 100644 --- a/include/bewerbungstermin.class.php +++ b/include/bewerbungstermin.class.php @@ -43,6 +43,7 @@ class bewerbungstermin extends basis_db public $updateamum; // timestamp public $updatevon; // bigint public $studienplan_id; // integer + public $nationengruppe_kurzbz; // varchar (16) /** * Konstruktor @@ -88,6 +89,7 @@ class bewerbungstermin extends basis_db $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; $this->studienplan_id = $row->studienplan_id; + $this->nationengruppe_kurzbz = $row->nationengruppe_kurzbz; return true; } else @@ -107,11 +109,12 @@ class bewerbungstermin extends basis_db * Liefert die Bewerbungstermine eines Studiengangs * @param integer $studiengang_kz. Kennzahl des Studiengangs, dessen Bewerbungstermine geladen werden sollen * @param string $studiensemester_kurzbz. Optional. Default NULL. Studiensemester, dessen Bewerbungstermine geladen werden sollen - * @param $sort. Optional. Default NULL. Sortierung der Ergebnisse - * @param $studienplan_id. Optional. Default NULL. Studienplan ID, dessen Bewerbungstermine geladen werden sollen + * @param string $sort. Optional. Default NULL. Sortierung der Ergebnisse + * @param integer $studienplan_id. Optional. Default NULL. Studienplan ID, dessen Bewerbungstermine geladen werden sollen + * @param string $nationengruppe_kurzbz. Optional. Default NULL. Wenn gesetzt, werden die Bewerbungstermine dieser Nationengruppe geladen, wenn 0 werden alle NULL-Werte geladen, wenn NULL, wird der Parameter gar nicht geladen * @return true wenn ok, false im Fehlerfall */ - public function getBewerbungstermine($studiengang_kz, $studiensemester_kurzbz = null, $sort = null, $studienplan_id = null) + public function getBewerbungstermine($studiengang_kz, $studiensemester_kurzbz = null, $sort = null, $studienplan_id = null, $nationengruppe_kurzbz = null) { $qry = "SELECT tbl_bewerbungstermine.*, @@ -122,18 +125,30 @@ class bewerbungstermin extends basis_db WHERE studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER); - if($studiensemester_kurzbz!=null) + if($studiensemester_kurzbz != '') $qry.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz); - if($studienplan_id!=null) + if($studienplan_id != '') $qry.=" AND studienplan_id=".$this->db_add_param($studienplan_id); + if($nationengruppe_kurzbz !== '') + { + if($nationengruppe_kurzbz === 0) + { + $qry.=" AND nationengruppe_kurzbz IS NULL"; + } + elseif($nationengruppe_kurzbz != '') + { + $qry.=" AND nationengruppe_kurzbz=".$this->db_add_param($nationengruppe_kurzbz); + } + } + if($sort != null) { $qry.=" ORDER BY ".$sort; } $qry.=";"; - +//echo $qry; if($this->db_query($qry)) { while($row = $this->db_fetch_object()) @@ -154,6 +169,7 @@ class bewerbungstermin extends basis_db $obj->updatevon = $row->updatevon; $obj->studienplan_id = $row->studienplan_id; $obj->stpl_bezeichnung = $row->stpl_bezeichnung; + $obj->nationengruppe_kurzbz = $row->nationengruppe_kurzbz; $this->result[] = $obj; } @@ -190,7 +206,7 @@ class bewerbungstermin extends basis_db { //Neuen Datensatz einfuegen - $qry='BEGIN; INSERT INTO public.tbl_bewerbungstermine(studiensemester_kurzbz, studiengang_kz, beginn, ende, nachfrist, nachfrist_ende, anmerkung, insertamum, insertvon, studienplan_id) VALUES('. + $qry='BEGIN; INSERT INTO public.tbl_bewerbungstermine(studiensemester_kurzbz, studiengang_kz, beginn, ende, nachfrist, nachfrist_ende, anmerkung, insertamum, insertvon, nationengruppe_kurzbz, studienplan_id) VALUES('. $this->db_add_param($this->studiensemester_kurzbz).', '. $this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '. $this->db_add_param($this->beginn).', '. @@ -199,6 +215,7 @@ class bewerbungstermin extends basis_db $this->db_add_param($this->nachfrist_ende).', '. $this->db_add_param($this->anmerkung).', now(),'. $this->db_add_param($this->insertvon).','. + $this->db_add_param($this->nationengruppe_kurzbz).','. $this->db_add_param($this->studienplan_id, FHC_INTEGER).');'; } else @@ -213,6 +230,7 @@ class bewerbungstermin extends basis_db 'anmerkung='.$this->db_add_param($this->anmerkung).', '. 'updateamum= now(), '. 'updatevon='.$this->db_add_param($this->updatevon).', '. + 'nationengruppe_kurzbz='.$this->db_add_param($this->nationengruppe_kurzbz).', '. 'studienplan_id='.$this->db_add_param($this->studienplan_id, FHC_INTEGER).' '. 'WHERE bewerbungstermin_id='.$this->db_add_param($this->bewerbungstermin_id, FHC_INTEGER, false).';'; } diff --git a/include/nation.class.php b/include/nation.class.php index 5eecb9fc7..2bf0b67d0 100644 --- a/include/nation.class.php +++ b/include/nation.class.php @@ -41,6 +41,7 @@ class nation extends basis_db public $kurztext; public $langtext; public $engltext; + public $nationengruppe_kurzbz; /** * Konstruktor @@ -83,6 +84,7 @@ class nation extends basis_db $this->kurztext = $row->kurztext; $this->langtext = $row->langtext; $this->engltext = $row->engltext; + $this->nationengruppe_kurzbz = $row->nationengruppe_kurzbz; } else { @@ -131,6 +133,7 @@ class nation extends basis_db $nation->kurztext = $row->kurztext; $nation->langtext = $row->langtext; $nation->engltext = $row->engltext; + $nation->nationengruppe_kurzbz = $row->nationengruppe_kurzbz; $this->nation[] = $nation; } @@ -146,7 +149,7 @@ class nation extends basis_db { - $qry='INSERT INTO bis.tbl_nation (nation_code, entwicklungsstand, eu, ewr, kontinent, kurztext, langtext, engltext, sperre) VALUES('. + $qry='INSERT INTO bis.tbl_nation (nation_code, entwicklungsstand, eu, ewr, kontinent, kurztext, langtext, engltext, nationengruppe_kurzbz, sperre) VALUES('. $this->db_add_param($this->code).', '. $this->db_add_param($this->entwicklungsstand).', '. $this->db_add_param($this->eu, FHC_BOOLEAN).', '. @@ -155,6 +158,7 @@ class nation extends basis_db $this->db_add_param($this->kurztext).', '. $this->db_add_param($this->langtext).', '. $this->db_add_param($this->engltext).', '. + $this->db_add_param($this->nationengruppe_kurzbz).', '. $this->db_add_param($this->sperre, FHC_BOOLEAN).');'; diff --git a/include/nationengruppe.class.php b/include/nationengruppe.class.php new file mode 100644 index 000000000..0db30b3f7 --- /dev/null +++ b/include/nationengruppe.class.php @@ -0,0 +1,131 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +/** + * Klasse Nationengruppe (FAS-Online) + * @create 06-04-2006 + */ +require_once(dirname(__FILE__).'/basis_db.class.php'); + +class nationengruppe extends basis_db +{ + public $new; // boolean + public $nationengruppe = array(); // nation Objekt + + //Tabellenspalten + public $nationengruppe_kurzbz; // varchar(16) + public $nationengruppe_bezeichnung; // varchar (128) + public $aktiv; // Boolean + + /** + * Konstruktor + * @param string $nationengruppe_kurzbz Zu ladende Nationengruppe + */ + public function __construct($nationengruppe_kurzbz = null) + { + parent::__construct(); + + if($nationengruppe_kurzbz != null) + $this->load($nationengruppe_kurzbz); + } + + + /** + * Laedt die Nationengruppe + * @param string $nationengruppe_kurzbz Kurzbz der Nationengruppe + * @return true wenn ok, false im Fehlerfall + */ + public function load($nationengruppe_kurzbz) + { + //Lesen der Daten aus der Datenbank + $qry = "SELECT * FROM bis.tbl_nationengruppe WHERE nationengruppe_kurzbz=".$this->db_add_param($nationengruppe_kurzbz).';'; + + if(!$this->db_query($qry)) + { + $this->errormsg = 'Fehler bei einer Datenbankabfrage'; + return false; + } + + if($row = $this->db_fetch_object()) + { + $this->nationengruppe_kurzbz = $row->nationengruppe_kurzbz; + $this->nationengruppe_bezeichnung = $row->nationengruppe_bezeichnung; + $this->aktiv = $this->db_parse_bool($row->aktiv); + } + else + { + $this->errormsg = 'Kein Datensatz vorhanden!'; + return false; + } + return true; + } + + /** + * Laedt alle Nationengruppen + * @return true wenn ok, false im Fehlerfall + */ + public function getAll() + { + $qry = "SELECT * FROM bis.tbl_nationengruppe;"; + + if (!$this->db_query($qry)) + { + $this->errormsg = 'Fehler bei einer Datenbankabfrage'; + return false; + } + + while ($row = $this->db_fetch_object()) + { + $nationengruppe = new nationengruppe(); + + $nationengruppe->nationengruppe_kurzbz = $row->nationengruppe_kurzbz; + $nationengruppe->nationengruppe_bezeichnung = $row->nationengruppe_bezeichnung; + $nationengruppe->aktiv = $this->db_parse_bool($row->aktiv); + + $this->nationengruppe[] = $nationengruppe; + } + + return true; + } + + /** + * Speichert die Nationengruppe + * @return true wenn erfolgreich, false im Fehlerfall + */ + public function save() + { + $qry='INSERT INTO bis.tbl_nationengruppe (nationengruppe_kurzbz, nationengruppe_bezeichnung, aktiv) VALUES('. + $this->db_add_param($this->nationengruppe_kurzbz).', '. + $this->db_add_param($this->nationengruppe_bezeichnung).', '. + $this->db_add_param($this->aktiv, FHC_BOOLEAN).');'; + + if($this->db_query($qry)) + { + return true; + } + else + { + $this->errormsg = 'Fehler beim Speichern des Nationengruppe-Datensatzes:'.$this->nationengruppe_kurzbz.' '.$qry; + return false; + } + } +}