From 84a78e42e460e30eb01b322a6fce21d5db36d446 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 20 Oct 2010 07:15:55 +0000 Subject: [PATCH] =?UTF-8?q?Abgabetool=20-=20Studentenansicht=20-=20Ansicht?= =?UTF-8?q?=20f=C3=BCr=20alte=20Arbeiten=20f=C3=BCr=20Lektoren=20-=20Legen?= =?UTF-8?q?de=20f=C3=BCr=20Farbcodes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/lehre/abgabe_lektor.php | 15 +- cis/private/lehre/abgabe_lektor_details.php | 2 +- cis/private/lehre/abgabe_student_details.php | 130 +++++++++++------- .../lehre/abgabe_student_frameset.html | 20 --- cis/private/lehre/abgabe_student_frameset.php | 48 +++++++ include/tw/cis_menu_meincis.inc.php | 2 +- vilesci/lehre/abgabe_assistenz.php | 94 +++++++------ vilesci/lehre/abgabe_assistenz_details.php | 129 ++++------------- 8 files changed, 212 insertions(+), 228 deletions(-) delete mode 100644 cis/private/lehre/abgabe_student_frameset.html create mode 100644 cis/private/lehre/abgabe_student_frameset.php diff --git a/cis/private/lehre/abgabe_lektor.php b/cis/private/lehre/abgabe_lektor.php index 898c2bad2..2d11368dc 100644 --- a/cis/private/lehre/abgabe_lektor.php +++ b/cis/private/lehre/abgabe_lektor.php @@ -42,6 +42,7 @@ $getuid=get_uid(); $htmlstr = ""; + $showall=isset($_GET['showall']); $sql_query = "SELECT * FROM (SELECT DISTINCT ON(tbl_projektarbeit.projektarbeit_id) * FROM lehre.tbl_projektarbeit LEFT JOIN lehre.tbl_projektbetreuer using(projektarbeit_id) LEFT JOIN public.tbl_benutzer on(uid=student_uid) @@ -54,8 +55,7 @@ AND tbl_projektbetreuer.person_id IN (SELECT person_id FROM public.tbl_benutzer WHERE public.tbl_benutzer.person_id=lehre.tbl_projektbetreuer.person_id AND public.tbl_benutzer.uid='$getuid') - AND public.tbl_benutzer.aktiv - AND lehre.tbl_projektarbeit.note IS NULL + AND public.tbl_benutzer.aktiv ".($showall?'':' AND lehre.tbl_projektarbeit.note IS NULL ')." AND (betreuerart_kurzbz='Betreuer' OR betreuerart_kurzbz='Begutachter' OR betreuerart_kurzbz='Erstbegutachter' OR betreuerart_kurzbz='Zweitbegutachter' OR betreuerart_kurzbz='Erstbetreuer') ORDER BY tbl_projektarbeit.projektarbeit_id, betreuerart_kurzbz desc) as xy @@ -69,7 +69,7 @@ else { //$htmlstr .= "
"; $htmlstr .= "
"; - $htmlstr .= "\n"; + $htmlstr .= "
\n"; $htmlstr .= "\n"; $htmlstr .= " @@ -84,7 +84,7 @@ else $i = 0; while($row=$db->db_fetch_object($erg)) { - $htmlstr .= " \n"; + $htmlstr .= " \n"; //class='liste".($i%2)."' $htmlstr .= " "; $htmlstr .= " \n"; $htmlstr .= " "; @@ -123,11 +123,14 @@ function confdel() Anleitung  Bachelor-/Diplomarbeitsbetreuungen ($getuid)"; +echo "

Bachelor-/Diplomarbeitsbetreuungen ($getuid)
Anleitung Handbuch

"; - echo $htmlstr; +echo $htmlstr; + +echo 'alle betreuten Arbeiten anzeigen'; ?> + \ No newline at end of file diff --git a/cis/private/lehre/abgabe_lektor_details.php b/cis/private/lehre/abgabe_lektor_details.php index 3c8a72cf0..5a23cdd0a 100644 --- a/cis/private/lehre/abgabe_lektor_details.php +++ b/cis/private/lehre/abgabe_lektor_details.php @@ -336,7 +336,7 @@ else { $htmlstr .= ""; } -$htmlstr .= ""; $htmlstr .= "\n"; $htmlstr .= "
UID / Personenkennz. Email
".$row->uid." / ".$row->matrikelnr."email  
Titel: ".$titel."
"; +$htmlstr .= "
Titel: ".$titel."Studentenansicht
\n"; $htmlstr .= "
Abgabetermine:\n"; diff --git a/cis/private/lehre/abgabe_student_details.php b/cis/private/lehre/abgabe_student_details.php index ba1ed3e08..5d9ba4e9a 100644 --- a/cis/private/lehre/abgabe_student_details.php +++ b/cis/private/lehre/abgabe_student_details.php @@ -25,20 +25,17 @@ * 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'); - 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/mail.class.php'); - require_once('../../../include/benutzerberechtigung.class.php'); - if (!$db = new basis_db()) - die('Fehler beim Herstellen der Datenbankverbindung'); - - //require_once('../../../include/Excel/excel.php'); if(!isset($_POST['uid'])) { $uid = (isset($_GET['uid'])?$_GET['uid']:'-1'); @@ -87,11 +84,65 @@ else //$user='if06b172'; //$user='ti06m114'; $user = get_uid(); -if($uid=='-1' || $uid!=$user) +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); @@ -124,7 +175,7 @@ if($command=='add') if(!$error) { $qry_upd="UPDATE lehre.tbl_projektarbeit SET - seitenanzahl = '".$seitenanzahl."', + seitenanzahl = '".addslashes($seitenanzahl)."', abgabedatum = now(), sprache = '".addslashes($sprache)."', kontrollschlagwoerter = '".addslashes($kontrollschlagwoerter)."', @@ -132,14 +183,14 @@ if($command=='add') schlagwoerter = '".addslashes($schlagwoerter)."', abstract = '".addslashes($abstract)."', abstract_en = '".addslashes($abstract_en)."' - WHERE projektarbeit_id = '".$projektarbeit_id."'"; + WHERE projektarbeit_id = '".addslashes($projektarbeit_id)."'"; if($result=$db->db_query($qry_upd)) { $qry="UPDATE campus.tbl_paabgabe SET abgabedatum = now(), - updatevon = '".$user."', + updatevon = '".addslashes($user)."', updateamum = now() - WHERE paabgabe_id='".$paabgabe_id."'"; + WHERE paabgabe_id='".addslashes($paabgabe_id)."'"; $result=$db->db_query($qry); $command="update"; } @@ -165,17 +216,18 @@ if($command=="update" && $error!=true) if($paabgabetyp_kurzbz!='end') { //"normaler" Upload - move_uploaded_file($_FILES['datei']['tmp_name'], PAABGABE_PATH.$paabgabe_id.'_'.$user.'.pdf'); - if(file_exists(PAABGABE_PATH.$paabgabe_id.'_'.$user.'.pdf')) + 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.'_'.$user.'.pdf'.'"'); + exec('chmod 640 "'.PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'.'"'); $qry="UPDATE campus.tbl_paabgabe SET abgabedatum = now(), - updatevon = '".$user."', + updatevon = '".addslashes($user)."', updateamum = now() - WHERE paabgabe_id='".$paabgabe_id."'"; + WHERE paabgabe_id='".addslashes($paabgabe_id)."'"; $result=$db->db_query($qry); + echo 'Die Datei wurde erfolgreich hochgeladen'; } else { @@ -188,9 +240,9 @@ if($command=="update" && $error!=true) $command='add'; if(!$error) { - move_uploaded_file($_FILES['datei']['tmp_name'], PAABGABE_PATH.$paabgabe_id.'_'.$user.'.pdf'); + move_uploaded_file($_FILES['datei']['tmp_name'], PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf'); } - if(file_exists(PAABGABE_PATH.$paabgabe_id.'_'.$user.'.pdf')) + if(file_exists(PAABGABE_PATH.$paabgabe_id.'_'.$uid.'.pdf')) { /*$qry="UPDATE campus.tbl_paabgabe SET abgabedatum = now(), @@ -199,18 +251,7 @@ if($command=="update" && $error!=true) WHERE paabgabe_id='".$paabgabe_id."'"; $result=$db->db_query($qry);*/ - echo ' - - - - PA-Abgabe - - - - - - -

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

'; + 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); @@ -334,18 +375,7 @@ if($uid==-1||$projektarbeit_id==-1||$titel==-1) if($command!="add") { - echo ' - - - - PA-Abgabe - - - - - - -

Abgabe Studentenbereich

'; + echo '

Abgabe Studentenbereich

'; //Einlesen der Termine $qry=""; diff --git a/cis/private/lehre/abgabe_student_frameset.html b/cis/private/lehre/abgabe_student_frameset.html deleted file mode 100644 index 84e22d7bd..000000000 --- a/cis/private/lehre/abgabe_student_frameset.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - Bachelor-/Diplomarbeitsabgabe - Student - - - - - - - - <body bgcolor="#FFFFFF"> - This application works only with a frames-enabled browser.<br /> - <a href="main.php">Use without frames</a> - </body> - - - - \ No newline at end of file diff --git a/cis/private/lehre/abgabe_student_frameset.php b/cis/private/lehre/abgabe_student_frameset.php new file mode 100644 index 000000000..cabbddeaf --- /dev/null +++ b/cis/private/lehre/abgabe_student_frameset.php @@ -0,0 +1,48 @@ +, + * Andreas Oesterreicher and + * Karl Burkhart . + */ +if(isset($_GET['uid'])) + $uid = $_GET['uid']; +else + $uid = ''; +?> + + + + + Bachelor-/Diplomarbeitsabgabe - Student + + + + +'; + echo ''; +?> + + <body bgcolor="#FFFFFF"> + This application works only with a frames-enabled browser.<br /> + <a href="main.php">Use without frames</a> + </body> + + + + \ No newline at end of file diff --git a/include/tw/cis_menu_meincis.inc.php b/include/tw/cis_menu_meincis.inc.php index 8ecc6f7e1..b9b6ee024 100644 --- a/include/tw/cis_menu_meincis.inc.php +++ b/include/tw/cis_menu_meincis.inc.php @@ -134,7 +134,7 @@   - +  Bachelor- und Diplomarbeitsabgabe diff --git a/vilesci/lehre/abgabe_assistenz.php b/vilesci/lehre/abgabe_assistenz.php index a85761a49..71c42cfcc 100644 --- a/vilesci/lehre/abgabe_assistenz.php +++ b/vilesci/lehre/abgabe_assistenz.php @@ -26,40 +26,53 @@ * abgabe_assistenz ist die Assistenzoberfläche des Abgabesystems * für Diplom- und Bachelorarbeiten *******************************************************************************************************/ - require_once('../../config/vilesci.config.inc.php'); - require_once('../../include/basis_db.class.php'); - if (!$db = new basis_db()) - die('Es konnte keine Verbindung zum Server aufgebaut werden.'); +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/datum.class.php'); +require_once('../../include/person.class.php'); +require_once('../../include/benutzer.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/mitarbeiter.class.php'); +require_once('../../include/variable.class.php'); - require_once('../../include/functions.inc.php'); - require_once('../../include/datum.class.php'); - require_once('../../include/person.class.php'); - require_once('../../include/benutzer.class.php'); - require_once('../../include/benutzerberechtigung.class.php'); - require_once('../../include/mitarbeiter.class.php'); - require_once('../../include/variable.class.php'); - - if (!$getuid = get_uid()) - die('Keine UID gefunden ! Zurück'); +if (!$db = new basis_db()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); + +if (!$getuid = get_uid()) + die('Keine UID gefunden ! Zurück'); - $htmlstr = ""; - $erstbegutachter=''; - $zweitbegutachter=''; - $fachbereich_kurzbz=''; - //$p2id=''; +$htmlstr = ""; +$erstbegutachter=''; +$zweitbegutachter=''; +$fachbereich_kurzbz=''; +//$p2id=''; - $stg_kz=(isset($_REQUEST['stg_kz'])?$_REQUEST['stg_kz']:''); - if(!is_numeric($stg_kz) && $stg_kz!='') - die('Bitte vor dem Aufruf Studiengang auswählen!'); - $stgbez=''; - - $trenner=''; - $rechte = new benutzerberechtigung(); - $rechte->getBerechtigungen($getuid); +$stg_kz=(isset($_REQUEST['stg_kz'])?$_REQUEST['stg_kz']:''); +if(!is_numeric($stg_kz) && $stg_kz!='') + die('Bitte vor dem Aufruf Studiengang auswählen!'); +$stgbez=''; + +$trenner=''; +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($getuid); if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', null, 'suid', $fachbereich_kurzbz) ) die('Sie haben keine Berechtigung für diesen Studiengang Zurück'); +function showFarbcodes() +{ + $farbcodes = ''; + + $farbcodes.= ""; + $farbcodes.=""; + $farbcodes.=""; + $farbcodes.=""; + $farbcodes.=""; + $farbcodes.=""; + $farbcodes.="
Termin noch mehr als 12 Tage entfernt
Termin innerhalb der nächsten 12 Tage
Termin überschritten / keine Abgabe
abgegeben
Abgabe nach Termin
"; + return $farbcodes; +} + $trenner = new variable(); $trenner->loadVariables($getuid); @@ -85,7 +98,7 @@ else { //$htmlstr .= ""; $htmlstr .= "
"; - $htmlstr .= "\n"; + $htmlstr .= "
\n"; $htmlstr .= "\n"; $htmlstr .= " @@ -169,7 +182,7 @@ else } } - $htmlstr .= " \n"; + $htmlstr .= " \n";//class='liste".($i%2)."' $htmlstr .= " "; //Anzeige $qry_end="SELECT * FROM campus.tbl_paabgabe WHERE paabgabetyp_kurzbz='end' AND projektarbeit_id='$row->projektarbeit_id' ORDER BY datum DESC"; @@ -263,10 +276,12 @@ else $htmlstr .= "
UID Email
\n"; $htmlstr .= "\n"; $htmlstr .= "\n"; + $htmlstr .= "
"; $htmlstr .= "\n"; $htmlstr .= ""; $htmlstr .= ""; $htmlstr .= "
alle markieren
 
\n"; + $htmlstr .="
".showFarbcodes().'
'; $htmlstr .= "
"; @@ -386,26 +401,9 @@ function btserienmail(trenner, stgbez) Anleitung  Bachelor-/Diplomarbeitsbetreuungen (Studiengang $stg_kz, $stgbez)"; +echo "

Bachelor-/Diplomarbeitsbetreuungen (Studiengang $stg_kz, $stgbez)

"; - - echo $htmlstr; - - echo showFarbcodes(); - - function showFarbcodes() - { - $farbcodes = ''; - - $farbcodes.= ""; - $farbcodes.=""; - $farbcodes.=""; - $farbcodes.=""; - $farbcodes.=""; - $farbcodes.=""; - $farbcodes.="
Termin noch mehr als 12 Tage entfernt
Termin innerhalb der nächsten 12 Tage
Termin überschritten / keine Abgabe
abgegeben
Abgabe nach Termin
"; - return $farbcodes; - } +echo $htmlstr; ?> diff --git a/vilesci/lehre/abgabe_assistenz_details.php b/vilesci/lehre/abgabe_assistenz_details.php index 630514a6e..22d00f52d 100644 --- a/vilesci/lehre/abgabe_assistenz_details.php +++ b/vilesci/lehre/abgabe_assistenz_details.php @@ -26,8 +26,14 @@ * abgabe_assistenz ist die Assistenzoberfläche des Abgabesystems * für Diplom- und Bachelorarbeiten *******************************************************************************************************/ -//echo Test($_REQUEST); require_once('../../config/vilesci.config.inc.php'); +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(isset($_GET['id']) && isset($_GET['uid']) && isset($_GET['pdfread'])) { //PDF-Ausgabe vom Aufruf Zeile 689 @@ -36,29 +42,15 @@ if(isset($_GET['id']) && isset($_GET['uid']) && isset($_GET['pdfread'])) $file = $_GET['id'].'_'.$_GET['uid'].'.pdf'; $filename = PAABGABE_PATH.$file; - //if ($pdf=@readfile($filename)) - //{ - header('Content-Type: application/octet-stream'); - header('Content-disposition: attachment; filename="'.$file.'"'); - echo readfile($filename); - exit(); //Keine weitere Verarbeitung - //} - //else - //{ - // exit("Datei $filename konnte nicht gelesen werden!"); - //} + + header('Content-Type: application/octet-stream'); + header('Content-disposition: attachment; filename="'.$file.'"'); + echo readfile($filename); + exit(); } - require_once('../../include/basis_db.class.php'); - if (!$db = new basis_db()) - die('Es konnte keine Verbindung zum Server aufgebaut werden.'); - -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()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); $fachbereich_kurzbz=''; $fixtermin=false; @@ -148,17 +140,17 @@ echo ' -Abgabe Assistenz Details - - - - - + Abgabe Assistenz Details + + + + +

Abgabe Assistenzbereich

'; @@ -611,7 +603,7 @@ while ($result_nam && $row_nam=$db->db_fetch_object($result_nam)) $qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".$projektarbeit_id."' ORDER BY datum;"; $htmlstr .= "\n"; -$htmlstr .= ""; +$htmlstr .= ""; $htmlstr .= ""; //$htmlstr .= ""; $htmlstr .= "\n"; @@ -775,72 +767,5 @@ $htmlstr .= "\n"; $htmlstr .= "
Student: ".$studentenname."
Student: ".$studentenname."Studentenansicht
Titel: ".$titel."
Anleitung   
\n"; $htmlstr .= "\n"; - echo $htmlstr; - -function Test($arr=constLeer,$lfd=0,$displayShow=true,$onlyRoot=false ) - -{ - - $tmpArrayString=''; - - if (!is_array($arr) && !is_object($arr)) return $arr; - - if (is_array($arr) && count($arr)<1 && $displayShow) return ''; - - if (is_array($arr) && count($arr)<1 && $displayShow) return "
function Test (???)
"; - - - - $lfdnr=$lfd + 1; - - $tmpAnzeigeStufe=''; - - for ($i=1;$i<$lfdnr;$i++) $tmpAnzeigeStufe.="="; - - $tmpAnzeigeStufe.="=>"; - - while (list( $tmp_key, $tmp_value ) = each($arr) ) - { - - if (!$onlyRoot && (is_array($tmp_value) || is_object($tmp_value)) && count($tmp_value) >0) - - { - $tmpArrayString.="
$tmpAnzeigeStufe $tmp_key".Test($tmp_value,$lfdnr); - - } else if ( (is_array($tmp_value) || is_object($tmp_value)) ) - - { - $tmpArrayString.="
$tmpAnzeigeStufe $tmp_key -- 0 Records"; - - } else if ($tmp_value!='') - - { - - $tmpArrayString.="
$tmpAnzeigeStufe $tmp_key :== ".$tmp_value; - - } else { - - $tmpArrayString.="
$tmpAnzeigeStufe $tmp_key :-- (is Empty :: $tmp_value)"; - - } - - } - - if ($lfd!='') { return $tmpArrayString; } - - if (!$displayShow) { return $tmpArrayString; } - - - - $tmpArrayString.="
"; - - $tmpArrayString="


******* START *******
".$tmpArrayString."
******* ENDE *******


"; - - $tmpArrayString.="
Server:: ".$_SERVER['PHP_SELF']."
"; - - return "$tmpArrayString"; - -} - -//=========================================================================================== +echo $htmlstr; ?> \ No newline at end of file