From acd616a8b5c6ed7c9028f25e3e2dcf6ef1c7ea5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 3 Jan 2007 16:55:50 +0000 Subject: [PATCH] Anpassung LVInfo an neue DB --- .../sync_vilesci_portal_benutzerfunktion.php | 8 +- cis/private/campus/semupload.php | 145 ---- .../lehre/ects/Beispiel_Change_Management.pdf | Bin 0 -> 83734 bytes .../ects/Beispiel_Computerarchitektur.pdf | Bin 0 -> 15016 bytes .../ects/Beispiel_ITProjektarbeit_at.pdf | Bin 0 -> 45298 bytes .../ects/Beispiel_ITProjektarbeit_en.pdf | Bin 0 -> 21122 bytes .../lehre/ects/Beispiel_Projektmarketing.pdf | Bin 0 -> 13576 bytes cis/private/lehre/ects/beispiele.html | 74 ++ cis/private/lehre/ects/freigabe.php | 354 ++++++++ cis/private/lehre/ects/index.php | 621 ++++++++++++++ cis/private/lehre/ects/preview.php | 486 +++++++++++ cis/private/lehre/ects/terminologie.html | 803 ++++++++++++++++++ cis/private/lehre/lesson.php | 54 +- cis/private/lehre/menu.php | 1 - include/lehrveranstaltung.class.php | 131 +-- include/lvinfo.class.php | 166 ++-- 16 files changed, 2499 insertions(+), 344 deletions(-) delete mode 100644 cis/private/campus/semupload.php create mode 100644 cis/private/lehre/ects/Beispiel_Change_Management.pdf create mode 100644 cis/private/lehre/ects/Beispiel_Computerarchitektur.pdf create mode 100644 cis/private/lehre/ects/Beispiel_ITProjektarbeit_at.pdf create mode 100644 cis/private/lehre/ects/Beispiel_ITProjektarbeit_en.pdf create mode 100644 cis/private/lehre/ects/Beispiel_Projektmarketing.pdf create mode 100644 cis/private/lehre/ects/beispiele.html create mode 100644 cis/private/lehre/ects/freigabe.php create mode 100644 cis/private/lehre/ects/index.php create mode 100644 cis/private/lehre/ects/preview.php create mode 100644 cis/private/lehre/ects/terminologie.html diff --git a/admin/sync/sync_vilesci_portal_benutzerfunktion.php b/admin/sync/sync_vilesci_portal_benutzerfunktion.php index b098d4bf5..ea157c704 100644 --- a/admin/sync/sync_vilesci_portal_benutzerfunktion.php +++ b/admin/sync/sync_vilesci_portal_benutzerfunktion.php @@ -25,8 +25,8 @@ //* //* -include('../../vilesci/config.inc.php'); -include('../../include/benutzerfunktion.class.php'); +require_once('../../vilesci/config.inc.php'); +require_once('../../include/benutzerfunktion.class.php'); $conn=pg_connect(CONN_STRING) or die("Connection zur Portal Datenbank fehlgeschlagen"); $conn_vilesci=pg_connect(CONN_STRING_VILESCI) or die("Connection zur Vilesci Datenbank fehlgeschlagen"); @@ -49,7 +49,7 @@ function validate($row) */ //benutzerfunktion -$qry = "SELECT * FROM tbl_personfunktion"; +$qry = 'SELECT * FROM tbl_personfunktion'; if($result = pg_query($conn_vilesci, $qry)) { @@ -59,7 +59,7 @@ if($result = pg_query($conn_vilesci, $qry)) { $error=false; $benutzerfunktion = new benutzerfunktion($conn); - $benutzerfunktion->fachbereich_id =$row->fachbereich_id; + $benutzerfunktion->fachbereich_kurzbz =$row->fachbereich_kurzbz; $benutzerfunktion->uid =$row->uid; $benutzerfunktion->studiengang_kz =$row->studiengang_kz; $benutzerfunktion->funktion_kurzbz =$row->funktion_kurzbz; diff --git a/cis/private/campus/semupload.php b/cis/private/campus/semupload.php deleted file mode 100644 index fc0883783..000000000 --- a/cis/private/campus/semupload.php +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - - - -Upload Semesterplan - - - - - - - - - - - - -"); - - echo ""; - - //Anzeigefeld für Ordnerinhalt - //Auskommentiert fürs Testen - // $sql_query = "SELECT DISTINCT ON(bz2, lehrfachzuteilung_kurzbz) lehrfachzuteilung_kurzbz AS kuerzel, (bezeichnung || '; XX') AS bezeichnung, SUBSTRING(bezeichnung || '; XX', 1, CHAR_LENGTH(bezeichnung || '; XX') - 4) AS bz2 FROM lehre.tbl_lehrfachzuteilung WHERE studiengang_kz='$course_id' AND semester='$term_id' AND NOT(lehrfachzuteilung_kurzbz='') AND lektor_uid='$user' ORDER BY bz2, lehrfachzuteilung_kurzbz"; - $sql_query = "SELECT uid from tbl_mitarbeiter WHERE uid='$user'"; - $result_path_elements = pg_exec($sql_conn, $sql_query); - - if(!$result_path_elements) - die('

Der Benutzer '.$user.' konnte nicht zugeordnet werden!

'); - - $num_rows_path_elements = pg_numrows($result_path_elements); - - if(!($num_rows_path_elements > 0)) - { - die('

Es konnten keine Pfadeinträge gefunden werden.

'); - } - - $row = pg_fetch_object($result_path_elements, 0); - - - echo "'; echo ''; } - writeCISlog('STOP'); ?> diff --git a/include/lehrveranstaltung.class.php b/include/lehrveranstaltung.class.php index a3eade20d..05bf46e8b 100644 --- a/include/lehrveranstaltung.class.php +++ b/include/lehrveranstaltung.class.php @@ -19,10 +19,6 @@ * Andreas Oesterreicher and * Rudolf Hangl . */ -/** - * Klasse lehrveranstaltung (FAS-Online) - * @create 06-12-2006 - */ class lehrveranstaltung { var $conn; // @var resource DB-Handle @@ -30,28 +26,28 @@ class lehrveranstaltung var $new; // @var boolean var $lehrveranstaltungen = array(); // @var lehrveranstaltung Objekt - var $lehrveranstaltung_id; // @var serial - var $studiengang_kz; //@var integer - var $bezeichnung; //@var string + var $lehrveranstaltung_id; // @var serial + var $studiengang_kz; //@var integer + var $bezeichnung; //@var string var $kurzbz; //@var string - var $semester; //@var smallint - var $ects; //@var numeric(5,2) - var $semesterstunden; //@var smallint + var $semester; //@var smallint + var $ects; //@var numeric(5,2) + var $semesterstunden; //@var smallint + + var $anmerkung; //@var string + var $lehre; //@var boolean + var $lehreverzeichnis; //@var string + var $aktiv; //@var boolean + var $ext_id; //@var bigint + var $insertamum; //@var timestamp + var $insertvon; //@var string + var $planfaktor; //@var numeric(3,2) + var $planlektoren; //@var integer + var $planpersonalkosten; //@var numeric(7,2) + var $updateamum; //@var timestamp + var $updatevon; //@var string + var $sprache; //@var varchar(16) - var $anmerkung; //@var string - var $lehre; //@var boolean - var $lehreverzeichnis; //@var string - var $aktiv; //@var boolean - var $ext_id; //@var bigint - var $insertamum; //@var timestamp - var $insertvon; //@var string - var $planfaktor; //@var numeric(3,2) - var $planlektoren; //@var integer - var $planpersonalkosten; //@var numeric(7,2) - var $updateamum; //@var timestamp - var $updatevon; //@var string - - /** * Konstruktor * @param $conn Connection zur Datenbank @@ -105,9 +101,10 @@ class lehrveranstaltung $this->planpersonalkosten=$row->planpersonalkosten; $this->updateamum=$row->updateamum; $this->updatevon=$row->updatevon; - } + $this->sprache=$row->sprache; + } - return true; + return true; } /** @@ -147,18 +144,18 @@ class lehrveranstaltung $lv_obj->planpersonalkosten=$row->planpersonalkosten; $lv_obj->updateamum=$row->updateamum; $lv_obj->updatevon=$row->updatevon; + $lv_obj->sprache=$row->sprache; $this->lehrveranstaltungen[] = $lv_obj; } - return true; + return true; } /** - * Liefert alle Lehrveranstaltungen zu einem Studiengang/Studiensemester/Ausbildungssemester - * @param $studiengang_id ID des Studienganges - * $studiensemester_id ID des Studiensemesters (optional) - * $ausbildungssemester_id ID des ausbildungssemesters (optional) + * Liefert alle Lehrveranstaltungen zu einem Studiengang/Semester + * @param $studiengang_kz + * $semester * @return true wenn ok, false im Fehlerfall */ function load_lva($studiengang_kz, $semester=null, $lehreverzeichnis=null, $lehre=null) @@ -222,6 +219,7 @@ class lehrveranstaltung $lv_obj->planpersonalkosten=$row->planpersonalkosten; $lv_obj->updateamum=$row->updateamum; $lv_obj->updatevon=$row->updatevon; + $lv_obj->sprache=$row->sprache; $this->lehrveranstaltungen[] = $lv_obj; } @@ -238,12 +236,7 @@ class lehrveranstaltung * @return true wenn ok, false im Fehlerfall */ function checkvars() - { - //$this->name = str_replace("'",'´',$this->name); - $this->bezeichnung = str_replace("'",'´',$this->bezeichnung); - $this->kurzbz = str_replace("'",'´',$this->kurzbz); - $this->anmerkung = str_replace("'",'´',$this->anmerkung); - + { //Laenge Pruefen if(strlen($this->bezeichnung)>128) { @@ -319,7 +312,7 @@ class lehrveranstaltung //Neuen Datensatz anlegen $qry = 'INSERT INTO lehre.tbl_lehrveranstaltung (studiengang_kz, bezeichnung, kurzbz, semester, ects, semesterstunden, anmerkung, lehre, lehreverzeichnis, aktiv, ext_id, insertamum, - insertvon, planfaktor, planlektoren, planpersonalkosten, updateamum, updatevon) VALUES ('. + insertvon, planfaktor, planlektoren, planpersonalkosten, updateamum, updatevon, sprache) VALUES ('. $this->addslashes($this->studiengang_kz).', '. $this->addslashes($this->bezeichnung).', '. $this->addslashes($this->kurzbz).', '. @@ -337,7 +330,8 @@ class lehrveranstaltung $this->addslashes($this->planlektoren).', '. $this->addslashes($this->planpersonalkosten).', '. $this->addslashes($this->updateamum).', '. - $this->addslashes($this->updatevon).');'; + $this->addslashes($this->updatevon).','. + $this->addslashes($this->sprache).');'; } else { @@ -349,6 +343,7 @@ class lehrveranstaltung $this->errormsg = 'lehrveranstaltung_id muss eine gueltige Zahl sein'; return false; } + $qry = 'UPDATE lehre.tbl_lehrveranstaltung SET '. //'lehrveranstaltung_id= '.$this->addslashes($this->lehrveranstaltung_id) .', '. 'studiengang_kz='.$this->addslashes($this->studiengang_kz) .', '. @@ -368,29 +363,13 @@ class lehrveranstaltung 'planlektoren='.$this->addslashes($this->planlektoren) .', '. 'planpersonalkosten='.$this->addslashes($this->planpersonalkosten) .', '. 'updateamum='.$this->addslashes($this->updateamum) .','. - 'updatevon='.$this->addslashes($this->updatevon) .' '. - 'WHERE ext_id = '.$this->addslashes($this->lehrveranstaltung_id).';'; + 'updatevon='.$this->addslashes($this->updatevon) .','. + 'sprache='.$this->addslashes($this->sprache).' '. + 'WHERE lehrveranstaltung_id = '.$this->addslashes($this->lehrveranstaltung_id).';'; } if(pg_query($this->conn, $qry)) { - //Log schreiben - /*$sql = $qry; - $qry = "SELECT nextval('log_seq') as id;"; - if(!$row = pg_fetch_object(pg_query($this->conn, $qry))) - { - $this->errormsg = 'Fehler beim Auslesen der Log-Sequence'; - return false; - } - - $qry = "INSERT INTO log(log_pk, creationdate, creationuser, sql) VALUES('$row->id', now(), '$this->updatevon', '".$this->addslashes($sql)."')"; - if(pg_query($this->conn, $qry)) - return true; - else - { - $this->errormsg = 'Fehler beim Speichern des Log-Eintrages'; - return false; - }*/ return true; } else @@ -407,41 +386,7 @@ class lehrveranstaltung */ function delete($lehrveranstaltung_id) { - //lehrveranstaltung_id auf gueltigkeit pruefen - if(!is_numeric($lehrveranstaltung_id) || $lehrveranstaltung_id == '') - { - $this->errormsg = 'lehrveranstaltung_id muss eine gueltige Zahl sein'; - return false; - } - - //Loeschen des Datensatzes - $qry = "DELETE FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_pk = '$lehrveranstaltung_id';"; - - if(pg_query($this->conn, $qry)) - { - //Log schreiben - $sql = $qry; - $qry = "SELECT nextval('log_seq') as id;"; - if(!$row = pg_fetch_object(pg_query($this->conn, $qry))) - { - $this->errormsg = 'Fehler beim Auslesen der Log-Sequence'; - return false; - } - - $qry = "INSERT INTO log(log_pk, creationdate, creationuser, sql) VALUES('$row->id', now(), '$this->updatevon', '".$this->addslashes($sql)."')"; - if(pg_query($this->conn, $qry)) - return true; - else - { - $this->errormsg = 'Fehler beim Speichern des Log-Eintrages'; - return false; - } - } - else - { - $this->errormsg = 'Fehler beim loeschen des Datensatzes'; - return false; - } + return false; } } ?> \ No newline at end of file diff --git a/include/lvinfo.class.php b/include/lvinfo.class.php index 0f7042c43..e2521823b 100644 --- a/include/lvinfo.class.php +++ b/include/lvinfo.class.php @@ -32,8 +32,10 @@ class lvinfo var $result = array(); // @var fachbereich Objekt //Tabellenspalten - var $lvinfo_id; // @var integer + var $lehrveranstaltung_id; // @var integer var $lehrziele; // @var string + var $titel; // @var varchar(256) + var $methodik; // @var string var $lehrinhalte; // @var string var $voraussetzungen; // @var string var $unterlagen; // @var string @@ -47,6 +49,8 @@ class lvinfo var $updatevon=0; // @var string var $insertamum; // @var timestamp var $insertvon=0; // @var string + + var $lastqry; //zuletzt ausgefuehrte qry (benoetigt fuer log) /** * Konstruktor * @param $conn Connection zur DB @@ -76,19 +80,21 @@ class lvinfo { $lvinfo_obj = new lvinfo($this->conn); - $lvinfo_obj->lvinfo_id = $row->lvinfo_id; - $lvinfo_obj->lehrziele = $row->lehrziele; + $lvinfo_obj->lehrveranstaltung_id = $row->lehrveranstaltung_id; + $lvinfo_obj->lehrziele = $row->lehrziele; + $lvinfo_obj->titel = $row->titel; + $lvinfo_obj->methodik = $row->methodik; $lvinfo_obj->lehrinhalte = $row->lehrinhalte; $lvinfo_obj->voraussetzungen = $row->voraussetzungen; $lvinfo_obj->unterlagen = $row->unterlagen; $lvinfo_obj->pruefungsordnung = $row->pruefungsordnung; $lvinfo_obj->anmerkungen = $row->anmerkungen; $lvinfo_obj->kurzbeschreibung = $row->kurzbeschreibung; - $lvinfo_obj->genehmigt = $row->genehmigt; - $lvinfo_obj->aktiv = $row->aktiv; - $lvinfo_obj->sprache = $row->sprache; + $lvinfo_obj->genehmigt = ($row->genehmigt=='t'?true:false); + $lvinfo_obj->aktiv = ($row->aktiv=='t'?true:false); + $lvinfo_obj->sprache = $row->sprache; $lvinfo_obj->insertamum = $row->insertamum; - $lvinfo_obj->insertvon = $row->insertvon; + $lvinfo_obj->insertvon = $row->insertvon; $lvinfo_obj->updateamum = $row->updateamum; $lvinfo_obj->updatevon = $row->updatevon; @@ -99,17 +105,19 @@ class lvinfo /** * Laedt eine LVInfo - * @param $lvinfo_id ID der zu ladenden LVInfo + * @param $lehrveranstaltung_id + * $sprache * @return true wenn ok, false im Fehlerfall */ - function load($lvinfo_id) + function load($lehrveranstaltung_id, $sprache) { - if($lvinfo == '' || !is_numeric($lvinfo_id)) + if($lehrveranstaltung_id == '' || !is_numeric($lehrveranstaltung_id)) { $this->errormsg = 'lvinfo_id ungültig'; return false; } - $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lvinfo_id = '$lvinfo_id';"; + $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id = '$lehrveranstaltung_id' AND sprache='".addslashes($sprache)."';"; + if(!$res = pg_query($this->conn, $qry)) { $this->errormsg = 'Fehler beim Laden des Datensatzes'; @@ -117,26 +125,27 @@ class lvinfo } if($row=pg_fetch_object($res)) { - $this->lvinfo_id = $row->lvinfo_id; + $this->lehrveranstaltung_id = $row->lehrveranstaltung_id; $this->lehrziele = $row->lehrziele; + $this->titel = $row->titel; + $this->methodik = $row->methodik; $this->lehrinhalte = $row->lehrinhalte; $this->voraussetzungen = $row->voraussetzungen; $this->unterlagen = $row->unterlagen; - $this->pruefungsordnung = $row->pruefungsordnung; - $this->anmerkungen = $row->anmerkungen; + $this->pruefungsordnung = $row->pruefungsordnung; + $this->anmerkungen = $row->anmerkungen; $this->kurzbeschreibung = $row->kurzbeschreibung; - $this->genehmigt = $row->genehmigt; - $this->aktiv = $row->aktiv; - $this->sprache = $row->sprache; - $this->kosten = $row->kosten; + $this->genehmigt = ($row->genehmigt=='t'?true:false); + $this->aktiv = ($row->aktiv=='t'?true:false); + $this->sprache = $row->sprache; $this->insertamum = $row->insertamum; $this->insertvon = $row->insertvon; $this->updateamum = $row->updateamum; - $this->updatevon = $row->updatevon; + $this->updatevon = $row->updatevon; } else { - $this->errormsg = 'Es ist kein Datensatz mit dieser ID ('.$lvinfo_id.') vorhanden'; + $this->errormsg = 'Es ist kein Datensatz mit dieser ID ('.$lehrveranstaltung_id.') vorhanden'; return false; } @@ -163,22 +172,17 @@ class lvinfo */ function checkvars() { - $this->lehrziele = str_replace("'",'´',$this->lehrziele); - $this->lehrinhalte = str_replace("'",'´',$this->lehrinhalte); - $this->voraussetzungen = str_replace("'",'´',$this->voraussetzungen); - $this->unterlagen = str_replace("'",'´',$this->unterlagen); - $this->pruefungsordnung = str_replace("'",'´',$this->pruefungsordnung); - $this->anmerkungen = str_replace("'",'´',$this->anmerkungen); - $this->kurzbeschreibung = str_replace("'",'´',$this->kurzbeschreibung); - $this->sprache = str_replace("'",'´',$this->sprache); - //Laenge Pruefen if(strlen($this->sprache)>16) { $this->errormsg = "Sprache darf nicht laenger als 16 Zeichen sein bei ".$this->$lvinfo_id." - $this->sprache"; return false; } - $this->errormsg = ''; + if(!is_numeric($this->lehrveranstaltung_id)) + { + $this->errormsg = 'Lehrveransaltung_id muss eine gueltige Zahl sein'; + return false; + } return true; } /** @@ -192,18 +196,15 @@ class lvinfo return false; if($this->new) - { - //Pruefen ob lvinfo_id eine gueltige Bezeichnung ist - if($this->lvinfo_id == '' || !is_numeric($this->lvinfo_id)) - { - $this->errormsg = 'lvinfo_id ungültig'; - return false; - } - + { //Neuen Datensatz anlegen - $qry = 'BEGIN; INSERT INTO campus.tbl_lvinfo (lehrziele, lehrinhalte, voraussetzungen, unterlagen, pruefungsordnung, anmerkungen, - kurzbeschreibung, genehmigt, aktiv, sprache, insertamum, insertvon, updateamum, + $qry = 'INSERT INTO campus.tbl_lvinfo (lehrveranstaltung_id, sprache, titel, methodik, lehrziele, lehrinhalte, voraussetzungen, unterlagen, pruefungsordnung, anmerkungen, + kurzbeschreibung, genehmigt, aktiv, insertamum, insertvon, updateamum, updatevon) VALUES ('. + $this->addslashes($this->lehrveranstaltung_id).','. + $this->addslashes($this->sprache).', '. + $this->addslashes($this->titel).', '. + $this->addslashes($this->methodik).', '. $this->addslashes($this->lehrziele).', '. $this->addslashes($this->lehrinhalte).', '. $this->addslashes($this->voraussetzungen).', '. @@ -213,7 +214,6 @@ class lvinfo $this->addslashes($this->kurzbeschreibung).', '. ($this->genehmigt?'true':'false').', '. ($this->aktiv?'true':'false').', '. - $this->addslashes($this->sprache).', '. $this->addslashes($this->insertamum).', '. $this->addslashes($this->insertvon).', '. $this->addslashes($this->updateamum).', '. @@ -225,61 +225,35 @@ class lvinfo //bestehenden Datensatz akualisieren //Pruefen ob lvinfo_id gueltig ist - if($this->lvinfo_id == '' || !is_numeric($this->lvinfo_id)) + if($this->lehrveranstaltung_id == '' || !is_numeric($this->lehrveranstaltung_id)) { - $this->errormsg = 'lvinfo_id '.$this->lvinfo_id.' ungültig'; + $this->errormsg = 'lehrveranstaltung_id '.$this->lehrveranstaltung_id.' ungültig'; return false; } - - $qry = 'BEGIN; UPDATE campus.tbl_lvinfo SET '. + + $qry = 'UPDATE campus.tbl_lvinfo SET '. + 'titel='.$this->addslashes($this->titel).','. + 'methodik='.$this->addslashes($this->methodik).','. 'lehrziele='.$this->addslashes($this->lehrziele).', '. 'lehrinhalte='.$this->addslashes($this->lehrinhalte).', '. 'voraussetzungen='.$this->addslashes($this->voraussetzungen).', '. 'pruefungsordnung='.$this->addslashes($this->pruefungsordnung).', '. 'anmerkungen='.$this->addslashes($this->anmerkungen).', '. 'kurzbeschreibung='.$this->addslashes($this->kurzbeschreibung).', '. - 'genehmigt='.($this->aktiv?'true':'false') .', '. + 'unterlagen='.$this->addslashes($this->unterlagen).', '. + 'genehmigt='.($this->genehmigt?'true':'false') .', '. 'aktiv='.($this->aktiv?'true':'false') .', '. - 'sprache='.$this->addslashes($this->sprache).', '. 'insertamum='.$this->addslashes($this->insertamum).', '. 'insertvon='.$this->addslashes($this->insertvon).', '. 'updateamum='.$this->addslashes($this->updateamum).', '. 'updatevon='.$this->addslashes($this->updatevon).' '. - 'WHERE lvinfo_id = '.$this->addslashes($this->lvinfo_id).';'; + 'WHERE lehrveranstaltung_id = '.$this->addslashes($this->lehrveranstaltung_id)." AND sprache=".$this->addslashes($this->sprache).";"; } if(pg_query($this->conn, $qry)) - { - /*//Log schreiben - $sql = $qry; - $qry = "SELECT nextval('log_seq') as id;"; - if(!$row = pg_fetch_object(pg_query($this->conn, $qry))) - { - $this->errormsg = 'Fehler beim Auslesen der Log-Sequence'; - return false; - } - - $qry = "INSERT INTO log(log_pk, creationdate, creationuser, sql) VALUES('$row->id', now(), '$this->updatevon', '".addslashes($sql)."')"; - if(pg_query($this->conn, $qry)) - return true; - else - { - $this->errormsg = 'Fehler beim Speichern des Log-Eintrages'; - return false; - }*/ - $qry = "SELECT currval('campus.tbl_lvinfo_lvinfo_id_seq') as id;"; - if(!$row = pg_fetch_object(pg_query($this->conn, $qry))) - { - $this->errormsg = 'Fehler!'; - pg_query($this->conn, "ROLLBACK"); - return false; - } - else - { - $this->lvinfo_id = $row->id; - pg_query($this->conn, "COMMIT"); - } + { + $this->lastqry=$qry; return true; } else @@ -288,5 +262,41 @@ class lvinfo return false; } } + + function exists($lehrveranstaltung_id, $sprache) + { + if(!is_numeric($lehrveranstaltung_id)) + { + $this->errormsg = 'Lehrveranstaltung_id muss eine gueltige Zahl sein'; + return false; + } + + $qry = "SELECT count(*) as anzahl FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$lehrveranstaltung_id' AND sprache='".addslashes($sprache)."'"; + + if($result=pg_query($this->conn, $qry)) + { + if($row=pg_fetch_object($result)) + { + if($row->anzahl>0) + { + return true; + } + else + { + return false; + } + } + else + { + $this->errormsg ='Fehler bei einer Abfrage'; + return false; + } + } + else + { + $this->errormsg = 'Fehler bei einer Abfrage'; + return false; + } + } } ?> \ No newline at end of file
 Upload Semesterplan
  
 Sie haben keine Berechtigung für diesen Bereich
 "; - if(isset($inhalt)) - { - if($inhalt!="____Ordnerinhalt____") - { - if(is_file($openpath . $inhalt)) - { - exec("rm -r $openpath$inhalt"); - echo "
Datei erfolgreich gelöscht
"; - } - else - { - echo "
Die Datei $openpath$inhalt konnte nicht gefunden werden.
"; - } - } - else - { - echo "
Bitte zuerst eine Datei auswählen
"; - } - } - if(isset($userfile)) - { - if(is_uploaded_file($userfile)) - { - $fn = $_FILES['userfile']['name']; //Original Dateiname - - if(!(substr_count($fn, '.php') > 0 || substr_count($fn, '.php3') > 0 || - substr_count($fn,'.php4') > 0 || substr_count($fn, '.php5') > 0 || - substr_count($fn, '.cgi') > 0 || substr_count($fn, '.pl') > 0)) - { - - copy($userfile,$openpath . $fn); - echo "
Das File wurde erfolgreich hochgeladen
"; - } - else - { - echo "
Dieser Dateityp ist nicht erlaubt
"; - } - } - } - - echo "
 
"; - echo ""; - echo ""; - echo "
"; - - //FileAuswahlfeld - echo "
 
"; - echo " "; - echo " "; - echo "
"; - -?> - - \ No newline at end of file diff --git a/cis/private/lehre/ects/Beispiel_Change_Management.pdf b/cis/private/lehre/ects/Beispiel_Change_Management.pdf new file mode 100644 index 0000000000000000000000000000000000000000..31520b52c95a95e322b2c861d968029061651c66 GIT binary patch literal 83734 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%0D@k%A1+s^)7~}fb-v!sz-)8%g9O~zIW8x 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 NLQO3qCyI{pzW|>eA7B6g literal 0 HcmV?d00001 diff --git a/cis/private/lehre/ects/Beispiel_Computerarchitektur.pdf b/cis/private/lehre/ects/Beispiel_Computerarchitektur.pdf new file mode 100644 index 0000000000000000000000000000000000000000..291500516f559bd8f5f1d13b17a7317bd2a68600 GIT binary patch literal 15016 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 literal 0 HcmV?d00001 diff --git a/cis/private/lehre/ects/Beispiel_ITProjektarbeit_at.pdf b/cis/private/lehre/ects/Beispiel_ITProjektarbeit_at.pdf new file mode 100644 index 0000000000000000000000000000000000000000..2f817ea9565e93591aa44bdc211fdd392e316e5f GIT binary patch literal 45298 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 H96tCL!_oNb literal 0 HcmV?d00001 diff --git a/cis/private/lehre/ects/Beispiel_ITProjektarbeit_en.pdf b/cis/private/lehre/ects/Beispiel_ITProjektarbeit_en.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d1e7e8ef2422b7d7be95d125dba54a8a92c42f7b GIT binary patch literal 21122 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%0A*2VG{6VuBw7|GhXN1)1<1@q9SF1 zMg!9ejYTrkSlM+t1`b*P3IPEH^ctuD>{750C=AvD#>{{OtdLo^0*pZ(v;9mHm?^N+ z!T$VpL^k>t!88tN6=*#$Oh2I!Y}dM$zcs869XNczoCSIr)WBqd39Rh8m7o@^9Po|A zglf<lZxq0Fe!2+g9lr+9WM&>v0(#0u zV0sB0XciK9A7DU__#Xlm@I!DQ(13^h8bA;EH9#@ITn4=Wbdf&;XaSQ3@_z}Sm#n)V z@JjoC0#k&{AImW&;onH|Kf~!iu(1xLz>*7uoj-sSa5y<6(`C{B0#aalZU8A3D7_A( zVCp{tDKO$dkqsn8!vXmHiKOeCU!W8K;0-86B7j1FLn$yNz+xL%iiXSmf~DZsJlFwd zFlpfT3NUGXyeA1J&Adae3Vz4`{D|M!f&iD!n)cSfx)R)g06zHF_Yr_mP$iH7NC(>T z&&rwz7=gF8w_1PGfWLhJeL)WJ>fiPUep&#kRt0|R0KWB(sjI2015F2Joh-08!C--) z2Bd-Y$3_|>3+zcSr(L0PaY2IT#elLhlYdV|L_6)f}9Owe4A z2iC{r{nW)QhgmNR(wQ=VE?J zoGcr21KeC9ZtN5AGVBjIxSR~|P54_`I9vt=IOXp&3>N!m zSwH~sZ<-8%f4`RnJPrWeKWIn<;PSuI0N?tzJ~<=?m}B7cciZ4t4EX){J53G+EM)(n zVZmwjH;v?GW$%c0V}9l8*?Z%`@sQRf5J<3f^pn + + + + +ECTS - LV INFO + + + + + + + + +
  + + + + + + + +
 LV Info - Beispiele
+ + + + + +
+   + + +
+
+ + + + + +
+ +
+
+ + \ No newline at end of file diff --git a/cis/private/lehre/ects/freigabe.php b/cis/private/lehre/ects/freigabe.php new file mode 100644 index 000000000..9a74686a6 --- /dev/null +++ b/cis/private/lehre/ects/freigabe.php @@ -0,0 +1,354 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +/* @author Andres Oesterreicher + @date 20.10.2005 + @brief Formular zum Freigeben der LV Informationen aus der tabelle tbl_lvinfo + + @edit 08-11-2006 Versionierung entfernt. Studiensemester = WS2007 + 03-01-2006 Anpassung an neue DB +*/ + require_once('../../../config.inc.php'); + require_once('../../../../include/functions.inc.php'); + require_once('../../../../include/studiensemester.class.php'); + require_once('../../../../include/lvinfo.class.php'); + + if(!$conn=pg_pconnect(CONN_STRING)) + die('Es konnte keine Verbindung zur Datenbank hergestellt werden'); + + $user = get_uid(); + + /* WriteLog($qry,$uid) + * @brief Schreib die Querys im format: uid - datum - qry ins LogFile + * @param $qry Query anweisung + * $uid Username + * @return true wenn ok false wenn fehler beim oeffnen + */ + function WriteLog($qry,$uid) + { + + if($fp=fopen(LVINFO_LOG_PATH,"a")) + { + fwrite($fp,"\n"); + fwrite($fp,$uid." ". date("d.m.Y - H:i:s") . " ". $qry); + fclose($fp); + return true; + } + else + return false; + } + + if(!check_lektor($user,$conn)) + { + die('

Sie haben keine Berechtigung fuer diesen Bereich
'); + } + + if(isset($_POST['stg'])) //Studiengang der Angezeigt werden soll + $stg=$_POST['stg']; + else if(isset($_GET['stg'])) + $stg=$_GET['stg']; + else + $stg=''; + + if(isset($_POST['sem'])) //Semester das angezeigt werden soll + $sem=$_POST['sem']; + else if(isset($_GET['sem'])) + $sem = $_GET['sem']; + else + $sem=''; + + if(isset($_POST["lv"])) //Id des DS der freigegeben/nicht freigegeben werden soll + $id=$_POST["lv"]; + + if(isset($_GET["del"])) //Wenn diese Variable gesetzt ist dann wird DS mit $idde und $iden geloescht + $del=$_GET["del"]; + + if(isset($_POST["changestat"])) //Wenn diese Variable gesetzt ist dann wird DS mit $id freigegeben/nicht freigegeben + $changestat=$_POST["changestat"]; + + if(!isset($_GET['lv']) && !isset($_POST['lv'])) + $lv=''; + + if(isset($_POST["status"]) && $_POST["status"] =='changestg') + unset($sem); + + if(isset($del) && isset($id)) + { + //Loeschen der beiden Datensaetze + + $lvinfo_obj = new lvinfo($conn); + pg_query('BEGIN'); + if($lvinfo_obj->delete($lv,ATTR_SPRACHE_DE)) + { + if($lvinfo_obj->delete($lv, ATTR_SPRACHE_EN)) + { + if(!WriteLog($lvinfo_obj->lastqry,$user) || !WriteLog($lvinfo_obj,$user)) + { + echo "
Fehler beim Schreiben des Log-files
"; + } + pg_query('COMMIT'); + } + else + { + pg_query('ROLLBACK'); + echo "
Fehler beim loeschen
"; + } + } + else + { + pg_query('ROLLBACK'); + echo "
Fehler beim loeschen
"; + } + } + + if(isset($changestat) && isset($lv) && isset($_GET['lang'])) + { + //Setzt die Spalte genehmigt auf den entsprechenden Wert + //=Wenn Hackerl angeklickt wird + + $qry="SELECT genehmigt FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$lv' AND sprache="; + if($_GET['lang']=='de') + $qry.="'".ATTR_SPRACHE_DE."'"; + else + $qry.="'".ATTR_SPRACHE_EN."'"; + + if($result=pg_query($conn,$qry)) + { + if($row=pg_fetch_object($result)) + { + $wert = $row->genehmigt=='t'?'false':'true'; + $qry="UPDATE campus.tbl_lvinfo SET genehmigt=$wert WHERE lehrveranstaltung_id=$lv AND sprache="; + if($_GET['lang']=='de') + $qry.="'".ATTR_SPRACHE_DE."'"; + else + $qry.="'".ATTR_SPRACHE_EN."'"; + + if(pg_query($conn,$qry)) + WriteLog($qry,$user); + else + echo "Fehler beim Datenbankzugriff"; + } + else + echo "Fehler beim Datenbankzugriff"; + } + else + echo "Fehler beim Datenbankzugriff"; + } + +?> + + + + + +ECTS - LV INFO + + + + + + + + + +
  + + + + + + + +
 LV Info - Freigabe
+ + + + + +
+   + + +
+
+ + "; + echo ""; + echo ""; + //stg Drop Down + $qry = "SELECT distinct tbl_studiengang.studiengang_kz, kurzbzlang FROM campus.tbl_lvinfo, lehre.tbl_lehrveranstaltung, tbl_studiengang + WHERE tbl_lvinfo.aktiv=true + AND tbl_lvinfo.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id + AND tbl_lehrveranstaltung.studiengang_kz=tbl_studiengang.studiengang_kz + ORDER by kurzbzlang"; + if(!$result=pg_query($conn,$qry)) + die ('
Fehler bei einer Datenbankabfrage
'); + + echo "Studiengang "; + + if(!$vorhanden) //Wenn $stg einen Wert enthaelt der nicht in der Liste vorkommt wird der erste Eintrag der Liste ausgewaehlt + $stg=$firststg; + + //Semester Drop Down + $qry = "SELECT distinct semester FROM campus.tbl_lvinfo, lehre.tbl_lehrveranstaltung + WHERE tbl_lvinfo.aktiv=true + AND tbl_lvinfo.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id + AND tbl_lehrveranstaltung.studiengang_kz='$stg' + ORDER by semester"; + if(!$result=pg_query($conn,$qry)) + die ("
Fehler bei einer Datenbankabfrage
"); + + echo " Semester "; + if(!$vorhanden) //Wenn $sem einen Wert enthaelt der nicht in der Liste vorkommt wird der erste Eintrag der Liste ausgewaehlt + $sem=$firstsem; + + //Anzeigen der Liste mit den LV - Informationen + ?> +

+ + + + +
+ + + + + + + + + + + Fehler bei einer Datenbankabfrage"); + + $i=-1; + while($row=pg_fetch_object($result)) + { + $i++; + $qry1="SELECT tbl_lehrveranstaltung.bezeichnung as bezeichnung, tbl_lvinfo.updatevon as updatevon, * FROM campus.tbl_lvinfo JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE tbl_lvinfo.sprache='".ATTR_SPRACHE_EN."' AND lehrveranstaltung_id='$row->lehrveranstaltung_id'"; + + if(!$result1=pg_query($conn,$qry1)) + die("
Fehler bei einer Datenbankabfrage
"); + + if(!$row1=pg_fetch_object($result1)) + die("
Fehler bei einer Datenbankabfrage
"); + + $qry2="SELECT vorname, nachname FROM campus.vw_mitarbeiter WHERE uid='$row->updatevon'"; + + $bearbeitet=$row->updatevon; + if($result2=pg_query($conn,$qry2)) + if($row2=pg_fetch_object($result2)) + $bearbeitet=$row2->vorname.' '.$row2->nachname; + echo "\n"; + echo ""."\n"; + echo ""."\n"; + echo ""."\n"; + //echo ""."\n"; + echo ""."\n"; + echo ""."\n"; + echo ""."\n"; + echo ""."\n"; + echo ""; + } + ?> + +
xLehrfachBearbeitet vonUpdate amAnzeigenOnline
de   en
Delete$row->bezeichnung$row->studiensemester_kurzbz$bearbeitet".$row->amum." "; + echo "genehmigt=='t'?'checked':'').">"."\n"; + echo "genehmigt=='t'?'checked':'').">
+
+
+ + \ No newline at end of file diff --git a/cis/private/lehre/ects/index.php b/cis/private/lehre/ects/index.php new file mode 100644 index 000000000..4875f3700 --- /dev/null +++ b/cis/private/lehre/ects/index.php @@ -0,0 +1,621 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +/* @author Andres Oesterreicher + @date 20.10.2005 + @brief Formular zum eintragen der ECTS Information auf Deutsch und Englisch + Die Informationen werden in der Tabelle tbl_lvinfo gespeichert. + + @edit 08-11-2006 Versionierung entfernt: Studiensemester=WS2007 + 02-01-2007 Umstellung auf die neue DB +*/ + require_once('../../../config.inc.php'); + require_once('../../../../include/functions.inc.php'); + require_once('../../../../include/studiengang.class.php'); + require_once('../../../../include/lehrveranstaltung.class.php'); + require_once('../../../../include/lvinfo.class.php'); + require_once('../../../../include/studiensemester.class.php'); + + $output = ''; + $errormsg = ''; +?> + + + + + +ECTS - LV INFO + + + + +50) + return substr($string,0,47)."..."; + else + return $string; + } + + //Verbindung zur DB herstellen + if(!$conn=pg_pconnect(CONN_STRING)) + die('Fehler beim Connecten zur Datenbank'); + + $user = get_uid(); + + //Berechtigung ueberpruefen + if(!check_lektor($user,$conn)) + { + die("
Sie haben keine Berechtigung für diesen Bereich
"); + } + if(isset($_GET['lvid'])) + $lv=$_GET['lvid']; + + //Variablenuebernahme + if(isset($_POST['lv'])) //LehrveranstaltungsID + $lv = $_POST['lv']; + + if(isset($_GET['lvid'])) + { + $lv_obj = new lehrveranstaltung($conn); + $lv_obj->load($lv); + + if(!isset($stg)) + $stg = $lv_obj->studiengang_kz; + if(!isset($sem)) + $sem = $lv_obj->semester; + } + + if(isset($_POST['changed'])) //Gibt an welches der Auswahlfelder geaendert wurde + $changed = $_POST['changed']; + + if(isset($_POST['status'])) + $status = $_POST['status']; + +// if(isset($_POST["freigeben"])) //Wird auf 'ja' gesetzt wenn gleich freigegebenwerden soll nach dem Speichern +// $freigeben = $_POST["freigeben"]; + + if(isset($_POST['sprache'])) //Sprache fuer dieses Lehrfach + $sprache = $_POST['sprache']; + + //Variablen fuer das Formular + $lehrziele_de = (isset($_POST['lehrziele_de'])?$_POST['lehrziele_de']:''); + $lehrinhalte_de = (isset($_POST['lehrinhalte_de'])?$_POST['lehrinhalte_de']:''); + $voraussetzungen_de = (isset($_POST['voraussetzungen_de'])?$_POST['voraussetzungen_de']:''); + $unterlagen_de = (isset($_POST['unterlagen_de'])?$_POST['unterlagen_de']:''); + $pruefungsordnung_de = (isset($_POST['pruefungsordnung_de'])?$_POST['pruefungsordnung_de']:''); + $anmerkungen_de = (isset($_POST['anmerkungen_de'])?$_POST['anmerkungen_de']:''); + $kurzbeschreibung_de = (isset($_POST['kurzbeschreibung_de'])?$_POST['kurzbeschreibung_de']:''); + $freig_de = (isset($_POST['freig_de'])?($_POST['freig_de']=='on'?true:false):''); + $methodik_de = (isset($_POST['methodik_de'])?$_POST['methodik_de']:''); + $titel_de = (isset($_POST['titel_de'])?$_POST['titel_de']:''); + + $lehrziele_en = (isset($_POST['lehrziele_en'])?$_POST['lehrziele_en']:''); + $lehrinhalte_en = (isset($_POST['lehrinhalte_en'])?$_POST['lehrinhalte_en']:''); + $voraussetzungen_en = (isset($_POST['voraussetzungen_en'])?$_POST['voraussetzungen_en']:''); + $unterlagen_en = (isset($_POST['unterlagen_en'])?$_POST['unterlagen_en']:''); + $pruefungsordnung_en = (isset($_POST['pruefungsordnung_en'])?$_POST['pruefungsordnung_en']:''); + $anmerkungen_en = (isset($_POST['anmerkungen_en'])?$_POST['anmerkungen_en']:''); + $kurzbeschreibung_en = (isset($_POST['kurzbeschreibung_en'])?$_POST['kurzbeschreibung_en']:''); + $freig_en = (isset($_POST['freig_en'])?($_POST['freig_en']=='on'?true:false):''); + $methodik_en = (isset($_POST['methodik_en'])?$_POST['methodik_en']:''); + $titel_en = (isset($_POST['titel_en'])?$_POST['titel_en']:''); + + /* WriteLog($qry,$uid) + * @brief Schreib die Querys im format: uid - datum - qry ins LogFile + * @param $qry Query anweisung + * $uid Username + * @return true wenn ok false wenn fehler beim oeffnen + */ + function WriteLog($qry,$uid) + { + + if($fp=fopen(LVINFO_LOG_PATH,"a")) + { + fwrite($fp,"\n"); + fwrite($fp,$uid." ". date("d.m.Y - H:i:s") . " ". $qry); + fclose($fp); + return true; + } + else + return false; + } + + if(isset($status)) + { + /*Sprachaenderungen nur noch von Assistenz + if($status=='sprachechange' && isset($lv) && $lv!='' && isset($sprache) && $sprache!='') //Aenderung des DropDown Menues Sprache + { + //Bei der aenderung dieses DropDown Menues wird die Sprache in der + //Tabelle LV geaendert + + $qry = "UPDATE tbl_lehrveranstaltung SET sprache = '".addslashes($sprache)."' WHERE lehrveranstaltung_id = '".addslashes($lv)."'"; + if(!pg_query($conn,$qry)) + { + $errormsg.= "Fehler beim schreiben der Sprache in die Tabelle Lehrfach"; + } + else + { + //Schreiben des Log Files + if(!WriteLog($qry,$user)) + $errormsg.= "Fehler beim Schreiben des Log Files."; + } + } + */ + + if($status=='save') // Beim druecken auf "Speichern" + { + //Speichert die aenderungen in der Datenbank (de und en) + $lv_obj_sav= new lvinfo($conn); + $save_error=false; + $save_log_error=false; + //Deutsch + $lv_obj_sav->lehrziele=str_replace("\r\n", "
", $lehrziele_de); + $lv_obj_sav->lehrinhalte=str_replace("\r\n", "
", $lehrinhalte_de); + $lv_obj_sav->voraussetzungen=str_replace("\r\n", "
", $voraussetzungen_de); + $lv_obj_sav->unterlagen=str_replace("\r\n", "
", $unterlagen_de); + $lv_obj_sav->pruefungsordnung=str_replace("\r\n", "
", $pruefungsordnung_de); + $lv_obj_sav->anmerkungen=str_replace("\r\n", "
", $anmerkungen_de); + $lv_obj_sav->kurzbeschreibung=str_replace("\r\n", "
", $kurzbeschreibung_de); + $lv_obj_sav->genehmigt = ($freig_de?true:false); + $lv_obj_sav->updateamum=date('Y-m-d H:i:s'); + $lv_obj_sav->updatevon=$user; + $lv_obj_sav->aktiv=true; + $lv_obj_sav->sprache=ATTR_SPRACHE_DE; + $lv_obj_sav->lehrveranstaltung_id=$lv; + $lv_obj_sav->methodik = str_replace("\r\n", "
", $methodik_de); + $lv_obj_sav->titel = str_replace("\r\n", "
", $titel_de); + + $lv_obj1 = new lvinfo($conn); + $vorhanden=$lv_obj1->exists($lv, ATTR_SPRACHE_DE); + + if(!$vorhanden) + $lv_obj_sav->new=true; + else + $lv_obj_sav->new=false; + + if(!$lv_obj_sav->save()) + $save_error=true; + else + if(!WriteLog($lv_obj_sav->lastqry,$user)) + $save_log_error=true; + + //Englisch + $lv_obj_sav->lehrziele=str_replace("\r\n", "
", $lehrziele_en); + $lv_obj_sav->lehrinhalte=str_replace("\r\n", "
", $lehrinhalte_en); + $lv_obj_sav->voraussetzungen=str_replace("\r\n", "
", $voraussetzungen_en); + $lv_obj_sav->unterlagen=str_replace("\r\n", "
", $unterlagen_en); + $lv_obj_sav->pruefungsordnung=str_replace("\r\n", "
", $pruefungsordnung_en); + $lv_obj_sav->anmerkungen=str_replace("\r\n", "
", $anmerkungen_en); + $lv_obj_sav->kurzbeschreibung=str_replace("\r\n", "
", $kurzbeschreibung_en); + $lv_obj_sav->genehmigt = ($freig_en?true:false); + $lv_obj_sav->aktiv=true; + $lv_obj_sav->updateamum=date('Y-m-d H:i:s'); + $lv_obj_sav->updatevon=$user; + $lv_obj_sav->sprache=ATTR_SPRACHE_EN; + $lv_obj_sav->lehrveranstaltung_id=$lv; + $lv_obj_sav->methodik = str_replace("\r\n", "
", $methodik_en); + $lv_obj_sav->titel = str_replace("\r\n", "
", $titel_en); + + $lv_obj1 = new lvinfo($conn); + $vorhanden = $lv_obj1->exists($lv, ATTR_SPRACHE_EN); + + if(!$vorhanden) + $lv_obj_sav->new=true; + else + $lv_obj_sav->new=false; + + if(!$lv_obj_sav->save()) + $save_error=true; + else + if(!WriteLog($lv_obj_sav->lastqry,$user)) + $save_log_error=true; + + if($save_error) + $errormsg.= "Achtung: Fehler beim Speichern der Daten! Bitte versuchen Sie es erneut".$lv_obj_sav->lastqry; + if($save_log_error) + $errormsg.= "Fehler beim Schreiben des Log Files."; + } + } + + $output .= "\n"; + $output .= ""; + $output .= ""; + + $output .= "
"; + $output .= "
"; + $stg_obj = new studiengang($conn); + + //Anzeigen des DropDown Menues mit Stg + if($stg_obj->getAll('kurzbz')) + { + $output .= "Studiengang "; + if(!$stgselected) + $stg=$firststg; + } + else + { + $errormsg .= "$stg_obj->errormsg"; + } + + //Anzeigen des DropDown Menues mit Semester + if(isset($changed) && $changed=='stg') + { + unset($sem); + unset($lvid); + } + + if($stg_obj->load($stg)) + { + $output .= "Semester "; + + if(!$semselected) + $sem=$firstsem; + } + else + $errormsg .= "$stg_obj->errormsg"; + + //Anzeigen des DropDown Menues mit Lehrveranstaltungen + $lv_obj = new lehrveranstaltung($conn); + if($lv_obj->load_lva($stg,$sem,null,true)) + { + $output .= "Lehrveranstaltung "; + if(!$vorhanden) + $lv=$firstlv; + } + else + { + $errormsg .= "$lv_obj->errormsg"; + } + + $output .= ""; + $output .= ""; + $output .= "
"; + $output .= "
"; + //Menue ausgeben + $output .= "\n"; + $output .= ""; + $output .= "
"; + + $stg_obj->load($stg); + + //Kopfzeile hinausschreiben und $output ausgeben + echo "
 "; + echo ""; + echo "
 LV-INFO - ". $stg_obj->kurzbzlang ."- ".$sem.". Semester
"; + echo $output; + + if(isset($lv) && isset($stg) && isset($sem)) // Wenn oben alles Ausgewaehlt wurde + { + //Anzeige des Formulares + $stg_obj1 = new studiengang($conn); + $stg_obj1->load($stg); + + if(isset($errormsg)) + echo "$errormsg"; + + $lv_obj_en = new lvinfo($conn); + $lv_obj_de = new lvinfo($conn); + + if($lv_obj_en->load($lv, ATTR_SPRACHE_EN)) + $lv_en=$lv_obj_en; + + if($lv_obj_de->load($lv, ATTR_SPRACHE_DE)) + $lv_de=$lv_obj_de; + + if(!isset($_POST['lehrziele_de']) && isset($lv_de)) + { + $lehrziele_de = $lv_de->lehrziele; + $lehrinhalte_de = $lv_de->lehrinhalte; + $voraussetzungen_de = $lv_de->voraussetzungen; + $unterlagen_de = $lv_de->unterlagen; + $pruefungsordnung_de = $lv_de->pruefungsordnung; + $anmerkungen_de = $lv_de->anmerkungen; + $kurzbeschreibung_de = $lv_de->kurzbeschreibung; + $freig_de = $lv_de->genehmigt; + $titel_de = $lv_de->titel; + $methodik_de = $lv_de->methodik; + } + + if(!isset($_POST['lehrziele_en']) && isset($lv_en)) + { + $lehrziele_en = $lv_en->lehrziele; + $lehrinhalte_en = $lv_en->lehrinhalte; + $voraussetzungen_en = $lv_en->voraussetzungen; + $unterlagen_en = $lv_en->unterlagen; + $pruefungsordnung_en = $lv_en->pruefungsordnung; + $anmerkungen_en = $lv_en->anmerkungen; + $kurzbeschreibung_en = $lv_en->kurzbeschreibung; + $freig_en = $lv_en->genehmigt; + $titel_en = $lv_en->titel; + $methodik_en = $lv_en->methodik; + } + + $lv_obj = new lehrveranstaltung($conn); + $lv_obj->load($lv); + echo "

"; + echo "
"; + + echo ""; + echo ""; + + $stsem_obj = new studiensemester($conn); + $stsem = $stsem_obj->getaktorNext(); + //Namen der Lehrenden Auslesen + $qry = "SELECT * FROM campus.vw_mitarbeiter, lehre.tbl_lehreinheitmitarbeiter, lehre.tbl_lehreinheit WHERE lehrveranstaltung_id='$lv' AND tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND studiensemester_kurzbz='$stsem' AND mitarbeiter_uid=uid"; + echo ""; + + //FB Leiter auslesen + $qry = "SELECT vorname, nachname FROM tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE funktion_kurzbz='fbl' AND fachbereich_kurzbz in (SELECT distinct fachbereich_kurzbz FROM lehre.tbl_lehreinheit, lehre.tbl_lehrfach WHERE lehrveranstaltung_id='5575' AND studiensemester_kurzbz='WS2006' AND tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id)"; + echo ""; + + //FB Koordinator auslesen + $qry = "SELECT vorname, nachname FROM tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE funktion_kurzbz='fbk' AND fachbereich_kurzbz in (SELECT fachbereich_kurzbz FROM lehre.tbl_lehrfach, lehre.tbl_lehreinheit WHERE lehrveranstaltung_id='$lv' AND tbl_lehreinheit.lehrfach_id=tbl_lehreinheit.lehrfach_id AND tbl_lehreinheit.studiensemester_kurzbz='$stsem')"; + echo ""; + + //echo "
ECTS - Credits".($lv_obj->ects!=''?number_format($lv_obj->ects,1,'.',''):'')."Bei Fehlern in den Fixfeldern bitte an die zuständige Assistentin wenden.
Lehrende laut Lehrauftrag"; + $helparray = array(); + if($result=pg_exec($conn,$qry)) + { + while($row=pg_fetch_object($result)) + { + if(!in_array("$row->vorname $row->nachname",$helparray))//damit ein Name nicht doppelt vorkommt + $helparray[] = "$row->vorname $row->nachname"; + } + } + + foreach($helparray as $elem) + echo $elem."
"; + echo "
FB Leiter"; + if($result=pg_query($conn,$qry)) + { + while($row=pg_fetch_object($result)) + { + echo "$row->vorname $row->nachname
"; + } + } + echo "
FB Koordinator"; + if($result=pg_query($conn,$qry)) + { + while($row=pg_fetch_object($result)) + { + echo "$row->vorname $row->nachname
"; + } + } + echo "
"; + echo "
"; + + + echo ""; + echo ""; + echo ""; + echo ""; + + echo ""; + //echo ""; + //echo ""; + echo ""; + //Sprache ausgeben + echo "
Lehrende
Unterrichtssprache$lv_obj->sprache"; + echo "


"; + + //Eingabefelder anzeigen + echo ""; + + + echo ' + + + + + + + + + + + + + + + + + + + + + + + '; + echo ' + + + + + + + + + + + + + + + + + '; + echo ' + + + + + + + + + + + + + + + + + + + + + + + + '; + echo "
DEUTSCH ENGLISH
Lehrveranstaltungstitel Course Title
Kurzbeschreibung Course Description
Methodik / Didaktik Teaching Methods
KompetenzerwerbLearning outcome
LehrinhalteCourse Contents
Vorkenntnisse Prerequisites
Literatur Recommended Reading and Material
LeistungsbeurteilungAssessment Methods
AnmerkungenComments + + + +

Freigeben

Freigeben

"; + echo "
"; + echo ""; + echo ""; + echo "
"; + if(isset($error) && $error!='') + echo $error; + } +?> +
+ + \ No newline at end of file diff --git a/cis/private/lehre/ects/preview.php b/cis/private/lehre/ects/preview.php new file mode 100644 index 000000000..d51175dcf --- /dev/null +++ b/cis/private/lehre/ects/preview.php @@ -0,0 +1,486 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ +/* @date 27.10.2005 + @brief Zeigt die Daten aus der tbl_lvinfo an + + @edit 08-11-2006 Versionierung wurde entfernt. Alle eintraege werden jetzt im WS2007 + abgespeichert + 03-02-2006 Anpassung an die neue Datenbank +*/ + require_once('../../../config.inc.php'); + require_once('../../../../include/studiensemester.class.php'); + require_once('../../../../include/lehrveranstaltung.class.php'); + require_once('../../../../include/lvinfo.class.php'); + + if(!$conn=pg_pconnect(CONN_STRING)) + die('Fehler beim Connecten zur Datenbank'); +?> + + + +ECTS - European Course Credit Transfer Systems (ECTS) + + + + + +
+ + + + + + +
 
+ +Deutsche Version"; + echo "
  • Englische Version
  • "; + } + + if(isset($_POST['lehrende'])) //Alle Variablen werden per POST Methode uebergeben (zB bei Voransicht) + { + //$sprache = stripslashes($_POST['sprache']); + //$semstunden = stripslashes($_POST["semstunden"]); + $lehrveranstaltung_id = $_POST['lv']; + + // german content variables + $titel_de = str_replace("\r\n","
    ",stripslashes($_POST['titel_de'])); + $methodik_de = str_replace("\r\n","
    ",stripslashes($_POST['methodik_de'])); + $kurzbeschreibung_de = str_replace("\r\n","
    ",stripslashes($_POST['kurzbeschreibung_de'])); + $lehrziele_de = str_replace("\r\n","
    ",stripslashes($_POST['lehrziele_de'])); + $lehrinhalte_de = str_replace("\r\n","
    ",stripslashes($_POST['lehrinhalte_de'])); + $voraussetzungen_de = str_replace("\r\n","
    ",stripslashes($_POST['voraussetzungen_de'])); + $unterlagen_de = str_replace("\r\n","
    ",stripslashes($_POST['unterlagen_de'])); + $pruefungsordnung_de = str_replace("\r\n","
    ",stripslashes($_POST['pruefungsordnung_de'])); + $anmerkungen_de = str_replace("\r\n","
    ",stripslashes($_POST['anmerkungen_de'])); + + // Englisch content variables + $titel_en = str_replace("\r\n","
    ",stripslashes($_POST['titel_en'])); + $methodik_en = str_replace("\r\n","
    ",stripslashes($_POST['methodik_en'])); + $kurzbeschreibung_en = str_replace("\r\n","
    ",stripslashes($_POST['kurzbeschreibung_en'])); + $lehrziele_en = str_replace("\r\n","
    ",stripslashes($_POST['lehrziele_en'])); + $lehrinhalte_en = str_replace("\r\n","
    ",stripslashes($_POST['lehrinhalte_en'])); + $voraussetzungen_en = str_replace("\r\n","
    ",stripslashes($_POST['voraussetzungen_en'])); + $unterlagen_en = str_replace("\r\n","
    ",stripslashes($_POST['unterlagen_en'])); + $pruefungsordnung_en = str_replace("\r\n","
    ",stripslashes($_POST['pruefungsordnung_en'])); + $anmerkungen_en = str_replace("\r\n","
    ",stripslashes($_POST['anmerkungen_en'])); + } + elseif(isset($_GET['lv'])) //Lehrfach wird uebergeben (zB bei Ansicht fuer alle von lesson.php) + { + $lehrveranstaltung_id=$_GET['lv']; + + $stsemobj = new studiensemester($conn); + $stsem = $stsemobj->getaktorNext(); + + $lvinfo_obj = new lvinfo($conn); + if($lvinfo_obj->load($lehrveranstaltung_id, ATTR_SPRACHE_DE)) + { + // german content variables + $titel_de = $lvinfo_obj->titel; + $methodik_de = $lvinfo_obj->methodik; + $kurzbeschreibung_de = $lvinfo_obj->kurzbeschreibung; + $lehrziele_de = $lvinfo_obj->lehrziele; + $lehrinhalte_de = $lvinfo_obj->lehrinhalte; + $voraussetzungen_de = $lvinfo_obj->voraussetzungen; + $unterlagen_de = $lvinfo_obj->unterlagen; + $pruefungsordnung_de = $lvinfo_obj->pruefungsordnung; + $anmerkungen_de = $lvinfo_obj->anmerkungen; + } + + if($lvinfo_obj->load($lehrveranstaltung_id, ATTR_SPRACHE_EN)) + { + // Englisch content variables + $titel_en = $lvinfo_obj->titel; + $methodik_en = $lvinfo_obj->methodik; + $kurzbeschreibung_en = $lvinfo_obj->kurzbeschreibung; + $lehrziele_en = $lvinfo_obj->lehrziele; + $lehrinhalte_en = $lvinfo_obj->lehrinhalte; + $voraussetzungen_en = $lvinfo_obj->voraussetzungen; + $unterlagen_en = $lvinfo_obj->unterlagen; + $pruefungsordnung_en = $lvinfo_obj->pruefungsordnung; + $anmerkungen_en = $lvinfo_obj->anmerkungen; + } + } + else + die('Fehler bei der Parameteruebergabe'); + + $stsemobj = new studiensemester($conn); + $stsem = $stsemobj->getaktorNext(); + + $lv_obj = new lehrveranstaltung($conn); + if(!$lv_obj->load($lehrveranstaltung_id)) + die($lv_obj->errormsg); + + $ects_points = $lv_obj->ects; + $stg = $lv_obj->studiengang_kz; + $sem = $lv_obj->semester; + $lang = $lv_obj->sprache; + + //Zugeteilte Fachbereiche auslesen + $qry = "SELECT distinct tbl_fachbereich.bezeichnung as bezeichnung, tbl_fachbereich.fachbereich_kurzbz as fachbereich_kurzbz FROM tbl_fachbereich, lehre.tbl_lehreinheit, lehre.tbl_lehrfach + WHERE tbl_lehreinheit.studiensemester_kurzbz='$stsem' AND + tbl_lehreinheit.lehrveranstaltung_id='$lv' AND + tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND + tbl_fachbereich.fachbereich_kurzbz=tbl_lehrfach.fachbereich_kurzbz"; + + if(!$result=pg_query($conn, $qry)) + die('Fehler beim Lesen aus der Datenbank'); + + $fachbereiche='1'; + $fachbereich['kurzbz']=array(); + $fachbereich['bezeichnung']=array(); + while($row=pg_fetch_object($result)) + { + $fachbereiche .= ", '$row->fachbereich_kurzbz'"; + $fachbereich['kurzbz'][]=$row->fachbereich_kurzbz; + $fachbereich['bezeichnung'][]=$row->bezeichnung; + } + + //Studiengangsbezeichnung auslesen + $qry="SELECT kurzbz, kurzbzlang FROM tbl_studiengang WHERE studiengang_kz='$stg'"; + if(!$res=pg_query($conn,$qry)) + die('Fehler beim Lesen aus der Datenbank'); + + if(!$row=pg_fetch_object($res)) + die('Studiengang konnte nicht aufgeloest werden'); + + $stg_kurzbz = $row->kurzbz; + $stg_kurzbzlang = $row->kurzbzlang; + + $qry = "Select distinct lehrform_kurzbz FROM lehre.tbl_lehreinheit WHERE lehrveranstaltung_id='$lv' AND studiensemester_kurzbz='$stsem'"; + if(!$res = pg_query($conn,$qry)) + die('Fehler beim Lesen aus der Datenbank'); + + while($row = pg_fetch_object($res)) + $lehrform_kurzbz[] = $row->lehrform_kurzbz; + + $qry="SELECT * FROM tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE funktion_kurzbz='fbl' AND fachbereich_kurzbz in($fachbereiche)"; + if(!$res=pg_query($conn,$qry)) + die('Fehler beim herstellen der DB Connection'); + + $fachbereichsleiter=array(); + while($row=pg_fetch_object($res)) + $fachbereichsleiter[] = $row->vorname." ".$row->nachname; + + $qry="SELECT * FROM tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE funktion_kurzbz='fbk' AND studiengang_kz='$stg' AND fachbereich_kurzbz in($fachbereiche)"; + + if(!$res=pg_exec($conn,$qry)) + die('Fehler beim herstellen der DB Connection'); + + $fachbereichskoordinator=array(); + while($row=pg_fetch_object($res)) + $fachbereichskoordinator[] = $row->vornamen." ".$row->nachname; + + //Namen der Lehrenden Auslesen + $qry = "SELECT distinct vorname, nachname FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, campus.vw_mitarbeiter + WHERE tbl_lehreinheit.lehrveranstaltung_id='$lehrveranstaltung_id' + AND studiensemester_kurzbz='$stsem' + AND tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id + AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=uid"; + + $lehrendearray = array(); + if($result=pg_query($conn,$qry)) + { + while($row=pg_fetch_object($result)) + $lehrendearray[] = "$row->vorname $row->nachname"; + } + + //Ausgabe der LV-Information + + //Deutsch Version + if(!(isset($language) && $language=='en')) + { + echo "

    + + + + + + "; + + if ($kurzbeschreibung_de) + { + echo ""; + echo ""; + } + + if ($lehrziele_de) + { + echo ""; + echo ""; + } + + if ($lehrinhalte_de) + { + echo ""; + echo ""; + } + + if ($voraussetzungen_de) + { + echo ""; + echo ""; + } + + if ($methodik_de) + { + echo ""; + echo ""; + } + + if ($pruefungsordnung_de) + { + echo ""; + echo ""; + } + + if ($unterlagen_de) + { + echo ""; + echo ""; + } + + if ($anmerkungen_de) + { + echo ""; + echo ""; + } + + echo "
    + +
    + ".stripslashes($titel_de)."
    + +

    "; + echo ''; + echo ""; + echo ""; + echo ''; + if(($anz=count($lehrendearray))>0) + { + echo "'; + } + + if(isset($lehrform_kurzbz) && count($lehrform_kurzbz)>0) + { + echo "'; + } + + if ($lang > -1) + echo ''; + + if ($ects_points) + echo ''; + + echo ''; + + if (count($fachbereich['bezeichnung'])>0) + { + echo ''; + } + + if (count($fachbereichsleiter)>0) + { + echo "'; + } + + if (count($fachbereichskoordinator)>0) + { + echo ''; + } + + echo "
    Studiengang:$stg_kurzbz
    Semester:$sem
      
    Lehrbeauftragte(r): "; + + foreach($lehrendearray as $elem) + { + $anz--; + echo " $elem"; + if($anz!=0) + echo ','; + } + echo '
    Lehrform: "; + foreach ($lehrform_kurzbz as $lehrform_kurz) + echo "$lehrform_kurz
    "; + echo '
    Sprache: '.stripslashes($lang).'
    ECTS: '.number_format(stripslashes($ects_points),1,'.','').'
      
    Fachbereich: '; + foreach($fachbereich['bezeichnung'] as $bezeichnung) + echo stripslashes($bezeichnung)."
    "; + echo '
    Fachbereichsleitung: "; + foreach($fachbereichsleiter as $fbl) + echo stripslashes($fbl).'
    '; + echo '
    Fachbereichskoordination: '; + foreach($fachbereichskoordinator as $fbk) + echo stripslashes($fbk).'
    '; + echo '
    "; + echo "

    Kurzbeschreibung

    ".stripslashes($kurzbeschreibung_de)."

    Kompetenzerwerb

    ".stripslashes($lehrziele_de)."

    Lehrinhalte

    ".stripslashes($lehrinhalte_de)."

    Vorkenntnisse

    ".stripslashes($voraussetzungen_de)."

    Methodik / Didaktik

    ".stripslashes($methodik_de)."

    Leistungsbeurteilung

    ".stripslashes($pruefungsordnung_de)."

    Literatur

    ".stripslashes($unterlagen_de)."

    Anmerkungen

    ".stripslashes($anmerkungen_de)." 

    "; + } + + //Englische Version + if(!(isset($language) && $language=='de')) + { + echo "

    "; + echo " + + + + '; + + if ($kurzbeschreibung_en) + { + echo ""; + echo ""; + } + + if ($lehrziele_en) + { + echo ""; + echo ""; + } + + if ($lehrinhalte_en) + { + echo ""; + echo ""; + } + + if ($voraussetzungen_en) + { + echo ""; + echo ""; + } + + if ($methodik_en) + { + echo ""; + echo ""; + } + + if ($pruefungsordnung_en) + { + echo ""; + echo ""; + } + + if ($unterlagen_en) + { + echo ""; + echo ""; + } + + if ($anmerkungen_en) + { + echo ""; + echo ""; + } + } + + echo "
    +
    + ".stripslashes($titel_en)." +
    +

    "; + + echo ''; + echo ""; + echo ""; + echo ""; + + if(($anz=count($lehrendearray))>0) + { + echo ""; + } + + if(isset($lehrform_kurzbz) && count($lehrform_kurzbz)>0) + { + echo ""; + } + + if ($lang > -1) + echo ""; + + if ($ects_points) + echo ""; + + echo ""; + + if (count($fachbereich['bezeichnung'])>0) + { + echo ""; + } + + if (count($fachbereichsleiter)>0) + { + echo ''; + } + + if (count($fachbereichskoordinator)>0) + { + echo ''; + } + + echo '
    degree programme:$stg_kurzbz
    semester:$sem
      
    Lecturer:"; + + foreach($lehrendearray as $elem) + { + $anz--; + echo " $elem"; + if($anz!=0) + echo ","; + } + echo "
    Course methods: "; + foreach ($lehrform_kurzbz as $lehrform_kurz) + echo "$lehrform_kurz
    "; + echo "
    Language: ".stripslashes($lang)."
    ECTS Credits: ".number_format(stripslashes($ects_points),1,'.','')."
      
    Department: "; + foreach ($fachbereich['bezeichnung'] as $bezeichnung) + echo stripslashes($bezeichnung).'
    '; + echo "
    Head of Department: '; + foreach ($fachbereichsleiter as $fbl) + echo stripslashes($fbl).'
    '; + echo '
    Department coordinator: '; + foreach ($fachbereichskoordinator as $fbk) + echo stripslashes($fachbereichskoordinator).'
    '; + echo '
    '; + echo '

    Course Description

    ".stripslashes($kurzbeschreibung_en)."

    Learning outcome

    ".stripslashes($lehrziele_en)."

    Course Contents

    ".stripslashes($lehrinhalte_en)."

    Prerequisites

    ".stripslashes($voraussetzungen_en)."

    Teaching Methods

    ".stripslashes($methodik_en)."

    Assessment Methods

    ".stripslashes($pruefungsordnung_en)."

    Recommended Reading and Material

    ".stripslashes($unterlagen_en)."

    Comments

    ".stripslashes($anmerkungen_en)." 
    "; + + //Ein paar Zeilenumbrueche damit er beim Sprung zum Anker weit genug nach unten springt + echo "



















    "; + +?> +
     
    + \ No newline at end of file diff --git a/cis/private/lehre/ects/terminologie.html b/cis/private/lehre/ects/terminologie.html new file mode 100644 index 000000000..09a2270c2 --- /dev/null +++ b/cis/private/lehre/ects/terminologie.html @@ -0,0 +1,803 @@ + + + + + +Terminologie + + + + + + + +
      + + + + + + + + +
     LV Info - Beispiele
    + + + + + +
    +   + + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + Terminologie + Deutsch-Englisch +
    +
    + Deutsch + + Englisch +
    + Abschluss (einer Lehrveranstaltung) + + completion +
    + AnfängerIn + + beginner +
    + angerechnet + + recognized +
    + Anrechnung + + recognition +
    + Aufgaben + + tasks / responsibilities / assignment +
    + Bachelor-Studiengang + + bachelor degree programme +
    + Bachelor + + Bachelor +
    + Bachelor-Arbeiten + + bachelor's paper +
    + berufsbegleitend + + part-time study +
    + Berufspraktikum + + professional practical training + /profession placement +
    + bestanden + + pass +
    + bestanden, mit gutem Erfolg + + pass with merit +
    + bestanden, mit ausgezeichnetem + Erfolg + + pass with distinction +
    + BetreuerIn + + supervisor +
    + Diplomarbeit + + master's thesis +
    + DI (FH) + + Master +
    + Diplom-Studiengang + + diploma degree programme +
    + Erhalter + + ... run by +
    + Experte/in + + expert +
    + Fachbereich + + department +
    + FachbereichskoordinatorIn + + department coordinator +
    + FachbereichsleiterIn + + head of department +
    + Fachhochschul-Beirat + + Fachhochschule Advisory Board +
    + Fachhochschul-Kollegium + + Fachhochschule Board +
    + Fachhochschul-KollegiumsleiterIn + + head of Fachhochschule Board +
    + Fachhochschulrat + + Fachhochschule Council +
    + Fachhochschulkonferenz + + Association of Universities of + Applied Sciences Austria +
    + Fernlehre + + distance learning +
    + Fernlehrelemente + + distance learning elements +
    + Fortgeschrittene/r + + advanced +
    + Gesamtnote, Gesamtbeurteilung + + final grade +
    + Grundlagen + + fundamentals +
    + hauptberuflich Lehrende/r + + full-time instructor +
    + Immanente Leistungsbeurteilung + + continuous assessment +
    + integrierte Lehrveranstaltung + + integrated course +
    + JahrgangssprecherIn + + class representative +
    + kommissionelle Prüfung + + panel exam +
    + Labor + + laboratory +
    + Lehrender + + instructor +
    + Lehrgang universitären + Charakters + + university + level course +
    + Lehrinhalte + + course contents +
    + Lehrkörper + + teaching staff +
    + Lehrmethode + + teaching method +
    + Lehrveranstaltung + + course +
    + Lehrziele + + course objectives +
    + Lernmethode + + study technique +
    + Magisterarbeit + + master's thesis +
    + Mag. (FH) + + Master +
    + Master-Studiengang + + master degree programme +
    + Matrikelnummer + + registration number +
    + Mündliche Prüfung + + oral examination +
    + nebenberuflich Lehrende/r + + part-time instructor +
    + Niveaustufe + + level +
    + Niveaustufen: + + levels +
    + Note + + grade +
    + Organisation der LV + + course organization +
    + Personenkennzeichen + + personal identification number +
    + Pflichtveranstaltung + + required course +
    + Präsentation + + presentation +
    + Programmverantwortlicher + + programme director +
    + Projektarbeit + + project work +
    + Prüfung + + examination +
    + Prüfungsmodalitäten + + exam procedure +
    + Prüfungsordnung + + examination regulation +
    + Rektor + + rector +
    + Schriftliche Prüfung + + written examination +
    + Semester + + semester +
    + Seminar + + seminar +
    + Sommersemester + + summer semester / spring semester +
    + Spezialisten + + specialists +
    + Studiengang + + degree programme +
    + StudiengangssprecherIn + + programme representative +
    + StudiengangsleiterIn + + head of degree programme/head of + school +
    + Studienjahr + + academic year +
    + Studienplan + + curriculum +
    + Studienplatz + + study place +
    + Studierendenvertretung + + student council +
    + Teilgebiet + + segment +
    + Test + + test +
    + Titel der Lehrveranstaltung + + course title +
    + Übung (einfache, mit Anleitung) + + exercise +
    + Übung (im Sinne einer LV) + + practice + session
    + Übung (im Sinne üben) + + practice +
    + Unterricht + + instruction +
    + Vollzeit + + full-time +
    + Voraussetzungen (für LVs) + + requirements +
    + Vorlesung + + lecture +
    + Vortragender + + lecturer +
    + Wintersemester + + autumn semester / winter semester +
    + Zeugnis + + certificate +
    +
    + \ No newline at end of file diff --git a/cis/private/lehre/lesson.php b/cis/private/lehre/lesson.php index a3e22ac63..3a29573a5 100644 --- a/cis/private/lehre/lesson.php +++ b/cis/private/lehre/lesson.php @@ -39,9 +39,7 @@ $is_lector=true; else $is_lector=false; - - //if(!isset($course_id) || !isset($term_id) || !isset($short)) - // exit(); + if(!isset($_GET['lvid'])) die('Fehlerhafte Parameteruebergabe'); else @@ -66,7 +64,6 @@ $rechte = new benutzerberechtigung($sql_conn); $rechte->getBerechtigungen($user); - ?> @@ -148,6 +145,20 @@
    isBerechtigt('lehre',null,null,$row->fachbereich_kurzbz)) + $user_is_allowed_to_upload=true; + } + } + //SEMESTERPLAN $dest_dir = @dir('../../../documents/'.strtolower($kurzbz).'/'.$term_id.'/'.strtolower($short_short_name).'/semesterplan'); @@ -439,38 +450,35 @@ //Lehrveranstaltungsinformation echo "
    Lehrveranstaltungsinformation
    "; -/* $need_br=false; - $aktstsem=(isset($angezeigtes_stsem)?$angezeigtes_stsem:''); - $qry="SELECT * FROM lehre.tbl_lvinfo WHERE "; - if($result=pg_exec($sql_conn,$qry)) + $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$lvid' AND genehmigt=true AND sprache='German' AND aktiv=true"; + $need_br=false; + + if($result=pg_query($sql_conn,$qry)) + { + if(pg_num_rows($result)>0) + { + echo "Deutsch "; + $need_br=true; + } + } + $qry = "SELECT * FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$lvid' AND genehmigt=true AND sprache='English' AND aktiv=true"; + if($result=pg_query($sql_conn,$qry)) { if(pg_num_rows($result)>0) { $row1=pg_fetch_object($result); - echo "lehrfach_nr&language=de','Lehrveranstaltungsinformation','width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes');\">Deutsch "; - $need_br=true; - } - } - //$qry="SELECT * from tbl_lvinfo Join tbl_lehrfach using(lehrfach_nr) where studiensemester_kurzbz='$aktstsem' AND studiengang_kz=$course_id AND semester=$term_id AND lehrevz='$short' AND tbl_lvinfo.aktiv=true AND tbl_lvinfo.sprache='".ATTR_SPRACHE_EN."' AND tbl_lvinfo.genehmigt=true"; - $qry="SELECT * from tbl_lvinfo Join tbl_lehrfach using(lehrfach_nr) where studiengang_kz='$course_id' AND semester='$term_id' AND lehrevz='$short' AND tbl_lvinfo.aktiv=true AND tbl_lvinfo.sprache='".ATTR_SPRACHE_EN."' AND tbl_lvinfo.genehmigt=true AND studiensemester_kurzbz='WS2007' ORDER BY updateamum DESC"; - if($result=pg_exec($sql_conn,$qry)) - { - if(pg_num_rows($result)>0) - { - $row1=pg_fetch_object($result); - echo "lehrfach_nr&language=en','Lehrveranstaltungsinformation','width=700,height=750,resizable=yes,menuebar=no,toolbar=no,status=yes,scrollbars=yes');\">Englisch"; + echo "Englisch"; $need_br=true; } } - if($user_is_allowed_to_upload || $rechte->isBerechtigt('admin',$course_id) || $rechte->isBerechtigt('lehre',$course_id) || $rechte->isBerechtigt('lehre',null,null,$fachbereich_id)) + if($user_is_allowed_to_upload || $rechte->isBerechtigt('admin',$course_id) || $rechte->isBerechtigt('lehre',$course_id)) { if($need_br) echo "
    "; - echo "Bearbeiten"; + echo "Bearbeiten"; } - */ ?>

     

    diff --git a/cis/private/lehre/menu.php b/cis/private/lehre/menu.php index bcc6759d2..7d1439bcc 100644 --- a/cis/private/lehre/menu.php +++ b/cis/private/lehre/menu.php @@ -356,7 +356,6 @@ function js_toggle_container(conid) echo '
     Mailverteiler