* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > * Rudolf Hangl < rudolf.hangl@technikum-wien.at > * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > */ /******************************************************************************************************* * abgabe_lektor * abgabe_lektor ist die Lektorenmaske des Abgabesystems * fuer Diplom- und Bachelorarbeiten *******************************************************************************************************/ require_once('../../../config/cis.config.inc.php'); require_once('../../../include/functions.inc.php'); require_once('../../../include/studiengang.class.php'); require_once('../../../include/student.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/mail.class.php'); require_once('../../../include/benutzerberechtigung.class.php'); if (!$db = new basis_db()) die('Fehler beim Herstellen der Datenbankverbindung'); if(!isset($_POST['uid'])) { $uid = (isset($_GET['uid'])?$_GET['uid']:'-1'); $projektarbeit_id = (isset($_GET['projektarbeit_id'])?$_GET['projektarbeit_id']:'-1'); $titel = (isset($_GET['titel'])?$_GET['titel']:'-1'); $betreuer = (isset($_GET['betreuer'])?$_GET['betreuer']:'-1'); $bid = (isset($_GET['bid'])?$_GET['bid']:'-1'); $command = ''; $paabgabe_id = ''; $fixtermin = false; $datum = '01.01.1980'; $kurzbz = ''; $kontrollschlagwoerter = ''; $schlagwoerter = ''; $schlagwoerter_en = ''; $abstract = ''; $abstract_en = ''; $seitenanzahl = ''; $abgabedatum = '01.01.1980'; $sprache='German'; } else { $uid = (isset($_POST['uid'])?$_POST['uid']:'-1'); $projektarbeit_id = (isset($_POST['projektarbeit_id'])?$_POST['projektarbeit_id']:'-1'); $bid = (isset($_POST['bid'])?$_POST['bid']:'-1'); $titel = (isset($_POST['titel'])?$_POST['titel']:''); $command = (isset($_POST['command'])?$_POST['command']:''); $paabgabe_id = (isset($_POST['paabgabe_id'])?$_POST['paabgabe_id']:'-1'); $paabgabetyp_kurzbz = (isset($_POST['paabgabetyp_kurzbz'])?$_POST['paabgabetyp_kurzbz']:'-1'); $fixtermin = (isset($_POST['fixtermin'])?1:0); $datum = (isset($_POST['datum'])?$_POST['datum']:''); $abgabedatum = (isset($_POST['abgabedatum'])?$_POST['abgabedatum']:'01.01.1980'); $kurzbz = (isset($_POST['kurzbz'])?$_POST['kurzbz']:''); $betreuer = (isset($_POST['betreuer'])?$_POST['betreuer']:'-1'); $sprache = (isset($_POST['sprache'])?$_POST['sprache']:'German'); $kontrollschlagwoerter = (isset($_POST['kontrollschlagwoerter'])?$_POST['kontrollschlagwoerter']:'-1'); $schlagwoerter = (isset($_POST['schlagwoerter'])?$_POST['schlagwoerter']:'-1'); $schlagwoerter_en = (isset($_POST['schlagwoerter_en'])?$_POST['schlagwoerter_en']:'-1'); $abstract = (isset($_POST['abstract'])?$_POST['abstract']:'-1'); $abstract_en = (isset($_POST['abstract_en'])?$_POST['abstract_en']:'-1'); $seitenanzahl = (isset($_POST['seitenanzahl'])?$_POST['seitenanzahl']:'-1'); } //$user='if06b172'; //$user='ti06m114'; $user = get_uid(); if($uid=='-1') { exit; } echo ' PA-Abgabe '; if($uid!=$user) { $student = new student(); if(!$student->load($uid)) die('Student ist ungueltig'); $stg_obj = new studiengang(); if(!$stg_obj->load($student->studiengang_kz)) die('Studiengang des Studenten ist ungueltig'); //Studentenansicht //Rechte Pruefen $allowed=false; //Berechtigung ueber das Berechtigungssystem $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); if($rechte->isBerechtigt('lehre/abgabetool',$stg_obj->oe_kurzbz, 's')) $allowed=true; //oder Lektor mit Betreuung dieses Studenten $qry = "SELECT 1 FROM lehre.tbl_projektarbeit JOIN lehre.tbl_projektbetreuer USING(projektarbeit_id) JOIN campus.vw_benutzer on(vw_benutzer.person_id=tbl_projektbetreuer.person_id) WHERE tbl_projektarbeit.student_uid='".addslashes($uid)."' AND vw_benutzer.uid='".addslashes($user)."';"; if($result = $db->db_query($qry)) { if($db->db_num_rows($result)>0) { $allowed=true; } } if(!$allowed) { die('Sie haben keine Berechtigung zum Anzeigen der Studentenansicht'); } } $datum_obj = new datum(); $error=''; $neu = (isset($_GET['neu'])?true:false); $stg_arr = array(); $error = false; $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); $htmlstr=''; if($command=='add') { //zusätzliche Daten bearbeiten //Check der Eingabedaten if(strlen($kontrollschlagwoerter)<1) { $error=true; } if(mb_strlen($kontrollschlagwoerter)>=150) { $kontrollschlagwoerter = mb_substr($kontrollschlagwoerter, 0, 146).'...'; } if(strlen($abstract)<1) { $error=true; } if(strlen($abstract_en)<1) { $error=true; } if($seitenanzahl<1) { $error=true; } if(!$error) { $qry_upd="UPDATE lehre.tbl_projektarbeit SET seitenanzahl = '".addslashes($seitenanzahl)."', abgabedatum = now(), sprache = '".addslashes($sprache)."', kontrollschlagwoerter = '".addslashes($kontrollschlagwoerter)."', schlagwoerter_en = '".addslashes($schlagwoerter_en)."', schlagwoerter = '".addslashes($schlagwoerter)."', abstract = '".addslashes($abstract)."', abstract_en = '".addslashes($abstract_en)."' WHERE projektarbeit_id = '".addslashes($projektarbeit_id)."'"; if($result=$db->db_query($qry_upd)) { $qry="UPDATE campus.tbl_paabgabe SET abgabedatum = now(), updatevon = '".addslashes($user)."', updateamum = now() WHERE paabgabe_id='".addslashes($paabgabe_id)."'"; $result=$db->db_query($qry); $command="update"; } else { echo "DB: Update fehlgeschlagen!
 "; $command=''; } } else { echo "Dateneingabe unvollständig!
 "; $command=''; } } if($command=="update" && $error!=true) { //Dateiupload bearbeiten if ((isset($_FILES) and isset($_FILES['datei']) and ! $_FILES['datei']['error'])) { if(strtoupper(end(explode(".", $_FILES['datei']['name'])))=='PDF') { if($paabgabetyp_kurzbz!='end') { //"normaler" Upload move_uploaded_file($_FILES['datei']['tmp_name'], PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'); if(file_exists(PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf')) { exec('chmod 640 "'.PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'.'"'); $qry="UPDATE campus.tbl_paabgabe SET abgabedatum = now(), updatevon = '".addslashes($user)."', updateamum = now() WHERE paabgabe_id='".addslashes($paabgabe_id)."'"; $result=$db->db_query($qry); echo 'Die Datei wurde erfolgreich hochgeladen'; } else { echo "Upload nicht gefunden! Bitte wiederholen Sie den Fileupload."; } } else { //Upload der Endabgabe - Eingabe der Zusatzdaten $command='add'; if(!$error) { move_uploaded_file($_FILES['datei']['tmp_name'], PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'); } if(file_exists(PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf')) { /*$qry="UPDATE campus.tbl_paabgabe SET abgabedatum = now(), updatevon = '".$user."', updateamum = now() WHERE paabgabe_id='".$paabgabe_id."'"; $result=$db->db_query($qry);*/ echo '

Abgabe Studentenbereich - Zusätzliche Daten für die Abgabe

'; $qry_zd="SELECT * FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='".$projektarbeit_id."'"; $result_zd=@$db->db_query($qry_zd); $row_zd=@$db->db_fetch_object($result_zd); $htmlstr = "
Betreuer: ".$betreuer."
Titel: ".$titel."

\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= ""; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "
Sprache der Arbeit:"; $sprache = @$db->db_query("SELECT sprache FROM tbl_sprache"); $num = $db->db_num_rows($sprache); if ($num > 0) { $htmlstr .= " \n"; } $htmlstr .= "
Kontrollierte Schlagwörter:*
Dt. Schlagwörter:
Engl. Schlagwörter:
Abstract (max. 5000 Zeichen):*
Abstract engl.(max. 5000 Zeichen):*
Seitenanzahl:*
 
* Pflichtfeld - bitte immer befüllen
 
\n"; $htmlstr .= ""; echo $htmlstr; } else { echo "Upload nicht gefunden! Bitte wiederholen Sie den Fileupload."; } } //E-Mail an 1.Begutachter if($bid!='' && $bid!=NULL) { $qry_betr="SELECT trim(COALESCE(titelpre,'')||' '||COALESCE(vorname,'')||' '||COALESCE(nachname,'')||' '||COALESCE(titelpost,'')) as first, public.tbl_mitarbeiter.mitarbeiter_uid, anrede FROM public.tbl_person JOIN lehre.tbl_projektbetreuer ON(lehre.tbl_projektbetreuer.person_id=public.tbl_person.person_id) LEFT JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id) LEFT JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid) WHERE public.tbl_person.person_id='$bid'"; if(!$betr=$db->db_query($qry_betr)) { echo "Fehler beim Laden der Betreuer!
 "; } else { if($row_betr=$db->db_fetch_object($betr)) { $qry_std="SELECT * FROM campus.vw_benutzer where uid='$uid'"; if(!$result_std=$db->db_query($qry_std)) { echo "Datensatz konnte nicht gefunden werden!
 "; } else { $row_std=$db->db_fetch_object($result_std); $mail = new mail($row_betr->mitarbeiter_uid."@".DOMAIN, "vilesci@".DOMAIN, "Bachelor-/Diplomarbeitsbetreuung", "Sehr geehrte".($row_betr->anrede=="Herr"?"r":"")." ".$row_betr->anrede." ".$row_betr->first."!\n\n".($row_std->anrede)." ".trim($row_std->titelpre." ".$row_std->vorname." ".$row_std->nachname." ".$row_std->titelpost)." hat eine Abgabe vorgenommen.\n\n--------------------------------------------------------------------------\nDies ist ein vom Bachelor-/Diplomarbeitsabgabesystem generiertes Info-Mail\ncis->Mein CIS->Bachelor- und Diplomarbeitsabgabe\n--------------------------------------------------------------------------"); $mail->setReplyTo($user."@".DOMAIN); if(!$mail->send()) { echo "Fehler beim Versenden des Mails an den (Erst-)Begutachter!
 "; } } } else { echo "Betreuer nicht gefunden. Kein Mail verschickt!
 "; } } } } else { echo "Upload ist keine pdf-Datei! Bitte wiederholen Sie den Fileupload."; } } $error=false; } if($command!="add" && $command!="update") { $command="update"; } if($uid==-1||$projektarbeit_id==-1||$titel==-1) { //echo "Fehler bei der Datenübergabe"; exit; } if($command!="add") { echo '

Abgabe Studentenbereich

'; //Einlesen der Termine $qry=""; $htmlstr = "
Betreuer: ".$betreuer."
Titel: ".$titel."

Abgabetermine:
\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".$projektarbeit_id."' AND paabgabetyp_kurzbz!='note' ORDER BY datum;"; $htmlstr .= "\n"; $result=@$db->db_query($qry); while ($row=@$db->db_fetch_object($result)) { $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; if(!$row->abgabedatum) { if ($row->datumdatum>=date('Y-m-d')) && ($row->datumabgabedatum>$row->datum) { //Abgabe nach Termin - weiß auf hellrot $bgcol='#EA7B7B'; $fcol='#FFFFFF'; } else { //Abgabe vor Termin - schwarz auf grün $bgcol='#00FF00'; $fcol='#000000'; } } //$htmlstr .= ""; } else { $htmlstr .= ""; } $htmlstr .= " \n"; $htmlstr .= " \n"; $qry_typ="SELECT * FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$row->paabgabetyp_kurzbz."'"; $result_typ=$db->db_query($qry_typ); $row_typ=$db->db_fetch_object($result_typ); $htmlstr .= " \n"; $htmlstr .= " \n"; $htmlstr .= " \n"; //Überschrittene Termine if($row->paabgabetyp_kurzbz=='enda') { //Bei Endabgabe kein Upload - Abgabe erfolgt im Sekretariat $htmlstr .= " "; } else { if($row->fixtermin=='t' && $row->datum'; } ?>
fixDatum AbgabetypKurzbeschreibung der Abgabeabgegeben amDateiupload (nur pdf)
fixtermin=='t'?'checked=\"checked\"':'')." disabled>"; if($row->fixtermin=='t') { $htmlstr .= "JN".$datum_obj->formatDatum($row->datum,'d.m.Y')."$row_typ->bezeichnung$row->kurzbz".$datum_obj->formatDatum($row->abgabedatum,'d.m.Y')."