diff --git a/cis/menu.html b/cis/menu.html index ebe9365e2..b20859464 100644 --- a/cis/menu.html +++ b/cis/menu.html @@ -143,6 +143,10 @@  Archiv + + + + diff --git a/content/ToDo_FASo.html b/content/ToDo_FASo.html index dabac46b0..314fbd71f 100644 --- a/content/ToDo_FASo.html +++ b/content/ToDo_FASo.html @@ -23,6 +23,7 @@ Auflistung nach Priorität (höchste oben).
  • Projektarbeit - nach dem ändern der LVA wird das Feld Lehreinheit nicht geleert
  • Beim Filtern nach bezahlter Studiengebühr sollen Incoming nicht aufscheinen da diese keine Studiengebühr zahlen müssen
  • Wunsch: SVNR 4stellig: gesamte Nummer wird dann aus dem Geburtsdatum konstruiert.
  • +
  • Wunsch: statt WS2007 soll WS2007/08 stehen

  • Mitarbeiter-Modul

    diff --git a/content/datepicker/datepicker.css b/content/datepicker/datepicker.css index 9d1036ccc..a5b499b5f 100644 --- a/content/datepicker/datepicker.css +++ b/content/datepicker/datepicker.css @@ -1,6 +1,6 @@ /* ::::: datepicker ::::: */ /* :::: declarations :::: */ -@IMPORT url("../spinbutton/spinbutton.css"); +/*@IMPORT url("../spinbutton/spinbutton.css");*/ datepicker {-moz-binding: url("datepicker.xml#datepicker");} datepicker-month {-moz-binding: url("datepicker.xml#datepicker-month");} datepicker-year {-moz-binding: url("datepicker.xml#datepicker-year");} diff --git a/content/lvplanung/lehrveranstaltungDBDML.php b/content/lvplanung/lehrveranstaltungDBDML.php index 985b8696d..d6faac684 100644 --- a/content/lvplanung/lehrveranstaltungDBDML.php +++ b/content/lvplanung/lehrveranstaltungDBDML.php @@ -586,7 +586,7 @@ if(!$error) else { $return = false; - $errormsg = $leDAO->errormsg; + $errormsg = 'Fehler beim Loeschen der Lehreinheit '.$leDAO->errormsg; } } } diff --git a/content/lvplanung/lehrveranstaltungoverlay.js.php b/content/lvplanung/lehrveranstaltungoverlay.js.php index 3a149b1ce..1f4607ca3 100644 --- a/content/lvplanung/lehrveranstaltungoverlay.js.php +++ b/content/lvplanung/lehrveranstaltungoverlay.js.php @@ -796,7 +796,14 @@ function LeAuswahl() try { lektortree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitmitarbeiter'); - + + try + { + lektortree.builder.removeListener(LvLektorTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = lektortree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -806,13 +813,6 @@ function LeAuswahl() //Refresh damit die entfernten DS auch wirklich entfernt werden lektortree.builder.rebuild(); - try - { - lektortree.builder.removeListener(LvLektorTreeListener); - } - catch(e) - {} - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); LeDetailLektorDatasource = rdfService.GetDataSource(url); LeDetailLektorDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -1256,6 +1256,14 @@ function LehrveranstaltungNotenLoad(lehrveranstaltung_id) url='rdf/zeugnisnote.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+"&"+gettimestamp(); + try + { + LehrveranstaltungNotenTreeDatasource.removeXMLSinkObserver(LehrveranstaltungNotenTreeSinkObserver); + notentree.builder.removeListener(LehrveranstaltungNotenTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = notentree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -1264,15 +1272,6 @@ function LehrveranstaltungNotenLoad(lehrveranstaltung_id) } //Refresh damit die entfernten DS auch wirklich entfernt werden notentree.builder.rebuild(); - - try - { - LehrveranstaltungNotenTreeDatasource.removeXMLSinkObserver(LehrveranstaltungNotenTreeSinkObserver); - notentree.builder.removeListener(LehrveranstaltungNotenTreeListener); - } - catch(e) - {} - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); LehrveranstaltungNotenTreeDatasource = rdfService.GetDataSource(url); LehrveranstaltungNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -1286,15 +1285,6 @@ function LehrveranstaltungNotenLoad(lehrveranstaltung_id) url='rdf/lvgesamtnote.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+"&"+gettimestamp(); - //Alte DS entfernen - var oldDatasources = lvgesamtnotentree.database.GetDataSources(); - while(oldDatasources.hasMoreElements()) - { - lvgesamtnotentree.database.RemoveDataSource(oldDatasources.getNext()); - } - //Refresh damit die entfernten DS auch wirklich entfernt werden - lvgesamtnotentree.builder.rebuild(); - try { LehrveranstaltungLvGesamtNotenTreeDatasource.removeXMLSinkObserver(LehrveranstaltungLvGesamtNotenTreeSinkObserver); @@ -1303,6 +1293,15 @@ function LehrveranstaltungNotenLoad(lehrveranstaltung_id) catch(e) {} + //Alte DS entfernen + var oldDatasources = lvgesamtnotentree.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + lvgesamtnotentree.database.RemoveDataSource(oldDatasources.getNext()); + } + //Refresh damit die entfernten DS auch wirklich entfernt werden + lvgesamtnotentree.builder.rebuild(); + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); LehrveranstaltungLvGesamtNotenTreeDatasource = rdfService.GetDataSource(url); LehrveranstaltungLvGesamtNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); diff --git a/content/mitarbeiter/mitarbeiteroverlay.js.php b/content/mitarbeiter/mitarbeiteroverlay.js.php index f931ce2cb..40e0ae9e8 100644 --- a/content/mitarbeiter/mitarbeiteroverlay.js.php +++ b/content/mitarbeiter/mitarbeiteroverlay.js.php @@ -562,7 +562,15 @@ function MitarbeiterAuswahl() // **** VERWENDUNG **** verwendungtree = document.getElementById('mitarbeiter-tree-verwendung'); url='rdf/bisverwendung.rdf.php?uid='+uid+"&"+gettimestamp(); - + + try + { + MitarbeiterVerwendungTreeDatasource.removeXMLSinkObserver(MitarbeiterVerwendungTreeSinkObserver); + verwendungtree.builder.removeListener(MitarbeiterVerwendungTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = verwendungtree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -571,14 +579,7 @@ function MitarbeiterAuswahl() } //Refresh damit die entfernten DS auch wirklich entfernt werden verwendungtree.builder.rebuild(); - - try - { - MitarbeiterVerwendungTreeDatasource.removeXMLSinkObserver(MitarbeiterVerwendungTreeSinkObserver); - verwendungtree.builder.removeListener(MitarbeiterVerwendungTreeListener); - } - catch(e) - {} + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); MitarbeiterVerwendungTreeDatasource = rdfService.GetDataSource(url); @@ -594,6 +595,14 @@ function MitarbeiterAuswahl() entwicklungsteamtree = document.getElementById('mitarbeiter-tree-entwicklungsteam'); url='rdf/entwicklungsteam.rdf.php?mitarbeiter_uid='+uid+"&"+gettimestamp(); + try + { + MitarbeiterEntwicklungsteamTreeDatasource.removeXMLSinkObserver(MitarbeiterEntwicklungsteamTreeSinkObserver); + entwicklungsteamtree.builder.removeListener(MitarbeiterEntwicklungsteamTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = entwicklungsteamtree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -603,14 +612,6 @@ function MitarbeiterAuswahl() //Refresh damit die entfernten DS auch wirklich entfernt werden entwicklungsteamtree.builder.rebuild(); - try - { - MitarbeiterEntwicklungsteamTreeDatasource.removeXMLSinkObserver(MitarbeiterEntwicklungsteamTreeSinkObserver); - entwicklungsteamtree.builder.removeListener(MitarbeiterEntwicklungsteamTreeListener); - } - catch(e) - {} - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); MitarbeiterEntwicklungsteamTreeDatasource = rdfService.GetDataSource(url); MitarbeiterEntwicklungsteamTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -946,6 +947,14 @@ function MitarbeiterVerwendungSelect() funktiontree = document.getElementById('mitarbeiter-tree-funktion'); url='rdf/bisfunktion.rdf.php?bisverwendung_id='+bisverwendung_id+"&"+gettimestamp(); + try + { + MitarbeiterFunktionTreeDatasource.removeXMLSinkObserver(MitarbeiterFunktionTreeSinkObserver); + funktiontree.builder.removeListener(MitarbeiterFunktionTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = funktiontree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -955,14 +964,6 @@ function MitarbeiterVerwendungSelect() //Refresh damit die entfernten DS auch wirklich entfernt werden funktiontree.builder.rebuild(); - try - { - MitarbeiterFunktionTreeDatasource.removeXMLSinkObserver(MitarbeiterFunktionTreeSinkObserver); - funktiontree.builder.removeListener(MitarbeiterFunktionTreeListener); - } - catch(e) - {} - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); MitarbeiterFunktionTreeDatasource = rdfService.GetDataSource(url); MitarbeiterFunktionTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php index 737cfef47..01b1b53f0 100644 --- a/content/student/studentoverlay.js.php +++ b/content/student/studentoverlay.js.php @@ -45,6 +45,8 @@ var StudentPruefungSelectID=null; //ID der Pruefung die nach dem Refresh markier var StudentDetailRolleTreeDatasource=null; //Datasource fuer denn PrestudentRolleTree var StudentAkteTreeDatasource=null; var doublerebuildkonto='false'; +var StudentNotenTreeloaded=false; +var StudentGesamtNotenTreeloaded=false; // ********** Observer und Listener ************* // // **** @@ -60,7 +62,7 @@ var StudentTreeSinkObserver = }, onInterrupt : function(pSink) {}, onResume : function(pSink) {}, - onError : function(pSink, pStatus, pError) {}, + onError : function(pSink, pStatus, pError) { debug('Error StudentTreeSinkObserver:'+pError+':'+pStatus); }, onEndLoad : function(pSink) { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); @@ -99,7 +101,7 @@ var StudentDetailRolleTreeSinkObserver = onBeginLoad : function(pSink) {}, onInterrupt : function(pSink) {}, onResume : function(pSink) {}, - onError : function(pSink, pStatus, pError) { }, + onError : function(pSink, pStatus, pError) { debug('Error StudentDetailRolleTreeSinkObserver:'+pError+':'+pStatus); }, onEndLoad : function(pSink) { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); @@ -117,7 +119,7 @@ var StudentKontoTreeSinkObserver = onBeginLoad : function(pSink) {}, onInterrupt : function(pSink) {}, onResume : function(pSink) {}, - onError : function(pSink, pStatus, pError) {}, + onError : function(pSink, pStatus, pError) { debug('Error StudentKontoTreeSinkObserver:'+pError+':'+pStatus); }, onEndLoad : function(pSink) { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); @@ -189,6 +191,7 @@ var StudentNotenTreeSinkObserver = onError : function(pSink, pStatus, pError) {}, onEndLoad : function(pSink) { + StudentNotenTreeloaded=false; netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); document.getElementById('student-noten-tree').builder.rebuild(); } @@ -206,6 +209,7 @@ var StudentNotenTreeListener = //timeout nur bei Mozilla notwendig da sonst die rows //noch keine values haben. Ab Seamonkey funktionierts auch //ohne dem setTimeout + StudentNotenTreeloaded=true; window.setTimeout(StudentNotenTreeSelectID,10); } }; @@ -223,6 +227,7 @@ var StudentLvGesamtNotenTreeSinkObserver = onError : function(pSink, pStatus, pError) {}, onEndLoad : function(pSink) { + StudentGesamtNotenTreeloaded=false; netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); document.getElementById('student-lvgesamtnoten-tree').builder.rebuild(); } @@ -240,6 +245,7 @@ var StudentLvGesamtNotenTreeListener = //timeout nur bei Mozilla notwendig da sonst die rows //noch keine values haben. Ab Seamonkey funktionierts auch //ohne dem setTimeout + StudentGesamtNotenTreeloaded=true; window.setTimeout(StudentLvGesamtNotenTreeSelectID,10); } }; @@ -655,7 +661,7 @@ function StudentImageUpload() // **** function StudentAuswahl() { - + if(!StudentTreeLoadDataOnSelect) { StudentTreeLoadDataOnSelect=true; @@ -704,6 +710,9 @@ function StudentAuswahl() } StudentFunktionIFrameUnLoad(); + StudentNotenTreeloaded=false; + StudentGesamtNotenTreeloaded=false; + stsem = getStudiensemester(); var url = 'rdf/student.rdf.php?prestudent_id='+prestudent_id+'&studiensemester_kurzbz='+stsem+'&'+gettimestamp(); @@ -849,6 +858,13 @@ function StudentAuswahl() rollentree = document.getElementById('student-prestudent-tree-rolle'); url='rdf/prestudentrolle.rdf.php?prestudent_id='+prestudent_id+"&"+gettimestamp(); + try + { + StudentDetailRolleTreeDatasource.removeXMLSinkObserver(StudentDetailRolleTreeSinkObserver); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = rollentree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -935,6 +951,14 @@ function StudentAuswahl() doctree = document.getElementById('interessent-dokumente-tree-nichtabgegeben'); url='rdf/dokument.rdf.php?studiengang_kz='+studiengang_kz_prestudent+'&prestudent_id='+prestudent_id+"&"+gettimestamp(); + try + { + InteressentDokumentTreeNichtabgegebenDatasource.removeXMLSinkObserver(InteressentDokumentTreeNichtabgegebenSinkObserver); + doctree.builder.removeListener(InteressentDokumentTreeNichtabgegebenListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = doctree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -943,14 +967,7 @@ function StudentAuswahl() } //Refresh damit die entfernten DS auch wirklich entfernt werden doctree.builder.rebuild(); - - try - { - InteressentDokumentTreeNichtabgegebenDatasource.removeXMLSinkObserver(InteressentDokumentTreeNichtabgegebenSinkObserver); - doctree.builder.removeListener(InteressentDokumentTreeNichtabgegebenListener); - } - catch(e) - {} + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); InteressentDokumentTreeNichtabgegebenDatasource = rdfService.GetDataSource(url); InteressentDokumentTreeNichtabgegebenDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -963,6 +980,14 @@ function StudentAuswahl() doctree = document.getElementById('interessent-dokumente-tree-abgegeben'); url='rdf/dokumentprestudent.rdf.php?prestudent_id='+prestudent_id+"&"+gettimestamp(); + try + { + InteressentDokumentTreeAbgegebenDatasource.removeXMLSinkObserver(InteressentDokumentTreeAbgegebenSinkObserver); + doctree.builder.removeListener(InteressentDokumentTreeAbgegebenListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = doctree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -971,14 +996,7 @@ function StudentAuswahl() } //Refresh damit die entfernten DS auch wirklich entfernt werden doctree.builder.rebuild(); - - try - { - InteressentDokumentTreeAbgegebenDatasource.removeXMLSinkObserver(InteressentDokumentTreeAbgegebenSinkObserver); - doctree.builder.removeListener(InteressentDokumentTreeAbgegebenListener); - } - catch(e) - {} + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); InteressentDokumentTreeAbgegebenDatasource = rdfService.GetDataSource(url); InteressentDokumentTreeAbgegebenDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -992,6 +1010,14 @@ function StudentAuswahl() filter = document.getElementById('student-konto-button-filter').value; url='rdf/konto.rdf.php?person_id='+person_id+"&filter="+filter+"&studiengang_kz="+studiengang_kz_prestudent+"&"+gettimestamp(); + try + { + StudentKontoTreeDatasource.removeXMLSinkObserver(StudentKontoTreeSinkObserver); + kontotree.builder.removeListener(StudentKontoTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = kontotree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -1001,14 +1027,6 @@ function StudentAuswahl() //Refresh damit die entfernten DS auch wirklich entfernt werden kontotree.builder.rebuild(); - try - { - StudentKontoTreeDatasource.removeXMLSinkObserver(StudentKontoTreeSinkObserver); - kontotree.builder.removeListener(StudentKontoTreeListener); - } - catch(e) - {} - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); StudentKontoTreeDatasource = rdfService.GetDataSource(url); StudentKontoTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -1023,6 +1041,13 @@ function StudentAuswahl() zeugnistree = document.getElementById('student-zeugnis-tree'); url='rdf/akte.rdf.php?person_id='+person_id+"&dokument_kurzbz=Zeugnis&"+gettimestamp(); + try + { + StudentAkteTreeDatasource.removeXMLSinkObserver(StudentAkteTreeSinkObserver); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = zeugnistree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -1047,15 +1072,6 @@ function StudentAuswahl() url='rdf/bisio.rdf.php?uid='+uid+"&"+gettimestamp(); - //Alte DS entfernen - var oldDatasources = bisiotree.database.GetDataSources(); - while(oldDatasources.hasMoreElements()) - { - bisiotree.database.RemoveDataSource(oldDatasources.getNext()); - } - //Refresh damit die entfernten DS auch wirklich entfernt werden - bisiotree.builder.rebuild(); - try { StudentIOTreeDatasource.removeXMLSinkObserver(StudentIOTreeSinkObserver); @@ -1063,6 +1079,15 @@ function StudentAuswahl() } catch(e) {} + + //Alte DS entfernen + var oldDatasources = bisiotree.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + bisiotree.database.RemoveDataSource(oldDatasources.getNext()); + } + //Refresh damit die entfernten DS auch wirklich entfernt werden + bisiotree.builder.rebuild(); var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); StudentIOTreeDatasource = rdfService.GetDataSource(url); @@ -1080,6 +1105,14 @@ function StudentAuswahl() url='rdf/zeugnisnote.rdf.php?uid='+uid+"&"+gettimestamp(); + try + { + StudentNotenTreeDatasource.removeXMLSinkObserver(StudentNotenTreeSinkObserver); + notentree.builder.removeListener(StudentNotenTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = notentree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -1088,15 +1121,7 @@ function StudentAuswahl() } //Refresh damit die entfernten DS auch wirklich entfernt werden notentree.builder.rebuild(); - - try - { - StudentNotenTreeDatasource.removeXMLSinkObserver(StudentNotenTreeSinkObserver); - notentree.builder.removeListener(StudentNotenTreeListener); - } - catch(e) - {} - + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); StudentNotenTreeDatasource = rdfService.GetDataSource(url); StudentNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -1110,15 +1135,6 @@ function StudentAuswahl() url='rdf/lvgesamtnote.rdf.php?uid='+uid+"&"+gettimestamp(); - //Alte DS entfernen - var oldDatasources = lvgesamtnotentree.database.GetDataSources(); - while(oldDatasources.hasMoreElements()) - { - lvgesamtnotentree.database.RemoveDataSource(oldDatasources.getNext()); - } - //Refresh damit die entfernten DS auch wirklich entfernt werden - lvgesamtnotentree.builder.rebuild(); - try { StudentLvGesamtNotenTreeDatasource.removeXMLSinkObserver(StudentLvGesamtNotenTreeSinkObserver); @@ -1127,6 +1143,15 @@ function StudentAuswahl() catch(e) {} + //Alte DS entfernen + var oldDatasources = lvgesamtnotentree.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + lvgesamtnotentree.database.RemoveDataSource(oldDatasources.getNext()); + } + //Refresh damit die entfernten DS auch wirklich entfernt werden + lvgesamtnotentree.builder.rebuild(); + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); StudentLvGesamtNotenTreeDatasource = rdfService.GetDataSource(url); StudentLvGesamtNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -1149,6 +1174,14 @@ function StudentAuswahl() url='rdf/pruefung.rdf.php?student_uid='+uid+"&"+gettimestamp(); + try + { + StudentPruefungTreeDatasource.removeXMLSinkObserver(StudentPruefungTreeSinkObserver); + pruefungtree.builder.removeListener(StudentPruefungTreeListener); + } + catch(e) + {} + //Alte DS entfernen var oldDatasources = pruefungtree.database.GetDataSources(); while(oldDatasources.hasMoreElements()) @@ -1157,15 +1190,7 @@ function StudentAuswahl() } //Refresh damit die entfernten DS auch wirklich entfernt werden pruefungtree.builder.rebuild(); - - try - { - StudentPruefungTreeDatasource.removeXMLSinkObserver(StudentPruefungTreeSinkObserver); - pruefungtree.builder.removeListener(StudentPruefungTreeListener); - } - catch(e) - {} - + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); StudentPruefungTreeDatasource = rdfService.GetDataSource(url); StudentPruefungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); @@ -2647,6 +2672,7 @@ function StudentIOTreeSelectID() // **** function StudentNotenTreeSelectID() { + StudentNotenTreeSelectDifferent(); var tree=document.getElementById('student-noten-tree'); if(tree.view) var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln @@ -2677,12 +2703,69 @@ function StudentNotenTreeSelectID() } } +// **** +// * Selectiert die Noten im LVGesamtNoteTree welche nicht gleich denen +// * im ZeugnisNoteTree sind +// **** +function StudentNotenTreeSelectDifferent() +{ + var zeugnistree = document.getElementById("student-noten-tree"); + var lvgesamttree = document.getElementById("student-lvgesamtnoten-tree"); + + if(StudentNotenTreeloaded && StudentGesamtNotenTreeloaded) + { + if(lvgesamttree.view) + var lvgesamtitems = lvgesamttree.view.rowCount; //Anzahl der Zeilen ermitteln + else + return false; + + if(zeugnistree.view) + var zeugnisitems = zeugnistree.view.rowCount; //Anzahl der Zeilen ermitteln + else + return false; + + for(var i=0;iconn, $sql_query))) diff --git a/rdf/mitarbeiter.rdf.php b/rdf/mitarbeiter.rdf.php index cb1707b91..a4e294471 100644 --- a/rdf/mitarbeiter.rdf.php +++ b/rdf/mitarbeiter.rdf.php @@ -152,7 +152,8 @@ if($lehrveranstaltung_id==null && $filter==null) $bb=new benutzerberechtigung($conn); if($bb->getBerechtigungen(get_uid())) { - $stge=$bb->getStgKz(); + $stge=$bb->getStgKz('admin'); + $stge=array_merge($stge, $bb->getStgKz('assistenz')); $ma=$mitarbeiter->getMitarbeiterStg($lektor,$fixangestellt,$stge, 'lkt'); $laststg=-1; foreach ($ma as $mitarbeiter)