diff --git a/content/einheiten.rdf.php b/content/einheiten.rdf.php deleted file mode 100644 index 382ee5c93..000000000 --- a/content/einheiten.rdf.php +++ /dev/null @@ -1,65 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/einheit.class.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - - -// Einheiten holen -$einheitenDAO=new einheit($conn); -$einheiten=$einheitenDAO->getAll(); - - - -$rdf_url='http://www.technikum-wien.at/tempus/einheiten'; - -?> - - - - - - - - - - kurzbz ?> - stg_kz ?> - stg_kurzbz ?> - bezeichnung ?> - semester ?> - typ ?> - - - - - - - - \ No newline at end of file diff --git a/content/fachbereich.rdf.php b/content/fachbereich.rdf.php deleted file mode 100644 index 79f692e9c..000000000 --- a/content/fachbereich.rdf.php +++ /dev/null @@ -1,83 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/fachbereich.class.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - - -// test - -$einheit_kurzbz=''; -$grp='1'; -//$ver='A'; -$sem=5; -$stg_kz=145; - - -/* -$einheit_kurzbz=''; -$grp=$_GET['grp']; -$ver=$_GET['ver']; -$sem=$_GET['sem']; -$stg_kz=$_GET['stg_kz']; */ - -// fachbereiche holen -$fachbereichDAO=new fachbereich($conn); -$fachbereiche=$fachbereichDAO->getAll(); - - - -$rdf_url='http://www.technikum-wien.at/tempus/fachbereich'; - -?> - - - - - - - - - id ?> - kurzbz ?> - bezeichnung ?> - farbe ?> - studiengang_kz ?> - studiengang_kurzbz ?> - - - - - - - \ No newline at end of file diff --git a/content/lehrfach.rdf.php b/content/lehrfach.rdf.php deleted file mode 100644 index f2bb9dbe6..000000000 --- a/content/lehrfach.rdf.php +++ /dev/null @@ -1,69 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/lehrfach.class.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - -// Einheiten holen -$lehrfachDAO=new lehrfach($conn); -$lehrfaecher=$lehrfachDAO->getAll(); - - - -$rdf_url='http://www.technikum-wien.at/tempus/lehrfach'; - -?> - - - - - - - - - - - lehrfach_nr ?> - bezeichnung ?> ]]> - fachbereich_id ?> - kurzbz ?> - lehrelink ?> - farbe ?> - lehrform_kurzbz ?> - aktiv ?> - studiengang_kz ?> - ects ?> - - - - - - - - \ No newline at end of file diff --git a/content/lfvt.rdf.php b/content/lfvt.rdf.php deleted file mode 100644 index 94beba905..000000000 --- a/content/lfvt.rdf.php +++ /dev/null @@ -1,135 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/lfvt.class.php'); -include_once('../include/functions.inc.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; -$uid = get_uid(); -loadVariables($conn,$uid); -// test - -//$einheit_kurzbz=''; -//$grp='1'; -//$ver='A'; -//$sem=5; -//$stg_kz=145; - -$einheit_kurzbz=$_GET['einheit']; -$grp=$_GET['grp']; -$ver=$_GET['ver']; -$sem=$_GET['sem']; -$stg_kz=$_GET['stg_kz']; -$lektor=$_GET['lektor']; - -// LVAs holen -$lvaDAO=new lfvt($conn); -$lvas=$lvaDAO->getLVAs($einheit_kurzbz, $grp, $ver, $sem, $stg_kz,$lektor,$semester_aktuell); - - - -$rdf_url='http://www.technikum-wien.at/tempus/lva'; - -?> - - - -unr; - $lastUNR=($i>0?$lvas[$i-1]->unr:''); - $nextUNR=($i<(count($lvas)-1)?$lvas[$i+1]->unr:''); - $descr.=" - lehrveranstaltung_id."\" about=\"".$rdf_url.'/'.$lva->lehrveranstaltung_id."\" > - ".$lva->lvnr." - ".$lva->unr." - ".$lva->einheit_kurzbz." - ".$lva->lektor." - ".utf8_encode($lva->lektorPrettyPrint)." - ".$lva->lehrfach_nr." - ".$lva->studiengang_kz." - ".$lva->fachbereich_id." - ".$lva->semester."". - (strlen(trim($lva->verband))>0?" ".$lva->verband."":""). - ($lva->gruppe>0?" ".$lva->gruppe."":"")." - ".$lva->raumtyp." - ".$lva->raumtypalternativ." - ".$lva->semesterstunden." - ".$lva->stundenblockung." - ".$lva->wochenrythmus." - ".$lva->start_kw." - ".$lva->anmerkung." - ".$lva->studiensemester_kurzbz." - lehrfach)."]]> - ".$lva->lehrform." - ".$lva->lehrveranstaltung_id." - "; - - $subClose=false; - if (($lastUNR!=$currentUNR && $currentUNR==$nextUNR) || count($lvas)==$i) { - $inSub=true; - $hier.=" - - - lehrveranstaltung_id."\" >"; - } - - if ($nextUNR!=$currentUNR && $inSub) { - $inSub=false; - $subClose=true; - $hier.=" - lehrveranstaltung_id."\" /> - - - "; - } - - if (($inSub && $lastUNR==$currentUNR) || (count($lvas)==1) || (!$inSub && $currentUNR!=nextUNR && !$subClose)) { - $hier.=" - lehrveranstaltung_id."\" /> "; - - } - - - - } - - $hier=" - ".$hier." - "; - echo $descr; - echo $hier; - //print_r($lvas); -} -?> - - - diff --git a/content/mitarbeiter.rdf.php b/content/mitarbeiter.rdf.php deleted file mode 100644 index 4fa07ee58..000000000 --- a/content/mitarbeiter.rdf.php +++ /dev/null @@ -1,75 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/person.class.php'); -include_once('../include/mitarbeiter.class.php'); - -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - -// test -/* -$einheit_kurzbz=''; -$grp='1'; -$ver='A'; -$sem=3; -$stg_kz=145; -*/ - -$einheit_kurzbz=''; -if (isset($_GET['lektor'])) - $lektor=$_GET['lektor']; -else - $lektor=true; -$fixangestellt=$_GET['fixangestellt']; -$stg_kz=$_GET['stg_kz']; -$fachbereich_id=$_GET['fachbereich_id']; - -// Mitarbeiter holen -$mitarbeiter=new mitarbeiter($conn); -$ma=$mitarbeiter->getMitarbeiter($lektor,$fixangestellt,$stg_kz,$fachbereich_id); - -$rdf_url='http://www.technikum-wien.at/tempus/mitarbeiter/'; -?> - - - - - - - - - - uid; ?> - titel; ?> - vornamen; ?> - nachname; ?> - kurzbz; ?> - - - - - \ No newline at end of file diff --git a/content/raumtyp.rdf.php b/content/raumtyp.rdf.php deleted file mode 100644 index 23d735f41..000000000 --- a/content/raumtyp.rdf.php +++ /dev/null @@ -1,61 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/raumtyp.class.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - - -// raumtypen holen -$raumtypDAO=new raumtyp($conn); -$raumtypen=$raumtypDAO->getAll(); - -$rdf_url='http://www.technikum-wien.at/tempus/raumtyp'; - -?> - - - - - - - - - kurzbz ?> - beschreibung ?> - - - - - - - \ No newline at end of file diff --git a/content/student-verbaende.rdf.php b/content/student-verbaende.rdf.php deleted file mode 100644 index 1cf93962f..000000000 --- a/content/student-verbaende.rdf.php +++ /dev/null @@ -1,200 +0,0 @@ -'; -include('../vilesci/config.inc.php'); -include('../include/berechtigung.class.php'); - -$rdf_url='http://www.tempus-student-verbaende.at/'; - -if (!isset($REMOTE_USER)) - $REMOTE_USER='pam'; -$uid=$REMOTE_USER; - -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - -// Berechtigungen ermitteln -$berechtigung=new berechtigung($conn); -$berechtigung->getBerechtigungen($uid); -$berechtigt_studiengang=$berechtigung->getStgKz(); -$stg_kz_query=''; -if ($berechtigt_studiengang[0]!=0 && count($berechtigt_studiengang)>0) -{ - foreach ($berechtigt_studiengang as $b_stg) - $stg_kz_query.=' OR studiengang_kz='.$b_stg; - $stg_kz_query='AND ('.substr($stg_kz_query,3).')'; -} - -$sql_query="SELECT studiengang_kz, bezeichnung, kurzbz FROM tbl_studiengang WHERE studiengang_kz>=0 $stg_kz_query ORDER BY bezeichnung"; -//echo $sql_query; -if(!$result_stg=pg_query($conn, $sql_query)) - $error_msg.=pg_errormessage($conn); -else - $num_rows_stg=@pg_numrows($result_stg); -?> - - - - - - kurzbz.' - '.$row_stg->bezeichnung; ?> - kurzbz; ?> - studiengang_kz; ?> - - studiengang_kz ORDER BY semester"; - if(!($result_sem=pg_query($conn, $sql_query))) - die(pg_errormessage($conn)); - $num_rows_sem=pg_numrows($result_sem); - for ($j=0; $j<$num_rows_sem; $j++) - { - $row_sem=pg_fetch_object($result_sem, $j); - ?> - - kurzbz.'-'.$row_sem->semester; ?> - kurzbz; ?> - studiengang_kz; ?> - semester; ?> - - studiengang_kz AND semester=$row_sem->semester ORDER BY verband"; - if(!($result_ver=pg_exec($conn, $sql_query))) - die(pg_errormessage($conn)); - $num_rows_ver=pg_numrows($result_ver); - for ($k=0; $k<$num_rows_ver; $k++) - { - $row_ver=pg_fetch_object($result_ver, $k); - ?> - - kurzbz.'-'.$row_sem->semester.$row_ver->verband; ?> - kurzbz; ?> - studiengang_kz; ?> - semester; ?> - verband; ?> - - studiengang_kz AND semester=$row_sem->semester AND verband='$row_ver->verband' ORDER BY gruppe"; - if(!($result_grp=pg_exec($conn, $sql_query))) die(pg_errormessage($conn)); - $num_rows_grp=pg_numrows($result_grp); - for ($l=0; $l<$num_rows_grp; $l++) - { - $row_grp=pg_fetch_object($result_grp, $l); - ?> - - kurzbz.'-'.$row_sem->semester.$row_ver->verband.$row_grp->gruppe; ?> - kurzbz; ?> - studiengang_kz; ?> - semester; ?> - verband; ?> - gruppe; ?> - - studiengang_kz AND semester=$row_sem->semester ORDER BY bezeichnung"; - //echo $sql_query; - if(!($result_einh=pg_exec($conn, $sql_query))) - die(pg_errormessage($conn)); - $num_rows_einh=pg_numrows($result_einh); - for ($m=0; $m<$num_rows_einh; $m++) - { - $row_einh=pg_fetch_object($result_einh, $m); - ?> - - einheit_kurzbz.'-'.$row_einh->bezeichnung; ?> - kurzbz; ?> - studiengang_kz; ?> - semester; ?> - einheit_kurzbz; ?> - - - - - - - - - studiengang_kz ORDER BY semester"; - if(!($result_sem=pg_query($conn, $sql_query))) - die(pg_errormessage($conn)); - $num_rows_sem=pg_numrows($result_sem); - for ($j=0; $j<$num_rows_sem; $j++) - { - $row_sem=pg_fetch_object($result_sem, $j); - ?> - - - - studiengang_kz AND semester=$row_sem->semester ORDER BY verband"; - if(!($result_ver=pg_exec($conn, $sql_query))) - die(pg_errormessage($conn)); - $num_rows_ver=pg_numrows($result_ver); - for ($k=0; $k<$num_rows_ver; $k++) - { - $row_ver=pg_fetch_object($result_ver, $k); - ?> - - - - studiengang_kz AND semester=$row_sem->semester AND verband='$row_ver->verband' ORDER BY gruppe"; - if(!($result_grp=pg_exec($conn, $sql_query))) - die(pg_errormessage($conn)); - $num_rows_grp=pg_numrows($result_grp); - for ($l=0; $l<$num_rows_grp; $l++) - { - $row_grp=pg_fetch_object($result_grp, $l); - ?> - - - - - studiengang_kz AND semester=$row_sem->semester ORDER BY bezeichnung"; - //echo $sql_query; - if(!($result_einh=pg_exec($conn, $sql_query))) - die(pg_errormessage($conn)); - $num_rows_einh=pg_numrows($result_einh); - for ($m=0; $m<$num_rows_einh; $m++) - { - $row_einh=pg_fetch_object($result_einh, $m); - ?> - - - - - - - - - - - - diff --git a/content/studenten.rdf.php b/content/studenten.rdf.php deleted file mode 100644 index 0a1a95dc4..000000000 --- a/content/studenten.rdf.php +++ /dev/null @@ -1,92 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/person.class.php'); -include_once('../include/student.class.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - -// test -/* -$einheit_kurzbz=''; -$grp='1'; -$ver='A'; -$sem=3; -$stg_kz=145; -*/ - -$einheit_kurzbz=$_GET['einheit']; -$grp=$_GET['grp']; -$ver=$_GET['ver']; -$sem=$_GET['sem']; -$stg_kz=$_GET['stg_kz']; - -// Studenten holen -$studentenDAO=new student($conn); -$studenten=$studentenDAO->getStudents($einheit_kurzbz, $grp, $ver, $sem,$stg_kz); - -$rdf_url='http://www.technikum-wien.at/tempus/studenten'; - -?> - - - - - - - - - - uid ?> - titel ?> - vornamen ?> - nachname ?> - matrikelnr ?> - gebdatum ?> - email ?> - homepage ?> - aktiv?'True':'False') ?> - gebort ?> - gebzeit ?> - foto ?> - anmerkungen ?> - updateamum ?> - updatevon ?> - gruppe ?> - verband ?> - semester ?> - studiengang_kz ?> - stg_bezeichnung ?> - - - - - - - - \ No newline at end of file diff --git a/content/studiengang.rdf.php b/content/studiengang.rdf.php deleted file mode 100644 index d498ab26f..000000000 --- a/content/studiengang.rdf.php +++ /dev/null @@ -1,66 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/studiengang.class.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - -// raumtypen holen -$studiengangDAO=new studiengang($conn); -$studiengaenge=$studiengangDAO->getAll(); - -$rdf_url='http://www.technikum-wien.at/tempus/studiengang'; - -?> - - - - - - - - - studiengang_kz ?> - kurzbz ?> - kurzbzlang ?> - bezeichnung ?> - max_semester ?> - typ ?> - farbe ?> - email ?> - - - - - - - \ No newline at end of file diff --git a/content/studiensemester.rdf.php b/content/studiensemester.rdf.php deleted file mode 100644 index a29eaf0c0..000000000 --- a/content/studiensemester.rdf.php +++ /dev/null @@ -1,60 +0,0 @@ -'; -// DAO -include('../vilesci/config.inc.php'); -include_once('../include/studiensemester.class.php'); - -// Datenbank Verbindung -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; - -// studiensemester holen -$studiensemesterDAO=new studiensemester($conn); -$studiensemesterAll=$studiensemesterDAO->getAll(); - -$rdf_url='http://www.technikum-wien.at/tempus/studiensemester'; - -?> - - - - - - - - - - - kurzbz ?> - start ?> ]]> - ende ?> - - - - - - - - diff --git a/content/xxxstpl-lehrstunde.rdf.php b/content/xxxstpl-lehrstunde.rdf.php deleted file mode 100644 index 6bd82aa5c..000000000 --- a/content/xxxstpl-lehrstunde.rdf.php +++ /dev/null @@ -1,101 +0,0 @@ -'; -//echo ''; -include('../vilesci/config.inc.php'); -include('../include/functions.inc.php'); -include('../include/lehrstunde.class.php'); -include('../include/stundenplan.class.php'); - -// Testumgebung -if (!isset($REMOTE_USER)) - $REMOTE_USER='pam'; - -$uid=$REMOTE_USER; - -// Variablen uebernehmen -if (isset($_GET[aktion])) - $aktion=$_GET[aktion]; -if (isset($_GET[new_stunde])) - $new_stunde=$_GET[new_stunde]; -if (isset($_GET[new_datum])) - $new_datum=$_GET[new_datum]; -if (isset($_GET[type])) - $type=$_GET[type]; -if (isset($_GET[ort_kurzbz])) - $ort_kurzbz=$_GET[ort_kurzbz]; -else - $ort_kurzbz='EDV6.08'; -$i=0; -$name_stpl_id='stundenplan_id'.$i; -while ($i<100 && isset($_GET[$name_stpl_id])) -{ - $stpl_id[]=$_GET[$name_stpl_id]; - //echo $stpl_id[$i]; - $name_stpl_id='stundenplan_id'.++$i; - -} - - -if (!$conn = @pg_pconnect(CONN_STRING)) - $error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!'; -$error_msg.=loadVariables($conn,$REMOTE_USER); - -// Authentifizierung -if ($uid=check_student($REMOTE_USER, $conn)) - $user='student'; -elseif ($uid=check_lektor($REMOTE_USER, $conn)) - $user='lektor'; -else - die("Cannot set usertype!"); - - // User bestimmen -if (!isset($type)) - $type=$user; -if (!isset($pers_uid)) - $pers_uid=$uid; - - // Datums Format -$erg_std=pg_query($conn, "SET datestyle TO ISO;") - or die(pg_last_error($conn)); - - -// Aktionen durchfuehren -if ($aktion=='stplverschieben') -{ - foreach ($stpl_id as $stundenplan_id) - { - $lehrstunde=new lehrstunde($conn); - $lehrstunde->load($stundenplan_id,$db_stpl_table); - $lehrstunde->datum=$new_datum; - $lehrstunde->stunde=$new_stunde; - $lehrstunde->save($db_stpl_table); - } -} -// Stundenplan abfragen -$stdplan=new stundenplan($type,$conn); -if (!isset($datum)) - $datum=mktime(); - -// Benutzergruppe -$stdplan->user=$user; -// aktueller Benutzer -$stdplan->user_uid=$uid; - -// Zusaetzliche Daten laden -if (! $stdplan->load_data($type,$pers_uid,$ort_kurzbz,$stg_kz,$sem,$ver,$grp,$einheit_kurzbz,$db_table) ) - die($stdplan->errormsg); -// Stundenplan einer Woche laden -if (! $stdplan->load_week($datum,$db_stpl_table)) - die($stdplan->errormsg); -// Kopfbereich drucken - -// Stundenplan der Woche in RDF drucken -$stdplan->draw_week_rdf(); -?> \ No newline at end of file diff --git a/include/lehreinheit.class.php b/include/lehreinheit.class.php index 027ad20bd..6704a1346 100644 --- a/include/lehreinheit.class.php +++ b/include/lehreinheit.class.php @@ -15,7 +15,7 @@ * 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 , + * Authors: Christian Paminger , * Andreas Oesterreicher and * Rudolf Hangl . */ @@ -26,7 +26,7 @@ class lehreinheit var $errormsg; // string var $new; // boolean var $lehreinheiten = array(); // lehreinheit Objekt - + //Tabellenspalten var $lehreinheit_id; // integer var $lehrveranstaltung_id; // integer @@ -48,33 +48,33 @@ class lehreinheit var $updatevon; // varchar(16) var $sprache; // varchar(16) var $ext_id; // bigint - + // ************************************************************************* // * Konstruktor - Uebergibt die Connection und laedt optional eine LE // * @param $conn Datenbank-Connection // * $gruppe_kurzbz - // * $unicode Gibt an ob die Daten mit UNICODE Codierung + // * $unicode Gibt an ob die Daten mit UNICODE Codierung // * oder LATIN9 Codierung verarbeitet werden sollen // ************************************************************************* function lehreinheit($conn, $lehreinheit_id=null, $unicode=false) { $this->conn = $conn; - + if($unicode) $qry = "SET CLIENT_ENCODING TO 'UNICODE';"; - else + else $qry = "SET CLIENT_ENCODING TO 'LATIN9';"; - + if(!pg_query($conn,$qry)) { $this->errormsg = 'Encoding konnte nicht gesetzt werden'; return false; } - + if($lehreinheit_id!=null) $this->load($lehreinheit_id); } - + // ********************************************************* // * Laedt die LE // * @param lehreinheit_id @@ -85,13 +85,13 @@ class lehreinheit { $this->errormsg = 'Lehreinheit_id muss eine gueltige Zahl sein'; } - + $qry = "SELECT * FROM lehre.tbl_lehreinheit WHERE lehreinheit_id='$lehreinheit_id'"; - + if($result = pg_query($this->conn, $qry)) { if($row = pg_fetch_object($result)) - { + { $this->lehreinheit_id = $row->lehreinheit_id; $this->lehrveranstaltung_id = $row->lehrveranstaltung_id; $this->studiensemester_kurzbz = $row->studiensemester_kurzbz; @@ -111,26 +111,26 @@ class lehreinheit $this->insertvon = $row->insertvon; $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; - $this->ext_id = $row->ext_id; + $this->ext_id = $row->ext_id; } } - else + else { $this->errormsg = 'Fehler beim Laden der Lehreinheit'; return false; } } - + function load_lehreinheiten($lehrveranstaltung_id, $studiensemester_kurzbz) { $qry = "SELECT * FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id='$lehrveranstaltung_id' AND studiensemester_kurzbz='$studiensemester_kurzbz'"; - + if($result = pg_query($this->conn, $qry)) { while($row = pg_fetch_object($result)) { $le_obj = new lehreinheit($this->conn); - + $le_obj->lehreinheit_id = $row->lehreinheit_id; $le_obj->lehrveranstaltung_id = $row->lehrveranstaltung_id; $le_obj->studiensemester_kurzbz = $row->studiensemester_kurzbz; @@ -151,19 +151,19 @@ class lehreinheit $le_obj->updateamum = $row->updateamum; $le_obj->updatevon = $row->updatevon; $le_obj->ext_id = $row->ext_id; - + $this->lehreinheiten[] = $le_obj; } } - else + else { $this->errormsg = 'Fehler beim Laden der Lehreinheiten'; return false; } } - + // ******************************************* - // * Prueft die Variablen vor dem Speichern + // * Prueft die Variablen vor dem Speichern // * auf Gueltigkeit. // * @return true wenn ok, false im Fehlerfall // ******************************************* @@ -267,7 +267,7 @@ class lehreinheit // ************************************************ // * wenn $var '' ist wird NULL zurueckgegeben - // * wenn $var !='' ist werden Datenbankkritische + // * wenn $var !='' ist werden Datenbankkritische // * Zeichen mit Backslash versehen und das Ergbnis // * unter Hochkomma gesetzt. // ************************************************ @@ -286,7 +286,7 @@ class lehreinheit { if(is_null($new)) $new = $this->new; - + //Variablen auf Gueltigkeit pruefen if(!$this->validate()) return false; @@ -294,8 +294,8 @@ class lehreinheit if($new) { //ToDo ID entfernen - $qry = 'INSERT INTO lehre.tbl_lehreinheit (lehrveranstaltung_id, studiensemester_kurzbz, - lehrfach_id, lehrform_kurzbz, stundenblockung, wochenrythmus, + $qry = 'INSERT INTO lehre.tbl_lehreinheit (lehrveranstaltung_id, studiensemester_kurzbz, + lehrfach_id, lehrform_kurzbz, stundenblockung, wochenrythmus, start_kw, raumtyp, raumtypalternativ, lehre, anmerkung, unr, lvnr, insertamum, insertvon, updateamum, updatevon, ext_id, sprache) VALUES('.$this->addslashes($this->lehrveranstaltung_id).','. $this->addslashes($this->studiensemester_kurzbz).','. @@ -351,5 +351,188 @@ class lehreinheit return false; } } + + /************************************************************************* + * Prueft die geladene Lehrveranstaltung auf Kollisionen im Stundenplan. + * Rueckgabewert 'false' und die Fehlermeldung steht in '$this->errormsg'. + * @param string datum gewuenschtes Datum YYYY-MM-TT + * @param integer stunde gewuenschte Stunde + * @param string ort gewuenschter Ort + * @param string db_stpl_table Tabllenname des Stundenplans im DBMS + * @return boolean true=ok, false=fehler + *************************************************************************/ + function check_lva($datum,$stunde,$ort,$stpl_table) + { + // Parameter Checken + // Bezeichnung der Stundenplan-Tabelle und des Keys + $stpl_id=$stpl_table.TABLE_ID; + $stpl_table=TABLE_BEGIN.$stpl_table; + + /*// Connection holen + if (is_null($conn=$this->getConnection())) + { + return false; + }*/ + + // Datenbank abfragen + $sql_query="SELECT $stpl_id FROM $stpl_table + WHERE datum='$datum' AND stunde=$stunde + AND ((ort_kurzbz='$ort' OR (uid='$this->lektor' AND uid!='_DummyLektor')) + AND unr!=$this->unr)"; //AND lehrveranstaltung_id!=$this->lehrveranstaltung_id + //$this->errormsg=$sql_query; + if (! $erg_stpl=pg_query($this->conn, $sql_query)) + { + $this->errormsg=pg_last_error($this->conn); + //echo $this->errormsg; + return false; + } + $anzahl=pg_numrows($erg_stpl); + //Check + if ($anzahl==0) + return true; + else + { + $row=pg_fetch_row($erg_stpl); + $this->errormsg="Kollision mit StundenplanID($stpl_table.$stpl_id): $row[0]"; + return false; + } + } + + /************************************************************************* + * Speichert die geladene Lehrveranstaltung im Stundenplan. + * Rueckgabewert 'false' und die Fehlermeldung steht in '$this->errormsg'. + * @param string datum gewuenschtes Datum YYYY-MM-TT + * @param integer stunde gewuenschte Stunde + * @param string ort gewuenschter Ort + * @param string db_stpl_table Tabllenname des Stundenplans im DBMS + * @param string user UID des aktuellen Bentzers + * @return boolean true=ok, false=fehler + *************************************************************************/ + function save_stpl($datum,$stunde,$ort,$stpl_table, $user) + { + // Parameter Checken + // Bezeichnung der Stundenplan-Tabelle und des Keys + $stpl_id=$stpl_table.TABLE_ID; + $stpl_table=TABLE_BEGIN.$stpl_table; + + // Datenbank abfragen + $sql_query="INSERT INTO $stpl_table + (unr,uid,datum, stunde, ort_kurzbz,lehrfach_nr,lehrform_kurzbz,studiengang_kz,semester,verband, + gruppe, einheit_kurzbz, titel, anmerkung, updatevon, lehrveranstaltung_id) + VALUES ($this->unr,'$this->lektor','$datum',$stunde, + '$ort',$this->lehrfach_nr, '$this->lehrform', $this->studiengang_kz,$this->semester, + '$this->verband','$this->gruppe'"; + if ($this->einheit_kurzbz==null) + $sql_query.=',NULL'; + else + $sql_query.=",'$this->einheit_kurzbz'"; + $sql_query.=",'$this->titel','$this->anmerkung','$user',$this->lehrveranstaltung_id)"; + //$this->errormsg=$sql_query.'
'; + //return false; + if (! $erg_stpl=pg_query($this->conn, $sql_query)) + { + $this->errormsg=pg_last_error($this->conn); + //echo $this->errormsg; + return false; + } + return true; + } + + /** + * Rueckgabewert ist ein Array mit den Ergebnissen. Bei Fehler false und die + * Fehlermeldung liegt in errormsg. + * Wenn der Parameter stg_kz NULL ist tritt einheit_kurzbzb in Kraft. + * @param string $einheit_kurzbz Einheit + * @param string grp Gruppe + * @param string ver Verband + * @param integer sem Semester + * @param integer stg_kz Kennzahl des Studiengangs + * @return variabel Array mit LVA; false bei Fehler + */ + function getLehreinheitLVPL($db_stpl_table,$studiensemester, $type, $stg_kz, $sem, $lektor, $ver=null, $grp=null, $gruppe=null) + { + $lva_stpl_view=VIEW_BEGIN.'lva_'.$db_stpl_table; + + if (strlen($studiensemester)<=0) + { + $this->errormsg='Ausbildungssemester ist nicht gesetzt!'; + return false; + } + else $where=" studiensemester_kurzbz='$studiensemester'"; + + if ($type=='lektor') + $where.=" AND lektor_uid='$lektor'"; + elseif ($type=='einheit') + $where.=" AND einheit='$einheit'"; + elseif ($type=='verband') + { + $where.=" AND studiengang_kz='$stg_kz'"; + if ($sem>0) + $where.=" AND semester=$sem"; + if (strlen($ver)>0 && $ver!=' ') + $where.=" AND verband='$ver'"; + if (strlen($grp)>0 && $grp!=' ') + $where.=" AND gruppe='$grp' "; + } + $sql_query='SELECT *, semesterstunden-verplant::smallint AS offenestunden + FROM lehre.'.$lva_stpl_view.' JOIN lehre.tbl_lehrform ON '.$lva_stpl_view.'.lehrform=tbl_lehrform.lehrform_kurzbz + WHERE '.$where.' AND verplanen ORDER BY offenestunden DESC, lehrfach, lehrform, semester, verband, gruppe, gruppe_kurzbz;'; + //$this->errormsg=$sql_query; + //return false; + if(!($erg=@pg_exec($this->conn, $sql_query))) + { + $this->errormsg=pg_errormessage($this->conn); + return false; + } + $num_rows=pg_numrows($erg); + $l=array(); + for($i=0;$i<$num_rows;$i++) + { + $row=pg_fetch_object($erg,$i); + //$l[$row->unr]=new lehrveranstaltung(); + $l[$row->unr]->lehreinheit_id[]=$row->lehreinheit_id; + $l[$row->unr]->lvnr[]=$row->lvnr; + $l[$row->unr]->unr=$row->unr; + $l[$row->unr]->fachbereich=$row->fachbereich_kurzbz; + $l[$row->unr]->lehrfach_id=$row->lehrfach_id; + $l[$row->unr]->lehrfach[]=$row->lehrfach; + $l[$row->unr]->lehrfach_bez[]=$row->lehrfach_bez; + $l[$row->unr]->lehrfach_farbe[]=$row->lehrfach_farbe; + $l[$row->unr]->lehrform[]=$row->lehrform; + $l[$row->unr]->lektor_uid[]=$row->lektor_uid; + $l[$row->unr]->lektor[]=trim($row->lektor); + $l[$row->unr]->stg_kz[]=$row->studiengang_kz; + $l[$row->unr]->stg[]=$row->studiengang; + $l[$row->unr]->gruppe_kurzbz[]=$row->gruppe_kurzbz; + $l[$row->unr]->semester[]=$row->semester; + $l[$row->unr]->verband[]=$row->verband; + $l[$row->unr]->gruppe[]=$row->gruppe; + $l[$row->unr]->gruppe_kurzbz[]=$row->gruppe_kurzbz; + $l[$row->unr]->raumtyp=$row->raumtyp; + $l[$row->unr]->raumtypalternativ=$row->raumtypalternativ; + $l[$row->unr]->stundenblockung[]=$row->stundenblockung; + $l[$row->unr]->wochenrythmus[]=$row->wochenrythmus; + $l[$row->unr]->semesterstunden[]=$row->semesterstunden; + $l[$row->unr]->start_kw[]=$row->start_kw; + $l[$row->unr]->anmerkung[]=$row->anmerkung; + $l[$row->unr]->studiensemester_kurzbz=$row->studiensemester_kurzbz; + $l[$row->unr]->verplant[]=$row->verplant; + $l[$row->unr]->offenestunden[]=$row->offenestunden; + if (isset($l[$row->unr]->verplant_gesamt)) + $l[$row->unr]->verplant_gesamt+=$row->verplant; + else + $l[$row->unr]->verplant_gesamt=$row->verplant; + $lvb=$row->studiengang.'-'.$row->semester; + if ($row->verband!='' && $row->verband!=' ' && $row->verband!='0' && $row->verband!=null) + $lvb.=$row->verband; + if ($row->gruppe!='' && $row->gruppe!=' ' && $row->gruppe!='0' && $row->gruppe!=null) + $lvb.=$row->gruppe; + if ($row->gruppe_kurzbz!='' && $row->gruppe_kurzbz!=null) + $l[$row->unr]->lehrverband[]=$row->gruppe_kurzbz; + else + $l[$row->unr]->lehrverband[]=$lvb; + } + return $l; + } } ?> \ No newline at end of file