From 01d7929e8626ef7e62f36c906f5ffd608f65126c Mon Sep 17 00:00:00 2001 From: Nikolaus Krondraf Date: Tue, 2 Dec 2014 08:04:58 +0000 Subject: [PATCH] =?UTF-8?q?Konto=20Dropdown-Men=C3=BC=20aktualisiert=20sic?= =?UTF-8?q?h=20automatisch=20bei=20Neuanlage=20einer=20Buchung=20oder=20ei?= =?UTF-8?q?nes=20Kontos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/mitarbeiter/mitarbeiterbuchung.js.php | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/content/mitarbeiter/mitarbeiterbuchung.js.php b/content/mitarbeiter/mitarbeiterbuchung.js.php index 5633023a6..623f9cdd0 100644 --- a/content/mitarbeiter/mitarbeiterbuchung.js.php +++ b/content/mitarbeiter/mitarbeiterbuchung.js.php @@ -233,6 +233,7 @@ function MitarbeiterBuchungDetailDisableFields(val) document.getElementById('mitarbeiter-buchung-menulist-konto').disabled=val; document.getElementById('mitarbeiter-buchung-menulist-kostenstelle').disabled=val; document.getElementById('mitarbeiter-buchung-button-speichern').disabled=val; + document.getElementById('mitarbeiter-buchung-button-konto').disabled=val; } // **** @@ -337,6 +338,7 @@ function MitarbeiterBuchungNeu() { MitarbeiterBuchungDetailDisableFields(false); MitarbeiterBuchungDetailReset(); + MitarbeiterBuchungKontoRefresh(); } // **** @@ -404,5 +406,33 @@ function MitarbeiterBuchungKontoAnlegen() else { SetStatusBarText('Daten wurden gespeichert'); + MitarbeiterBuchungKontoRefresh(); } } + +// **** +// * Aktualisiert die Konto Dropdown-Liste +// **** +function MitarbeiterBuchungKontoRefresh() +{ + netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); + var menulistkonto = document.getElementById('mitarbeiter-buchung-menulist-konto'); + url='rdf/wawi_konto.rdf.php?person_id='+person_id+"&"+gettimestamp(); + + //alle Eintraege entfernen + menulistkonto.removeAllItems(); + + //Alte DS entfernen + var oldDatasources = menulistkonto.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + menulistkonto.database.RemoveDataSource(oldDatasources.getNext()); + } + //Refresh damit die entfernten DS auch wirklich entfernt werden + menulistkonto.builder.rebuild(); + + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + var myDatasource = rdfService.GetDataSourceBlocking(url); + menulistkonto.database.AddDataSource(myDatasource); + menulistkonto.builder.rebuild(); +}