From 53b2cce164972aa6f7ce3aef592a984692af3260 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 14 Aug 2007 11:55:10 +0000 Subject: [PATCH] - Filter fuer ausstehende Dokumente - Bugfix fuer IE bei DropDown Menues --- .../interessentdokumenteoverlay.js.php | 56 ++++++++++++++++++ .../interessentdokumenteoverlay.xul.php | 2 + rdf/student.rdf.php | 57 ++++++++++++++----- vilesci/stammdaten/le_wartung.php | 14 ++--- vilesci/stammdaten/lvbgruppenverwaltung.php | 4 +- 5 files changed, 110 insertions(+), 23 deletions(-) diff --git a/content/student/interessentdokumenteoverlay.js.php b/content/student/interessentdokumenteoverlay.js.php index 9b0841a3d..67d3ccad2 100644 --- a/content/student/interessentdokumenteoverlay.js.php +++ b/content/student/interessentdokumenteoverlay.js.php @@ -345,4 +345,60 @@ function InteressentDokumenteNichtAbgegebenTreeSort() col = tree.columns ? tree.columns["interessent-dokumente-tree-nichtabgegeben-dokument_kurzbz"] : "interessent-dokumente-tree-abgegeben-nichtdokument_kurzbz"; InteressentDokumentTreeNichtAbgegebenSelectID = tree.view.getCellText(i,col); window.setTimeout("InteressentDokumentNichtAbgegebenTreeSelect()",10); +} + +function InteressentDokumenteFilter() +{ + netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); + var tree=document.getElementById('tree-verband'); + + //Wenn nichts markiert wurde -> beenden + if(tree.currentIndex==-1) + return; + + // Progressmeter starten. Ab jetzt keine 'return's mehr. + document.getElementById('statusbar-progressmeter').setAttribute('mode','undetermined'); + //globalProgressmeter.StartPM(); + + var col; + col = tree.columns ? tree.columns["stg_kz"] : "stg_kz"; + var stg_kz=tree.view.getCellText(tree.currentIndex,col); + col = tree.columns ? tree.columns["sem"] : "sem"; + var sem=tree.view.getCellText(tree.currentIndex,col); + col = tree.columns ? tree.columns["ver"] : "ver"; + var ver=tree.view.getCellText(tree.currentIndex,col); + col = tree.columns ? tree.columns["grp"] : "grp"; + var grp=tree.view.getCellText(tree.currentIndex,col); + col = tree.columns ? tree.columns["gruppe"] : "gruppe"; + var gruppe=tree.view.getCellText(tree.currentIndex,col); + col = tree.columns ? tree.columns["typ"] : "typ"; + var typ=tree.view.getCellText(tree.currentIndex,col); + col = tree.columns ? tree.columns["stsem"] : "stsem"; + var stsem=tree.view.getCellText(tree.currentIndex,col); + + stsem = getStudiensemester(); + url = "rdf/student.rdf.php?studiengang_kz="+stg_kz+"&semester="+sem+"&verband="+ver+"&gruppe="+grp+"&gruppe_kurzbz="+gruppe+"&studiensemester_kurzbz="+stsem+"&typ=student&filter2=dokumente&"+gettimestamp(); + var treeStudent=document.getElementById('student-tree'); + + //Alte DS entfernen + var oldDatasources = treeStudent.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + treeStudent.database.RemoveDataSource(oldDatasources.getNext()); + } + + try + { + StudentTreeDatasource.removeXMLSinkObserver(StudentTreeSinkObserver); + treeStudent.builder.removeListener(StudentTreeListener); + } + catch(e) + {} + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + StudentTreeDatasource = rdfService.GetDataSource(url); + StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); + StudentTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink); + treeStudent.database.AddDataSource(StudentTreeDatasource); + StudentTreeDatasource.addXMLSinkObserver(StudentTreeSinkObserver); + treeStudent.builder.addListener(StudentTreeListener); } \ No newline at end of file diff --git a/content/student/interessentdokumenteoverlay.xul.php b/content/student/interessentdokumenteoverlay.xul.php index c4f33ed08..75d95c0ff 100644 --- a/content/student/interessentdokumenteoverlay.xul.php +++ b/content/student/interessentdokumenteoverlay.xul.php @@ -74,6 +74,8 @@ echo ''; + +