diff --git a/admin/sync/sync_fas_exstd.php b/admin/sync/sync_fas_exstd.php index 014ad8e5f..92b933fc6 100644 --- a/admin/sync/sync_fas_exstd.php +++ b/admin/sync/sync_fas_exstd.php @@ -1,29 +1,47 @@ , + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + require_once('../../vilesci/config.inc.php'); + $adress='tw_tester@technikum-wien.at'; + + //mail($adress,"FAS Synchro mit PORTAL","BEGIN OF SYNCHRONISATION","From: vilesci@technikum-wien.at"); $conn=pg_connect(CONN_STRING); $conn_fas=pg_connect(CONN_STRING_FAS); // Anzahl der Studenten in VILESCI - $sql_query="SELECT count(*) AS anz FROM tbl_student"; + $sql_query="SELECT count(*) AS anz FROM public.tbl_student"; //echo $sql_query."
"; - $result=pg_exec($conn, $sql_query); + $result=pg_query($conn, $sql_query); $vilesci_anz_std=pg_fetch_result($result,0,'anz'); // Start Studenten Synchro - $sql_query="SELECT DISTINCT uid FROM fas_view_vilesci_abbrecher WHERE uid IS NOT NULL AND uid NOT LIKE '' ORDER BY uid"; // LIMIT 5"; + $sql_query="SELECT DISTINCT uid FROM fas_view_vilesci_abbrecher WHERE uid IS NOT NULL AND uid NOT LIKE '' ORDER BY uid";// LIMIT 5"; //echo $sql_query."
"; flush(); - $result=pg_exec($conn_fas, $sql_query); - $num_rows=pg_numrows($result); + $result=pg_query($conn_fas, $sql_query); + $num_rows=pg_num_rows($result); $text="Dies ist eine automatische eMail!\r\r"; $text.="Es wurde eine Synchronisation mit FAS durchgeführt.\r"; $text.="Anzahl der Ex-Studenten vom FAS-Import: $num_rows \r"; - $text.="Anzahl der Studenten in VILESCI: $vilesci_anz_std \r\r"; + $text.="Anzahl der Studenten in PORTAL: $vilesci_anz_std \r\r"; echo $text.'
'; flush(); $update_error=0; @@ -33,7 +51,7 @@ $row=pg_fetch_object($result,$i); $uid=str_replace(' ','',$row->uid); // SQL vorbereiten (jeden Studenten vom FAS im vilesci suchen - $sql_query="SELECT uid,titel,vornamen,nachname, semester FROM tbl_person NATURAL JOIN tbl_student WHERE uid LIKE '$uid'"; + $sql_query="SELECT uid, vorname, nachname, semester, studiengang_kz FROM campus.vw_student WHERE uid='$uid'"; //echo $sql_query; $res_std=pg_query($conn, $sql_query); $num_rows_std=pg_numrows($res_std); @@ -43,8 +61,19 @@ $row_std=pg_fetch_object($res_std); if ($row_std->semester!=10) { - $text.="Der Student $row_std->vornamen $row_std->nachname ($row_std->uid) wird verschoben.\r"; - $sql_query="UPDATE tbl_student SET semester=10, updateamum=now(), updatevon='auto' WHERE uid LIKE '$uid'"; + //Wenn dieser Lehrverband noch nicht existiert wird er eingefuegt + $sql_query = "SELECT * FROM public.tbl_lehrverband WHERE studiengang_kz='$row_std->studiengang_kz' AND semester='10' AND verband=' ' AND gruppe=' '"; + + $result_grp = pg_query($conn, $sql_query); + if(pg_num_rows($result_grp)==0) + { + $sql_query = "INSERT INTO public.tbl_lehrverband(studiengang_kz, semester, verband, gruppe, aktiv, bezeichnung) VALUES('$row_std->studiengang_kz','10',' ',' ', false, 'Ex Studenten');"; + pg_query($conn, $sql_query); + $text.="Neuer Lehrverband wird erzeugt:$row_std->studiengang_kz 10\r"; + } + + $text.="Der Student $row_std->vorname $row_std->nachname ($row_std->uid) wird verschoben.\r"; + $sql_query="UPDATE public.tbl_student SET semester=10, verband=' ', gruppe=' ', updateamum=now(), updatevon='auto' WHERE student_uid LIKE '$uid'"; echo $sql_query.'
'; if(!$res_update=pg_query($conn, $sql_query)) { @@ -60,7 +89,7 @@ $text.="$update_error Fehler bei Student-Update!\r"; $text.="$anz_update Studenten wurden ins 10te Semester verschoben.\r"; $text.="\rEND OF SYNCHRONISATION\r"; - if (mail($adress,"FAS Synchro mit VILESCI (Ex-Studenten)",$text,"From: vilesci@technikum-wien.at")) + if (mail($adress,"FAS Synchro mit PORTAL (Ex-Studenten)",$text,"From: vilesci@technikum-wien.at")) $sendmail=true; else $sendmail=false; @@ -68,7 +97,7 @@ - FAS-Synchro mit VILESCI (Ex-Studenten) + FAS-Synchro mit PORTAL (Ex-Studenten) @@ -78,7 +107,7 @@ if ($sendmail) echo 'Mail wurde verschickt an '.$adress.'!
'; else echo "Mail konnte nicht verschickt werden!
"; -echo $text; +echo nl2br($text); ?> diff --git a/admin/sync/sync_vilesci_portal_lehreinheit.php b/admin/sync/sync_vilesci_portal_lehreinheit.php index b275152f3..2cf17ce67 100644 --- a/admin/sync/sync_vilesci_portal_lehreinheit.php +++ b/admin/sync/sync_vilesci_portal_lehreinheit.php @@ -25,7 +25,7 @@ LEHREINHEIT IST BEREITS EINGEFUEGT (IN SYNCTAB)? JA - //WORKING + //update ist nicht implementiert NEIN GLEICHE LEHREINHEIT MIT ANDERER GRUPPE (ABER GLEICHER LEKTOR) BEREITS VORHANDEN? JA @@ -134,7 +134,7 @@ if($result = pg_query($conn_vilesci, $qry)) $text.="\n Sync Lehreinheiten\n\n"; //Schauen ob Sync table vorhanden ist - $qry = "SELECT 1 FROM tbl_synclehreinheit;"; + $qry = "SELECT 1 FROM public.tbl_synclehreinheit;"; if(!pg_query($conn,$qry)) { //Die synctabelle wird benoetigt um die Verbindung der LehrveranstaltungsID(Vilesci) und der @@ -142,7 +142,7 @@ if($result = pg_query($conn_vilesci, $qry)) //-> kann nicht ueber ext_id vorgenommen werden da manche Lehrveranstaltungen keinen eigenen // Lehreinheiteneintrag haben sondern nur die Gruppe zu einer anderen Lehreinheit hinzugefuegt wird. //Sync Table anlegen - $qry = "CREATE TABLE tbl_synclehreinheit( + $qry = "CREATE TABLE public.tbl_synclehreinheit( lehrveranstaltung_id_vilesci integer, lehreinheit_id_portal integer, PRIMARY KEY(lehrveranstaltung_id_vilesci, lehreinheit_id_portal) @@ -162,7 +162,7 @@ if($result = pg_query($conn_vilesci, $qry)) $error=false; $lehreinheit = new lehreinheit($conn); //Nachschauen ob diese Lehreinheit bereits synchronisiert wurde - $qry = "SELECT lehreinheit_id_portal FROM tbl_synclehreinheit WHERE lehrveranstaltung_id_vilesci='".addslashes($row->lehrveranstaltung_id)."'"; + $qry = "SELECT lehreinheit_id_portal FROM public.tbl_synclehreinheit WHERE lehrveranstaltung_id_vilesci='".addslashes($row->lehrveranstaltung_id)."'"; if($result1=pg_query($conn, $qry)) { @@ -200,7 +200,7 @@ if($result = pg_query($conn_vilesci, $qry)) { if(gruppezuweisen($row_val->lehreinheit_id, $row->studiengang_kz, $row->semester,$row->verband, $row->gruppe, $row->einheit_kurzbz)) { - $qry = "INSERT INTO tbl_synclehreinheit(lehrveranstaltung_id_vilesci, lehreinheit_id_portal) + $qry = "INSERT INTO public.tbl_synclehreinheit(lehrveranstaltung_id_vilesci, lehreinheit_id_portal) VALUES('".$row->lehrveranstaltung_id."','".$row_val->lehreinheit_id."');"; if(pg_query($conn,$qry)) { @@ -239,7 +239,7 @@ if($result = pg_query($conn_vilesci, $qry)) $lehreinheit->updatevon = ''; $lehreinheit->insertamum = ''; $lehreinheit->insertvon = ''; - $lehreinheit->ext_id = $row->fas_id; + $lehreinheit->ext_id = ''; //Datensatz Speichern pg_query($conn,'BEGIN'); @@ -256,7 +256,7 @@ if($result = pg_query($conn_vilesci, $qry)) if($row_val = pg_fetch_object(pg_query($conn, $qry))) { //Beide IDS in die SyncTab einfuegen - $qry = "INSERT INTO tbl_synclehreinheit(lehrveranstaltung_id_vilesci, lehreinheit_id_portal) + $qry = "INSERT INTO public.tbl_synclehreinheit(lehrveranstaltung_id_vilesci, lehreinheit_id_portal) VALUES('".$row->lehrveranstaltung_id."','".$row_val->id."');"; if(pg_query($conn,$qry)) { @@ -272,6 +272,7 @@ if($result = pg_query($conn_vilesci, $qry)) $lektor->stundensatz = ''; $lektor->faktor = 1; $lektor->anmerkung = ''; + $lektor->ext_id = $row->fas_id; if($lektor->save(true)) { diff --git a/cis/private/lehre/kreuzerltool/anwesenheitsliste.php b/cis/private/lehre/kreuzerltool/anwesenheitsliste.php index c560d62fd..6feef0467 100644 --- a/cis/private/lehre/kreuzerltool/anwesenheitsliste.php +++ b/cis/private/lehre/kreuzerltool/anwesenheitsliste.php @@ -225,7 +225,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls') foreach($ueb_obj->uebungen as $row_ueb) { - $qry = "SELECT count(*) as punkte FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id='$row_ueb->uebung_id' AND student_uid='$row_stud->uid' AND vorbereitet=true"; + $qry = "SELECT sum(punkte) as punkte FROM campus.tbl_studentbeispiel JOIN campus.tbl_beispiel USING(beispiel_id) WHERE uebung_id='$row_ueb->uebung_id' AND student_uid='$row_stud->uid' AND vorbereitet=true"; if($result = pg_query($conn, $qry)) { if($row = pg_fetch_object($result)) @@ -239,7 +239,7 @@ if(isset($_GET['output']) && $_GET['output']=='xls') else $punkte='failed'; //punkte auf uebung - $worksheet->write($zeile,++$spalte,$punkte); + $worksheet->write($zeile,++$spalte,($punkte!=''?$punkte:'0')); } //summe diff --git a/cis/private/lehre/kreuzerltool/studentenansicht.php b/cis/private/lehre/kreuzerltool/studentenansicht.php index 92d7dc1fd..7f13185c7 100644 --- a/cis/private/lehre/kreuzerltool/studentenansicht.php +++ b/cis/private/lehre/kreuzerltool/studentenansicht.php @@ -118,9 +118,28 @@ $qry = "SELECT distinct lehreinheit_id, bezeichnung FROM lehre.tbl_lehreinheit J SELECT lehreinheit_id FROM public.tbl_student, lehre.tbl_lehreinheitgruppe WHERE tbl_student.student_uid='$user' AND tbl_student.studiengang_kz=tbl_lehreinheitgruppe.studiengang_kz AND - trim(tbl_student.semester)=trim(tbl_lehreinheitgruppe.semester) AND - trim(tbl_student.verband)=trim(tbl_lehreinheitgruppe.verband) AND - trim(tbl_student.gruppe)=trim(tbl_lehreinheitgruppe.gruppe) AND + trim(tbl_student.semester)=trim(tbl_lehreinheitgruppe.semester) AND + ( + ( + ( + tbl_lehreinheitgruppe.verband<>'' AND + tbl_lehreinheitgruppe.gruppe<>'' AND + trim(tbl_lehreinheitgruppe.verband) = trim(tbl_student.verband) AND + trim(tbl_lehreinheitgruppe.gruppe) = trim(tbl_student.gruppe) + ) + OR + ( + tbl_lehreinheitgruppe.verband<>'' AND + ( + trim(tbl_lehreinheitgruppe.gruppe)='' OR + tbl_lehreinheitgruppe.gruppe is null + ) + AND + trim(tbl_lehreinheitgruppe.verband) = trim(tbl_student.verband) + ) + ) + ) + AND tbl_lehreinheitgruppe.lehreinheit_id IN(SELECT lehreinheit_id FROM lehre.tbl_lehreinheit JOIN campus.tbl_uebung USING(lehreinheit_id) WHERE tbl_lehreinheit.lehrveranstaltung_id='$lvid' AND tbl_lehreinheit.studiensemester_kurzbz='$stsem'))"; @@ -144,7 +163,7 @@ if($result = pg_query($conn, $qry)) $lektoren .= $row_lektoren->kurzbz.' '; $lektoren .=')'; } - echo "\n"; + echo "\n"; } echo ' '; } diff --git a/cis/private/lehre/kreuzerltool/studentenpunkteverwalten.php b/cis/private/lehre/kreuzerltool/studentenpunkteverwalten.php index edccfdb89..122c63249 100644 --- a/cis/private/lehre/kreuzerltool/studentenpunkteverwalten.php +++ b/cis/private/lehre/kreuzerltool/studentenpunkteverwalten.php @@ -199,7 +199,8 @@ echo "

Studentenpunkte verwalten

"; if(isset($_POST['submit'])) { $error=false; - if(isset($_POST['punkte']) && is_numeric($_POST['punkte'])) + $punkte = (isset($_POST['punkte'])?str_replace(',','.',$_POST['punkte']):''); + if(isset($punkte) && is_numeric($punkte)) { $ueb_obj = new uebung($conn); if($ueb_obj->load_studentuebung($uid, $uebung_id)) @@ -210,7 +211,8 @@ if(isset($_POST['submit'])) $ueb_obj->insertamum = date('Y-m-d H:i:s'); $ueb_obj->insertvon = $user; } - $ueb_obj->mitarbeitspunkte = $_POST['punkte']; + + $ueb_obj->mitarbeitspunkte = $punkte; $ueb_obj->anmerkung = $_POST['anmerkung']; $ueb_obj->updateamum = date('Y-m-d H:i:s'); $ueb_obj->updatevon = $user; diff --git a/cis/private/lehre/kreuzerltool/verwaltung.php b/cis/private/lehre/kreuzerltool/verwaltung.php index 022b68fc1..4bbe89017 100644 --- a/cis/private/lehre/kreuzerltool/verwaltung.php +++ b/cis/private/lehre/kreuzerltool/verwaltung.php @@ -408,7 +408,7 @@ if(isset($_POST['uebung_edit'])) $uebung_obj->updateamum = date('Y-m-d H:i:s'); $uebung_obj->updatevon = $user; $uebung_obj->uebung_id = $uebung_id; - $uebung_obj->statistik = isset($_POST['statistik']); + $uebung_obj->statistik = (isset($_POST['statistik'])?true:false); if($uebung_obj->save(false)) echo "Die Änderung wurde gespeichert!"; diff --git a/cis/private/lehre/menu.php b/cis/private/lehre/menu.php index d1c3ceb3d..905f1986d 100644 --- a/cis/private/lehre/menu.php +++ b/cis/private/lehre/menu.php @@ -194,12 +194,12 @@ function js_toggle_container(conid) { if(isset($course_id) AND $course_id == $row->studiengang_kz) { - echo ''; + echo ''; $sel_kurzbzlang=$row->kurzbzlang; } else { - echo ''; + echo ''; } } } diff --git a/cis/private/lehre/notenliste.xls.php b/cis/private/lehre/notenliste.xls.php index f3b2053d4..61375fa2f 100644 --- a/cis/private/lehre/notenliste.xls.php +++ b/cis/private/lehre/notenliste.xls.php @@ -125,7 +125,7 @@ if (!$conn = pg_pconnect(CONN_STRING)) $qry = 'SELECT distinct vorname, nachname, uid, matrikelnr, verband, gruppe, semester FROM '; if($gruppe_kurzbz!='') - $qry .= "campus.vw_student JOIN tbl_benutzergruppe WHERE gruppe_kurzbz='".addslashes($gruppe_kurzbz)."'"; + $qry .= "campus.vw_student JOIN public.tbl_benutzergruppe WHERE gruppe_kurzbz='".addslashes($gruppe_kurzbz)."'"; else { $qry .= "campus.vw_student WHERE studiengang_kz='$stg' AND semester='$sem'"; diff --git a/cis/private/lehre/pinboard.php b/cis/private/lehre/pinboard.php index ac70eeba9..dad938876 100644 --- a/cis/private/lehre/pinboard.php +++ b/cis/private/lehre/pinboard.php @@ -364,18 +364,19 @@ path)) + $path = '../../../documents/'.strtolower($short).'/lehrziele'; + if(!$dest_dir = @dir($path)) + { + if(!is_dir($path)) { if(!is_dir('../../../documents/'.strtolower($short))) exec('mkdir -m 775 "../../../documents/'.strtolower($short).'"'); exec('mkdir -m 775 "../../../documents/'.strtolower($short).'/lehrziele"'); - chgrp('../../../documents/'.strtolower($short).'/lehrziele', teacher); + exec('sudo chgrp teacher ../../../documents/'.strtolower($short).'/lehrziele'); } $dir_empty = true; - + $dest_dir = @dir($path); while($entry = $dest_dir->read()) { if($entry != "." && $entry != "..") @@ -400,20 +401,21 @@ - path)) + if(!is_dir($path)) { if(!is_dir('../../../documents/'.strtolower($short))) exec('mkdir -m 775 "../../../documents/'.strtolower($short).'"'); exec('mkdir -m 775 "../../../documents/'.strtolower($short).'/allgemeiner_download"'); - chgrp('../../../documents/'.strtolower($short).'/allgemeiner_download', teacher); + exec('sudo chgrp teacher ../../../documents/'.strtolower($short).'/allgemeiner_download'); } $dir_empty = true; - + $dest_dir = @dir($path); while($entry = $dest_dir->read()) { if($entry != "." && $entry != "..") diff --git a/cis/private/lehre/zipdownload.php b/cis/private/lehre/zipdownload.php index f5bde8139..9681d49ec 100644 --- a/cis/private/lehre/zipdownload.php +++ b/cis/private/lehre/zipdownload.php @@ -70,8 +70,8 @@ chdir($pfad); //File loeschen falls es existiert - if(file_exists($filename)) - exec("rm $filename"); + if(file_exists('../'.$filename)) + exec("rm ../$filename"); //Zip File erstellen exec("zip -r ../".$filename." ./*"); diff --git a/cis/private/pers_in_grp.php b/cis/private/pers_in_grp.php index 204e229ad..0ade46698 100644 --- a/cis/private/pers_in_grp.php +++ b/cis/private/pers_in_grp.php @@ -29,7 +29,7 @@  $row->nachname $row->titelpost"; + echo "  $row->nachname $row->titelpost"; } else { - echo "  $row->nachname $row->titelpost"; + echo "  $row->nachname $row->titelpost"; } } else diff --git a/cis/public/kollegiumskandidaturen.html b/cis/public/kollegiumskandidaturen.html index 70a61ba1d..7d02947ba 100644 --- a/cis/public/kollegiumskandidaturen.html +++ b/cis/public/kollegiumskandidaturen.html @@ -19,17 +19,26 @@ - - + + + + + + + + + + @@ -50,6 +59,11 @@ + + + + diff --git a/include/beispiel.class.php b/include/beispiel.class.php index 5e6d1db5d..d1cdb5133 100644 --- a/include/beispiel.class.php +++ b/include/beispiel.class.php @@ -390,8 +390,8 @@ class beispiel updateamum, updatevon, insertamum, insertvon) VALUES('. $this->addslashes($this->student_uid).','. $this->addslashes($this->beispiel_id).','. - $this->addslashes($this->vorbereitet).','. - $this->addslashes($this->probleme).','. + ($this->vorbereitet?'true':'false').','. + ($this->probleme?'true':'false').','. $this->addslashes($this->updateamum).','. $this->addslashes($this->updatevon).','. $this->addslashes($this->insertamum).','. @@ -400,8 +400,8 @@ class beispiel else { $qry = 'UPDATE campus.tbl_studentbeispiel SET'. - ' vorbereitet='.$this->addslashes($this->vorbereitet).','. - ' probleme='.$this->addslashes($this->probleme).','. + ' vorbereitet='.($this->vorbereitet?'true':'false').','. + ' probleme='.($this->probleme?'true':'false').','. ' updateamum='.$this->addslashes($this->updateamum).','. ' updatevon='.$this->addslashes($this->updatevon). " WHERE beispiel_id=".$this->beispiel_id." AND student_uid=".$this->addslashes($this->student_uid).';'; diff --git a/include/lehreinheitmitarbeiter.class.php b/include/lehreinheitmitarbeiter.class.php index 3e06a9734..47aef1d41 100644 --- a/include/lehreinheitmitarbeiter.class.php +++ b/include/lehreinheitmitarbeiter.class.php @@ -36,6 +36,7 @@ class lehreinheitmitarbeiter var $faktor; // numeric(2,1) var $anmerkung; // varchar(256) var $lehrfunktion_kurzbz; // varchar(16) + var $ext_id; // bigint // ************************************************************************* // * Konstruktor - Uebergibt die Connection und laedt optional eine LE @@ -113,7 +114,7 @@ class lehreinheitmitarbeiter { //ToDo ID entfernen $qry = 'INSERT INTO lehre.tbl_lehreinheitmitarbeiter (lehreinheit_id, mitarbeiter_uid, semesterstunden, planstunden, - stundensatz, faktor, anmerkung, lehrfunktion_kurzbz) + stundensatz, faktor, anmerkung, lehrfunktion_kurzbz, ext_id) VALUES('.$this->addslashes($this->lehreinheit_id).','. $this->addslashes($this->mitarbeiter_uid).','. $this->addslashes($this->semesterstunden).','. @@ -121,7 +122,8 @@ class lehreinheitmitarbeiter $this->addslashes($this->stundensatz).','. $this->addslashes($this->faktor).','. $this->addslashes($this->anmerkung).','. - $this->addslashes($this->lehrfunktion_kurzbz).');'; + $this->addslashes($this->lehrfunktion_kurzbz).','. + $this->addslashes($this->ext_id).');'; } else { @@ -131,7 +133,8 @@ class lehreinheitmitarbeiter ' stundensatz='.$this->addslashes($this->stundensatz).','. ' faktor='.$this->addslashes($this->faktor).','. ' anmerkung='.$this->addslashes($this->anmerkung).','. - ' lehrfunktion_kurzbz='.$this->addslashes($this->lehrfunktion_kurzbz). + ' lehrfunktion_kurzbz='.$this->addslashes($this->lehrfunktion_kurzbz).','. + ' ext_id = '.$this->addslashes($this->ext_id). " WHERE lehreinheit_id=".$this->addslashes($this->lehreinheit_id)." AND mitarbeiter_uid=".$this->addslashes($this->mitarbeiter_uid).";"; } diff --git a/include/uebung.class.php b/include/uebung.class.php index b033e279a..ac04d76f2 100644 --- a/include/uebung.class.php +++ b/include/uebung.class.php @@ -404,7 +404,7 @@ class uebung ' updatevon='.$this->addslashes($this->updatevon). " WHERE uebung_id=".$this->addslashes($this->uebung_id)." AND student_uid=".$this->addslashes($this->student_uid).";"; } - + if(pg_query($this->conn,$qry)) { return true;
- Alexander Hofmann- Alexander Hofmann
- Roland Höller
- Thomas Kittenberger
- Martin Lehner
- Otto Maderdonner +
- Johannes Martinek
- Sven Schweiger
- Susanne Teschl +
- Harald Wahl