From 113328df345affb4f4c292528c8e2c696448f555 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Mon, 11 Mar 2013 14:35:53 +0000 Subject: [PATCH] =?UTF-8?q?Studierende=20haben=20nun=20die=20M=C3=B6glichk?= =?UTF-8?q?eit,=20die=20hochgeladene=20Arbeit=20im=20Abgabetool=20einzuseh?= =?UTF-8?q?en=20und=20wieder=20herunterzuladen.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/lehre/abgabe_student_details.php | 50 ++++++++------ cis/private/lehre/abgabe_student_file.php | 73 ++++++++++++++++++++ locale/de-AT/abgabetool.php | 1 + locale/en-US/abgabetool.php | 1 + 4 files changed, 102 insertions(+), 23 deletions(-) create mode 100755 cis/private/lehre/abgabe_student_file.php diff --git a/cis/private/lehre/abgabe_student_details.php b/cis/private/lehre/abgabe_student_details.php index f80c645d7..fccb6e45f 100644 --- a/cis/private/lehre/abgabe_student_details.php +++ b/cis/private/lehre/abgabe_student_details.php @@ -93,28 +93,6 @@ if($uid=='-1') exit; } -echo ' - - - '.$p->t('abgabetool/ueberschrift').' - - - - - - - - '; if($uid!=$user) { $student = new student(); @@ -159,6 +137,29 @@ if($uid!=$user) die($p->t('abgabetool/keineBerechtigungStudentenansicht')); } } + +echo ' + + + '.$p->t('abgabetool/ueberschrift').' + + + + + + + + '; $datum_obj = new datum(); $error=''; $neu = (isset($_GET['neu'])?true:false); @@ -483,7 +484,10 @@ if($command!="add") $row_typ=$db->db_fetch_object($result_typ); $htmlstr .= " $row_typ->bezeichnung\n"; $htmlstr .= " $row->kurzbz\n"; - $htmlstr .= " ".$datum_obj->formatDatum($row->abgabedatum,'d.m.Y')."\n"; + $htmlstr .= " ".$datum_obj->formatDatum($row->abgabedatum,'d.m.Y'); + if($row->abgabedatum!='') + $htmlstr .= ' '; + $htmlstr .= "\n"; //Überschrittene Termine if($row->paabgabetyp_kurzbz=='enda') diff --git a/cis/private/lehre/abgabe_student_file.php b/cis/private/lehre/abgabe_student_file.php new file mode 100755 index 000000000..9e6e795d4 --- /dev/null +++ b/cis/private/lehre/abgabe_student_file.php @@ -0,0 +1,73 @@ + + */ + +require_once('../../../config/cis.config.inc.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/benutzerberechtigung.class.php'); +require_once('../../../include/phrasen.class.php'); +require_once('../../../include/student.class.php'); + +$sprache = getSprache(); +$p = new phrasen($sprache); + +if (!$db = new basis_db()) + die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); + +$getuid=get_uid(); + +if(isset($_GET['student_uid'])) + $uid = $_GET['student_uid']; +else + die($p->t('global/fehlerBeiDerParameteruebergabe')); + +if(isset($_GET['abgabe_id'])) + $id = $_GET['abgabe_id']; +else + die($p->t('global/fehlerBeiDerParameteruebergabe')); + +if(!is_numeric($id) || $id=='') + die($p->t('global/fehlerBeiDerParameteruebergabe')); + +$student = new student(); +if(!$student->load($uid)) + die('Student wurde nicht gefunden'); + +if($getuid!=$uid) +{ + //Berechtigung ueber das Berechtigungssystem + $rechte = new benutzerberechtigung(); + $rechte->getBerechtigungen($getuid); + + if(!$rechte->isBerechtigt('lehre/abgabetool')) + die('Sie haben keine Berechtigung fuer diese Datei'); +} + +$file = $id.'_'.$uid.'.pdf'; +$filename = PAABGABE_PATH.$file; +if(file_exists($filename)) +{ + header('Content-Type: application/octet-stream'); + header('Content-disposition: attachment; filename="'.$file.'"'); + readfile($filename); + exit; +} +else + echo 'Datei existiert nicht'; +?> \ No newline at end of file diff --git a/locale/de-AT/abgabetool.php b/locale/de-AT/abgabetool.php index 51182ef1d..19adb3b9b 100755 --- a/locale/de-AT/abgabetool.php +++ b/locale/de-AT/abgabetool.php @@ -68,4 +68,5 @@ $this->phrasen['abgabetool/dateiZuGross']='Die Datei ist zu groß! Maximale Date $this->phrasen['abgabetool/eidesstattlicheErklaerung']='Ich erkläre hiermit an Eides statt, dass ich die vorliegende Arbeit selbständig angefertigt habe. Die aus fremden Quellen direkt oder indirekt übernommenen Gedanken sind als solche kenntlich gemacht. Die Arbeit wurde bisher weder in gleicher noch in ähnlicher Form einer anderen Prüfungsbehörde vorgelegt und auch noch nicht veröffentlicht.'; $this->phrasen['abgabetool/gelesenUndAkzeptiert']='Gelesen und akzeptiert'; $this->phrasen['abgabetool/erklaerungNichtAkzeptiert']='Erklärung nicht akzeptiert'; +$this->phrasen['abgabetool/downloadProjektarbeit']='Dokument herunterladen'; ?> diff --git a/locale/en-US/abgabetool.php b/locale/en-US/abgabetool.php index 1323336a1..df7b6850b 100755 --- a/locale/en-US/abgabetool.php +++ b/locale/en-US/abgabetool.php @@ -68,4 +68,5 @@ $this->phrasen['abgabetool/dateiZuGross']='The File is too big! Maximum File siz $this->phrasen['abgabetool/eidesstattlicheErklaerung']='I confirm that this paper is entirely my own work. All sources and quotations have been fully acknowledged in the appropriate places with adequate footnotes and citations. Quotations have been properly acknowledged and marked with appropriate punctuation. The works consulted are listed in the bibliography. This paper has not been submitted to another examination panel in the same or a similar form, and has not been published.'; $this->phrasen['abgabetool/gelesenUndAkzeptiert']='Read and accepted'; $this->phrasen['abgabetool/erklaerungNichtAkzeptiert']='Declaration not accepted'; +$this->phrasen['abgabetool/downloadProjektarbeit']='Download File'; ?>