From 94ad9d5dd7e7a8fe787fc61a8a1cb8dec679668e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Fri, 11 May 2007 13:58:50 +0000 Subject: [PATCH] =?UTF-8?q?-=20Zeugnis=20anzeigen=20und=20l=C3=B6schen=20h?= =?UTF-8?q?inzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/akte.php | 52 +++ content/student/studentDBDML.php | 23 ++ content/student/studentenoverlay.xul.php | 6 + content/student/studentkontooverlay.xul.php | 41 +++ content/student/studentoverlay.js.php | 95 ++++++ content/student/studentzeugnisoverlay.xul.php | 100 ++++++ include/akte.class.php | 295 ++++++++++++++++++ rdf/akte.rdf.php | 93 ++++++ 8 files changed, 705 insertions(+) create mode 100644 content/akte.php create mode 100644 content/student/studentkontooverlay.xul.php create mode 100644 content/student/studentzeugnisoverlay.xul.php create mode 100644 include/akte.class.php create mode 100644 rdf/akte.rdf.php diff --git a/content/akte.php b/content/akte.php new file mode 100644 index 000000000..a7002498c --- /dev/null +++ b/content/akte.php @@ -0,0 +1,52 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ +// Holt den Hexcode eines Aktes aus der DB wandelt es in Zeichen +// um und gibt das Dokument zurueck. +require_once('../vilesci/config.inc.php'); +require_once('../include/akte.class.php'); + +//Hexcode in String umwandeln +function hexstr($hex) +{ + $string=""; + for ($i=0;$imimetype"); + echo hexstr($akte->inhalt); +} +else + echo 'Unkown type'; + +?> \ No newline at end of file diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php index 8c9617d65..b195e492f 100644 --- a/content/student/studentDBDML.php +++ b/content/student/studentDBDML.php @@ -39,6 +39,7 @@ require_once('../../include/benutzer.class.php'); require_once('../../include/student.class.php'); require_once('../../include/prestudent.class.php'); require_once('../../include/studiengang.class.php'); +require_once('../../include/akte.class.php'); $user = get_uid(); @@ -633,6 +634,28 @@ if(!$error) $errormsg = 'Fehlerhafte Parameteruebergabe'; } } + elseif(isset($_POST['type']) && $_POST['type']=='deleteAkte') + { + if(isset($_POST['akte_id']) && is_numeric($_POST['akte_id'])) + { + $akte = new akte($conn); + + if($akte->delete($_POST['akte_id'])) + { + $return = true; + } + else + { + $return = false; + $errormsg = $akte->errormsg; + } + } + else + { + $return = false; + $errormsg = 'Fehlerhafte Parameteruebergabe'.$_POST['akte_id']; + } + } else { $return = false; diff --git a/content/student/studentenoverlay.xul.php b/content/student/studentenoverlay.xul.php index 39a09d332..674ff0d71 100644 --- a/content/student/studentenoverlay.xul.php +++ b/content/student/studentenoverlay.xul.php @@ -30,6 +30,8 @@ require_once('../../vilesci/config.inc.php'); echo ''; echo ''; +echo ''; +echo ''; ?> @@ -170,10 +172,14 @@ echo ' + + + + diff --git a/content/student/studentkontooverlay.xul.php b/content/student/studentkontooverlay.xul.php new file mode 100644 index 000000000..9f0fa772c --- /dev/null +++ b/content/student/studentkontooverlay.xul.php @@ -0,0 +1,41 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +header("Cache-Control: no-cache"); +header("Cache-Control: post-check=0, pre-check=0",false); +header("Expires Mon, 26 Jul 1997 05:00:00 GMT"); +header("Pragma: no-cache"); +header("Content-type: application/vnd.mozilla.xul+xml"); +require_once('../../vilesci/config.inc.php'); +echo ''; + +?> + + + + + + + \ No newline at end of file diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php index 476023964..e56b5166b 100644 --- a/content/student/studentoverlay.js.php +++ b/content/student/studentoverlay.js.php @@ -636,6 +636,23 @@ function StudentAuswahl() var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); var datasource = rdfService.GetDataSource(url); rollentree.database.AddDataSource(datasource); + + //Zeugnis + zeugnistree = document.getElementById('student-zeugnis-tree'); + url='rdf/akte.rdf.php?person_id='+person_id+"&dokument_kurzbz=Zeugnis&"+gettimestamp(); + + //Alte DS entfernen + var oldDatasources = zeugnistree.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + zeugnistree.database.RemoveDataSource(oldDatasources.getNext()); + } + //Refresh damit die entfernten DS auch wirklich entfernt werden + zeugnistree.builder.rebuild(); + + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + var datasource = rdfService.GetDataSource(url); + zeugnistree.database.AddDataSource(datasource); } // **** @@ -745,6 +762,9 @@ function StudentPrestudentSave() } } +// **** +// * Anmeldungsdatum fuer den RT wird auf das Aktuelle Datum gesetzt +// **** function StudentAnmeldungreihungstestHeute() { var now = new Date(); @@ -756,4 +776,79 @@ function StudentAnmeldungreihungstestHeute() if(tag<10) tag='0'+tag; document.getElementById('student-prestudent-textbox-anmeldungreihungstest').value=jahr+'-'+monat+'-'+tag; +} + +// **** +// * Laedt ein Zeugnis dass in der DB gespeichert ist +// **** +function StudentZeugnisAnzeigen() +{ + var tree = document.getElementById('student-zeugnis-tree'); + + if (tree.currentIndex==-1) return; + + try + { + //Ausgewaehlte ID holen + var col = tree.columns ? tree.columns["student-zeugnis-tree-akte_id"] : "student-zeugnis-tree-akte_id"; + var akte_id=tree.view.getCellText(tree.currentIndex,col); + if(akte_id!='') + { + window.open('content/akte.php?id='+akte_id,'File'); + //document.location.href='content/akte.php?id='+akte_id; + } + else + { + return false; + } + } + catch(e) + { + alert(e); + return false; + } +} + +// **** +// * Loescht ein Zeugnis +// **** +function StudentAkteDel() +{ + + netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); + var tree = document.getElementById('student-zeugnis-tree'); + + if (tree.currentIndex==-1) + return; + + try + { + //Ausgewaehlte Akte holen + var col = tree.columns ? tree.columns["student-zeugnis-tree-akte_id"] : "student-zeugnis-tree-akte_id"; + var akte_id=tree.view.getCellText(tree.currentIndex,col); + } + catch(e) + { + alert(e); + return false; + } + + //Abfrage ob wirklich geloescht werden soll + if (confirm('Zeugnis wirklich entfernen?')) + { + //Script zum loeschen aufrufen + var req = new phpRequest('student/studentDBDML.php','',''); + + req.add('type','deleteAkte'); + req.add('akte_id',akte_id); + + var response = req.executePOST(); + + var val = new ParseReturnValue(response) + + if(!val.dbdml_return) + alert(val.dbdml_errormsg) + + StudentTreeRefresh(); + } } \ No newline at end of file diff --git a/content/student/studentzeugnisoverlay.xul.php b/content/student/studentzeugnisoverlay.xul.php new file mode 100644 index 000000000..eeaae14ba --- /dev/null +++ b/content/student/studentzeugnisoverlay.xul.php @@ -0,0 +1,100 @@ +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ + +header("Cache-Control: no-cache"); +header("Cache-Control: post-check=0, pre-check=0",false); +header("Expires Mon, 26 Jul 1997 05:00:00 GMT"); +header("Pragma: no-cache"); +header("Content-type: application/vnd.mozilla.xul+xml"); +require_once('../../vilesci/config.inc.php'); +echo ''; + +?> + + + + + + + + + + + + + + + + + + + + + +