From 723797362303494e9626aa894cbf9882a1674f48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 19 Dec 2006 16:54:59 +0000 Subject: [PATCH] CIS Umstellung neue DB: - Semesterplanupload - feedback - Ueberarbeitung menue.php und lesson.php --- cis/private/lehre/feedback.php | 193 ++++++++++++++++++++++++++++ cis/private/lehre/lesson.php | 42 +++--- cis/private/lehre/menu.php | 4 +- cis/private/lehre/semdownhlp.php | 15 +++ cis/private/lehre/semupload.php | 162 +++++++++++++++++++++++ include/feedback.class.php | 71 ++++++++-- include/lehrveranstaltung.class.php | 35 +++++ 7 files changed, 489 insertions(+), 33 deletions(-) create mode 100644 cis/private/lehre/feedback.php create mode 100644 cis/private/lehre/semdownhlp.php create mode 100644 cis/private/lehre/semupload.php diff --git a/cis/private/lehre/feedback.php b/cis/private/lehre/feedback.php new file mode 100644 index 000000000..c5ab15048 --- /dev/null +++ b/cis/private/lehre/feedback.php @@ -0,0 +1,193 @@ + + + + + + + + +getaktorNext(); + if(isset($POST["feedback_message"])) + $feedback_message=$POST["feedback_message"]; + + if(isset($feedback_message)) + echo $feedback_message; + +?> + + + + + '; + ?> + + + +
  + + + load($lvid)) + { + $short_name = $lv_obj->bezeichnung; + } + else + die($lv_obj->errormsg); + ?> + + +
  - Feedback + an: + vorname.' '.$row->nachname; + $i++; + if($i<$rows) + echo ', '; + } + ?> + +
+ +
+

Betreff:  + load($edit_id)) + { + echo '
'; + echo '
'; + echo ' '; + echo ''; + } + else + echo $fb_obj->errormsg.'
'; + } + else + { + echo '
'; + echo '
'; + echo ''; + } + ?> +   + +

+ betreff = htmlentities($feedback_subject); + $fb_obj->text = htmlentities($feedback_message); + $fb_obj->feedback_id = $edit_id; + $fb_obj->datum = date('Y-m-d'); + $fb_obj->uid = $user; + $fb_obj->lehrveranstaltung_id = $lvid; + $fb_obj->new = false; + + if($fb_obj->save()) + echo ""; + else + echo $fb_obj->errormsg."
"; + } + + if(!isset($edit_id) && !isset($edit_break) && !isset($edit_feedback)) + { + $fb_obj = new feedback($conn); + $fb_obj->betreff = htmlentities($feedback_subject); + $fb_obj->text = htmlentities($feedback_message); + $fb_obj->datum = date('Y-m-d'); + $fb_obj->uid = $user; + $fb_obj->lehrveranstaltung_id = $lvid; + $fb_obj->new = true; + + if($fb_obj->save()) + echo ""; + else + echo $fb_obj->errormsg." save
"; + } + } + + if(isset($message_sent) && $message_sent == true) + { + echo 'Die Nachricht wurde erfolgreich eingetragen.


'; + } + + $fb_obj = new feedback($conn); + if($fb_obj->load_feedback($lvid)) + { + echo ''; + + foreach($fb_obj->result as $row) + { + $sql_query = "SELECT vorname, nachname FROM campus.vw_benutzer WHERE uid='$row->uid'"; + + if($result_person = pg_query($conn, $sql_query)) + { + if($row_pers=pg_fetch_object($result_person)) + { + + echo ''; + echo ' '; + echo ' '; + echo ' '; + echo ' '; + + echo ' '; + + echo ''; + echo ''; + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo ''; + echo ''; + echo ' '; + echo ''; + } + } + } + echo '
 '.$row->betreff.''.$row_pers->vorname.' '.$row_pers->nachname.''.$row->datum.'  
'.nl2br($row->text).'   
 
'; + } + else + echo 'Fehler beim laden der Daten '.$fb_obj->errormsg; + ?> +
+ + + \ No newline at end of file diff --git a/cis/private/lehre/lesson.php b/cis/private/lehre/lesson.php index b40e600c5..70d18f1d0 100644 --- a/cis/private/lehre/lesson.php +++ b/cis/private/lehre/lesson.php @@ -20,18 +20,25 @@ else $is_lector=false; - if(!isset($course_id) || !isset($term_id) || !isset($short)) - exit(); - + //if(!isset($course_id) || !isset($term_id) || !isset($short)) + // exit(); + if(!isset($_GET['lvid'])) + die('Fehlerhafte Parameteruebergabe'); + else + $lvid = addslashes($_GET['lvid']); + $lv_obj = new lehrveranstaltung($sql_conn); - $lv_obj->load_lva($course_id, $term_id, $short, true); - $lv=$lv_obj->lehrveranstaltungen[0]; + $lv_obj->load($lvid); + $lv=$lv_obj; + + $course_id = $lv->studiengang_kz; + $term_id = $lv->semester; + $short = $lv->lehreverzeichnis; $stg_obj = new studiengang($sql_conn); $stg_obj->load($lv->studiengang_kz); $kurzbz = $stg_obj->kurzbz; - $lvnr = $lv->lehrveranstaltung_id; $short_name = $lv->bezeichnung; //$fachbereich_id = $row->fachbereich_id; @@ -53,14 +60,9 @@     bezeichnung; - } - else - exit; - - $qry = "SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN tbl_studiensemester USING(studiensemester_kurzbz) WHERE lehrveranstaltung_id='$lv->lehrveranstaltung_id' ORDER BY ende DESC LIMIT 1"; + echo $lv_obj->bezeichnung; + + $qry = "SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN tbl_studiensemester USING(studiensemester_kurzbz) WHERE lehrveranstaltung_id='$lvid' ORDER BY ende DESC LIMIT 1"; if($result_stsem=pg_query($sql_conn, $qry)) { @@ -85,7 +87,7 @@   '; - $qry = "SELECT vorname, nachname, tbl_benutzer.uid as uid FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, tbl_benutzer, tbl_person WHERE tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND tbl_person.person_id=tbl_benutzer.person_id AND lehrveranstaltung_id='$lv->lehrveranstaltung_id' AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND tbl_person.aktiv=true ORDER BY nachname, vorname"; + $qry = "SELECT vorname, nachname, tbl_benutzer.uid as uid FROM lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter, tbl_benutzer, tbl_person WHERE tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid=tbl_benutzer.uid AND tbl_person.person_id=tbl_benutzer.person_id AND lehrveranstaltung_id='$lvid' AND tbl_lehreinheitmitarbeiter.mitarbeiter_uid NOT like '_Dummy%' AND tbl_person.aktiv=true ORDER BY nachname, vorname"; $result = pg_exec($sql_conn, $qry); $num_rows_result = pg_num_rows($result); @@ -106,8 +108,8 @@ if($user==$row_lector->uid) $user_is_allowed_to_upload=true; - echo ''.$row_lector->vorname.' '.$row_lector->nachname.', '; - if($i!=($num_rows_result - 1)) + echo ''.$row_lector->vorname.' '.$row_lector->nachname.''; + if($i!=$num_rows_result) echo ', '; } } @@ -183,7 +185,7 @@ if($user_is_allowed_to_upload || $rechte->isBerechtigt('admin',$course_id) || $rechte->isBerechtigt('lehre',$course_id))// || $rechte->isBerechtigt('lehre',null,null,$fachbereich_id)) { - echo '
'; + echo '
'; echo "Upload"; echo '   '; @@ -280,7 +282,7 @@ { //Anwesenheitsliste echo '
'; - echo "
Anwesenheits- und Notenlisten"; + echo "Anwesenheits- und Notenlisten"; } ?> @@ -389,7 +391,7 @@
Feedback'; + echo '
Feedback
'; ?>

 

diff --git a/cis/private/lehre/menu.php b/cis/private/lehre/menu.php index e13131216..95652c2aa 100644 --- a/cis/private/lehre/menu.php +++ b/cis/private/lehre/menu.php @@ -233,7 +233,7 @@ function js_toggle_container(conid) { echo ''; echo ' '; echo ''; } @@ -280,7 +280,7 @@ function js_toggle_container(conid) if($result = pg_query($sql_conn,$qry)) { while($row = pg_fetch_object($result)) - echo "
  • bezeichnung."\" href=\"lesson.php?course_id=$row->studiengang_kz&term_id=$row->semester&short=$row->lehreverzeichnis\" target=\"content\">".$stg[$row->studiengang_kz].' '.$row->semester.' '.$row->lehreverzeichnis."
  • "; + echo "
  • bezeichnung."\" href=\"lesson.php?lvid=$row->lehrveranstaltung_id\" target=\"content\">".$stg[$row->studiengang_kz].' '.$row->semester.' '.$row->lehreverzeichnis."
  • "; } else echo "Fehler beim Auslesen des Lehrfaches"; diff --git a/cis/private/lehre/semdownhlp.php b/cis/private/lehre/semdownhlp.php new file mode 100644 index 000000000..291c9d816 --- /dev/null +++ b/cis/private/lehre/semdownhlp.php @@ -0,0 +1,15 @@ + \ No newline at end of file diff --git a/cis/private/lehre/semupload.php b/cis/private/lehre/semupload.php new file mode 100644 index 000000000..b277acb9e --- /dev/null +++ b/cis/private/lehre/semupload.php @@ -0,0 +1,162 @@ +load($lvid)) + die('Fehler beim Laden der Lehrveranstaltung'); + $stg_obj = new studiengang($conn); + + if(!$stg_obj->load($lv_obj->studiengang_kz)) + die('Fehler beim Laden des Studienganges'); + + $openpath = '../../../documents/'.strtolower($stg_obj->kurzbz).'/'.$lv_obj->semester.'/'.strtolower($lv_obj->lehreverzeichnis).'/semesterplan/'; +?> + + + + + + + +Upload Semesterplan + + + + + + + + + + + + +'); + + echo ""; + + echo "
     Upload Semesterplan
      
     Sie haben keine Berechtigung für diesen Bereich
     "; + if(isset($_POST['inhalt'])) + { + if($inhalt!="____Ordnerinhalt____") + { + if(!strstr($inhalt,'..')) + { + if(is_file($openpath . $inhalt)) + { + writeCISlog('DELETE', "rm -r '$openpath$inhalt'"); + exec("rm -r '$openpath$inhalt'"); + echo "
    Datei erfolgreich gelöscht
    "; + } + else + { + echo "
    Die Datei $openpath$inhalt konnte nicht gefunden werden.
    "; + } + } + else + { + writeCISlog('REPORT', 'versuchter Loeschvorgang von '.$openpath.$inhalt); + echo "
    Fehlerhafte Parameter
    "; + } + } + else + { + echo "
    Bitte zuerst eine Datei auswählen
    "; + } + } + + if(isset($userfile)) + { + if(is_uploaded_file($userfile)) + { + $fn = $_FILES['userfile']['name']; //Original Dateiname + + if(!stristr($fn, '.php') && !stristr($fn, '.php3') && + !stristr($fn,'.php4') && !stristr($fn, '.php5') && + !stristr($fn, '.cgi') && !stristr($fn, '.pl')) + { + if(move_uploaded_file($userfile,$openpath . $fn)) + echo "
    Das File wurde erfolgreich hochgeladen
    "; + else + echo "
    Fehler beim Upload! Bitte Versuchen Sie es erneut
    "; + } + else + { + echo "
    Dieser Dateityp ist nicht erlaubt
    "; + } + } + else + echo "
    Fehler beim Upload! Bitte Versuchen Sie es erneut
    "; + } + + echo "
     
    "; + echo ""; + echo ""; + echo "
    "; + + //FileAuswahlfeld + echo '
     
    '; + echo ' '; + echo ' '; + echo '
    '; + writeCISlog('STOP'); +?> + + \ No newline at end of file diff --git a/include/feedback.class.php b/include/feedback.class.php index 320ef3e32..7cc39c77b 100644 --- a/include/feedback.class.php +++ b/include/feedback.class.php @@ -25,7 +25,7 @@ class feedback var $conn; // resource DB-Handle var $errormsg; // string var $new; // boolean - var $feedback = array(); // feedback Objekt + var $result = array(); // feedback Objekt //Tabellenspalten var $feedback_id; // integer @@ -67,7 +67,28 @@ class feedback // ********************************************************* function load($feedback_id) { - return true; + if(!is_numeric($feedback_id)) + { + $this->errormsg = 'feedback_id muss eine gueltige Zahl sein'; + return false; + } + + $qry = "SELECT * FROM campus.tbl_feedback WHERE feedback_id='$feedback_id'"; + + if($result = pg_query($this->conn, $qry)) + { + $this->feedback_id=$row->feedback_id; + $this->betreff=$row->betreff; + $this->text=$row->text; + $this->datum=$row->datum; + $this->uid=$row->uid; + $this->lehrveranstaltung_id=$row->lehrveranstaltung_id; + } + else + { + $this->errormsg = 'Fehler beim laden der Lehrveranstaltungen'; + return false; + } } // ******************************************* @@ -87,12 +108,7 @@ class feedback $this->errormsg = 'UID darf nicht laenger als 16 Zeichen sein'; return false; } - if(!is_numeric($this->lehrveranstaltung_id)) - { - $this->errormsg = 'Lehrveranstaltung_id muss eine gueltige Zahl sein'; - return false; - } - + return true; } @@ -107,6 +123,40 @@ class feedback return ($var!=''?"'".addslashes($var)."'":'null'); } + function load_feedback($lehrveranstaltung_id) + { + if(!is_numeric($lehrveranstaltung_id)) + { + $this->errormsg = 'Lehrveranstaltung_id muss eine gueltige Zahl sein'; + return false; + } + + $qry = "SELECT * FROM campus.tbl_feedback WHERE lehrveranstaltung_id='$lehrveranstaltung_id'"; + + if($result = pg_query($this->conn, $qry)) + { + while($row=pg_fetch_object($result)) + { + $fb_obj = new feedback($this->conn); + + $fb_obj->feedback_id=$row->feedback_id; + $fb_obj->betreff=$row->betreff; + $fb_obj->text=$row->text; + $fb_obj->datum=$row->datum; + $fb_obj->uid=$row->uid; + $fb_obj->lehrveranstaltung_id=$row->lehrveranstaltung_id; + + $this->result[] = $fb_obj; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim laden der Lehrveranstaltungen'; + return false; + } + } + // ************************************************************ // * Speichert Feedback in die Datenbank // * Wenn $new auf true gesetzt ist wird ein neuer Datensatz @@ -122,9 +172,8 @@ class feedback if($this->new) { //ToDo: Feedback_ID wieder entfernen und per Seq fuellen - $qry = 'INSERT INTO campus.tbl_feedback (feedback_id, betreff, text, datum, uid, lehrveranstaltung_id) - VALUES('.$this->addslashes($this->feedback_id).','. - $this->addslashes($this->betreff).','. + $qry = 'INSERT INTO campus.tbl_feedback (betreff, text, datum, uid, lehrveranstaltung_id) + VALUES('.$this->addslashes($this->betreff).','. $this->addslashes($this->text).','. $this->addslashes($this->datum).','. $this->addslashes($this->uid).','. diff --git a/include/lehrveranstaltung.class.php b/include/lehrveranstaltung.class.php index 48efacca7..a3eade20d 100644 --- a/include/lehrveranstaltung.class.php +++ b/include/lehrveranstaltung.class.php @@ -71,6 +71,41 @@ class lehrveranstaltung */ function load($lehrveranstaltung_id) { + if(!is_numeric($lehrveranstaltung_id)) + { + $this->errormsg = 'Lehrveranstaltung_id muss eine gueltige Zahl sein'; + return false; + } + $qry = "SELECT * FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id='$lehrveranstaltung_id';"; + + if(!$res = pg_query($this->conn, $qry)) + { + $this->errormsg = 'Datensatz konnte nicht geladen werden'; + return false; + } + + if($row = pg_fetch_object($res)) + { + $this->lehrveranstaltung_id=$row->lehrveranstaltung_id; + $this->studiengang_kz=$row->studiengang_kz; + $this->bezeichnung=$row->bezeichnung; + $this->kurzbz=$row->kurzbz; + $this->semester=$row->semester; + $this->ects=$row->ects; + $this->semesterstunden=$row->semesterstunden; + $this->anmerkung=$row->anmerkung; + $this->lehre=($row->lehre=='t'?true:false); + $this->lehreverzeichnis=$row->lehreverzeichnis; + $this->aktiv=($row->aktiv=='t'?true:false); + $this->ext_id=$row->ext_id; + $this->insertamum=$row->insertamum; + $this->insertvon=$row->insertvon; + $this->planfaktor=$row->planfaktor; + $this->planlektoren=$row->planlektoren; + $this->planpersonalkosten=$row->planpersonalkosten; + $this->updateamum=$row->updateamum; + $this->updatevon=$row->updatevon; + } return true; }