* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > * Rudolf Hangl < rudolf.hangl@technikum-wien.at > * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > */ /******************************************************************************************************* * projektabgabe * projektabgabe ermöglicht den Download aller Abgaben eines Stg. * fuer Diplom- und Bachelorarbeiten *******************************************************************************************************/ require_once('../../../config/cis.config.inc.php'); // ------------------------------------------------------------------------------------------ // Datenbankanbindung // ------------------------------------------------------------------------------------------ require_once('../../../include/functions.inc.php'); require_once('../../../include/studiengang.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/benutzerberechtigung.class.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/mail.class.php'); if (!$db = new basis_db()) $db=false; $aktion=''; if(isset($_REQUEST['aktion'])) { $aktion=$_REQUEST['aktion']; } $zipfile=''; $stg_kz=(isset($_REQUEST['stg_kz'])?$_REQUEST['stg_kz']:''); if(!is_numeric($stg_kz) && $stg_kz!='') exit(); $abgabetyp=(isset($_REQUEST['abgabetyp'])?$_REQUEST['abgabetyp']:''); $termin=(isset($_REQUEST['termin'])?$_REQUEST['termin']:''); $htmlstr=''; $datum_obj = new datum(); $user = get_uid(); $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); $berechtigung_kurzbz = 'lehre/abgabetool:download'; if(isset($_GET['id']) && isset($_GET['uid'])) { if($rechte->isBerechtigt($berechtigung_kurzbz)) { if(!is_numeric($_GET['id']) || $_GET['id']=='') die('Fehler bei Parameteruebergabe'); $file = $_GET['id'].'_'.$_GET['uid'].'.pdf'; $filename = PAABGABE_PATH.$file; header('Content-Type: application/octet-stream'); header('Content-disposition: attachment; filename="'.$file.'"'); readfile($filename); } else { die("Sie haben hierzu keine Berechtigung!"); } exit(); } if($aktion!='zip') { ?> Projektabgabe
 
Projektabgabe - Übersicht

loadArray($rechte->getStgKz($berechtigung_kurzbz),'typ,kurzbz'); echo'
'; echo " Studiengang: "; echo " Abgabetyp: "; $qry_termin=" SELECT distinct campus.tbl_paabgabe.datum as termin , to_char(campus.tbl_paabgabe.datum, 'DD-MM-YYYY') as termin_anzeige FROM lehre.tbl_projektarbeit JOIN campus.tbl_paabgabe USING(projektarbeit_id) LEFT JOIN public.tbl_benutzer ON(uid=student_uid) LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id) LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) LEFT JOIN public.tbl_studiengang USING(studiengang_kz) WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom') "; //AND public.tbl_benutzer.aktiv if ($stg_kz!='') $qry_termin.=" AND public.tbl_studiengang.studiengang_kz='$stg_kz'"; if ($abgabetyp!='') $qry_termin.=" AND campus.tbl_paabgabe.paabgabetyp_kurzbz='$abgabetyp'"; $qry_termin.=" ORDER BY termin desc"; echo ' Termin '; ?>  

"; } ##if($stg_kz!='' || $abgabetyp!='' || $termin!='') if(isset($_REQUEST['ok']) || (isset($_REQUEST['aktion']) && $_REQUEST['aktion']=='zip')) { $s=new studiengang(); if($stg_kz!='' && !$s->load($stg_kz)) { die("Studiengang konnte nicht geladen werden!"); } if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt($berechtigung_kurzbz, $s->oe_kurzbz)) { $qry=""; ## $qry.="SELECT * FROM ("; $qry.=" SELECT public.tbl_studiengang.bezeichnung as stgbez, campus.tbl_paabgabe.datum as termin,* FROM lehre.tbl_projektarbeit JOIN campus.tbl_paabgabe USING(projektarbeit_id) LEFT JOIN public.tbl_benutzer ON(uid=student_uid) LEFT JOIN public.tbl_person ON(tbl_benutzer.person_id=tbl_person.person_id) LEFT JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) LEFT JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) LEFT JOIN public.tbl_studiengang USING(studiengang_kz) WHERE (projekttyp_kurzbz='Bachelor' OR projekttyp_kurzbz='Diplom') "; //AND public.tbl_benutzer.aktiv //AND lehre.tbl_projektarbeit.note IS NULL if ($stg_kz!='') $qry.=" AND public.tbl_studiengang.studiengang_kz='$stg_kz'"; if ($abgabetyp!='') $qry.=" AND campus.tbl_paabgabe.paabgabetyp_kurzbz='$abgabetyp'"; if ($termin!='') $qry.=" AND campus.tbl_paabgabe.datum='$termin'"; $qry.=" ORDER BY nachname "; ## $qry.=" ORDER BY tbl_projektarbeit.projektarbeit_id desc) as xy "; ## $qry.=" ORDER BY nachname"; if($stg_kz=='' && $abgabetyp=='' && $termin=='') { $qry.=" limit 100 "; } //echo $qry."
"; if(!$erg=$db->db_query($qry)) { die('Fehler beim Laden der Betreuungen!'); } else { $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= ""; $htmlstr .= ""; $htmlstr .= "\n"; $i = 0; while($row=$db->db_fetch_object($erg)) { $htmlstr .= ""; if(file_exists(PAABGABE_PATH.$row->paabgabe_id.'_'.$row->uid.'.pdf')) { $htmlstr .= " "; } else { $htmlstr .= " "; } //$htmlstr .= ""; $htmlstr .= ""; $htmlstr .= ""; $htmlstr .= ""; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; if($aktion=='zip') { if($zipfile=='') { $zipfile = $row->paabgabe_id.'_'.$row->uid.'.pdf'; } else { $zipfile .= " ".$row->paabgabe_id.'_'.$row->uid.'.pdf'; } } } $htmlstr .= "
downloadTerminAbgabetypUID Vorname NachnameTyp Titel
uid' target='_blank'>PDF    link".$datum_obj->formatDatum($row->termin,'d.m.Y')."".$abgabetyp." ".$row->uid." ".$row->vorname." ".$row->nachname." ".$row->projekttyp_kurzbz." ".$row->titel." 
"; } } else { die("Keine Zugriffsberechtigung!"); } } if($zipfile=='') { echo $htmlstr; echo "
"; } else { //Zip File erstellen chdir(PAABGABE_PATH); $zipausgabe=tempnam("/tmp", "PAA").".zip"; exec("zip ".$zipausgabe." ".$zipfile); //echo $zipausgabe; //echo "
zip -r ".$zipausgabe." ".$zipfile; if(file_exists($zipausgabe)) { header('Content-Type: application/octet-stream'); header('Content-disposition: attachment; filename="Abgabe_'.$s->kuerzel.'.zip"'); $handle = fopen($zipausgabe, "rb"); while (!feof($handle)) { echo fread($handle, 1024); } fclose($handle); //echo file_get_contents($zipausgabe); unlink($zipausgabe); } else { echo "
Fehler bei der Dateierstellung!"; } } ?>