mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Fehler beim Aktualisieren von Dokumenten im Planner behoben
This commit is contained in:
@@ -24,6 +24,7 @@ var datasourceTreeProjekt;
|
||||
var datasourceTreeProjektphase;
|
||||
var datasourceTreeProjekttask;
|
||||
var datasourceTreeDokument;
|
||||
var datasourceTreeBestellung;
|
||||
var global_filter = '';
|
||||
|
||||
function treeProjektmenueSelect()
|
||||
@@ -192,40 +193,40 @@ function treeProjektmenueSelect()
|
||||
|
||||
|
||||
|
||||
// Bestellung laden
|
||||
// Bestellung laden
|
||||
if(projekt_phase_id=='' && projekt_kurzbz!='')
|
||||
{
|
||||
try
|
||||
{
|
||||
url = "<?php echo APP_ROOT; ?>rdf/bestellung.rdf.php?projektKurzbz="+projekt_kurzbz+"&"+gettimestamp();
|
||||
var treeDokument=document.getElementById('tree-bestellung');
|
||||
var treeBestellung=document.getElementById('tree-bestellung');
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = treeDokument.database.GetDataSources();
|
||||
var oldDatasources = treeBestellung.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
treeDokument.database.RemoveDataSource(oldDatasources.getNext());
|
||||
treeBestellung.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
datasourceTreeDokument.removeXMLSinkObserver(DokumentTreeSinkObserver);
|
||||
treeDokument.builder.removeListener(DokumentTreeListener);
|
||||
datasourceTreeBestellung.removeXMLSinkObserver(BestellungTreeSinkObserver);
|
||||
treeBestellung.builder.removeListener(BestellungTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{}
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
datasourceTreeDokument = rdfService.GetDataSource(url);
|
||||
datasourceTreeDokument.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
datasourceTreeDokument.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
treeDokument.database.AddDataSource(datasourceTreeDokument);
|
||||
datasourceTreeDokument.addXMLSinkObserver(DokumentTreeSinkObserver);
|
||||
treeDokument.builder.addListener(DokumentTreeListener);
|
||||
datasourceTreeBestellung = rdfService.GetDataSource(url);
|
||||
datasourceTreeBestellung.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
|
||||
datasourceTreeBestellung.QueryInterface(Components.interfaces.nsIRDFXMLSink);
|
||||
treeBestellung.database.AddDataSource(datasourceTreeBestellung);
|
||||
datasourceTreeBestellung.addXMLSinkObserver(BestellungTreeSinkObserver);
|
||||
treeBestellung.builder.addListener(BestellungTreeListener);
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
debug("whoops Documents load failed with exception: "+e);
|
||||
debug("whoops bestellung load failed with exception: "+e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ require_once('../../config/vilesci.config.inc.php');
|
||||
?>
|
||||
// *********** Globale Variablen *****************//
|
||||
|
||||
var DokumentSelectID=null; //ID des Dokuments das nach dem Refresh markiert werden soll
|
||||
var BestellungSelectID=null; //ID des Dokuments das nach dem Refresh markiert werden soll
|
||||
// ********** Observer und Listener ************* //
|
||||
|
||||
// ****
|
||||
@@ -32,7 +32,7 @@ var DokumentSelectID=null; //ID des Dokuments das nach dem Refresh markiert werd
|
||||
// * startet Rebuild nachdem das Refresh
|
||||
// * der datasource fertig ist
|
||||
// ****
|
||||
var DokumentTreeSinkObserver =
|
||||
var BestellungTreeSinkObserver =
|
||||
{
|
||||
onBeginLoad : function(pSink) {},
|
||||
onInterrupt : function(pSink) {},
|
||||
@@ -49,7 +49,7 @@ var DokumentTreeSinkObserver =
|
||||
// * Nach dem Rebuild wird das Dokument wieder
|
||||
// * markiert
|
||||
// ****
|
||||
var DokumentTreeListener =
|
||||
var BestellungTreeListener =
|
||||
{
|
||||
willRebuild : function(builder)
|
||||
{
|
||||
@@ -59,7 +59,7 @@ var DokumentTreeListener =
|
||||
//timeout nur bei Mozilla notwendig da sonst die rows
|
||||
//noch keine values haben. Ab Seamonkey funktionierts auch
|
||||
//ohne dem setTimeout
|
||||
window.setTimeout(DokumentTreeSelectDokument,10);
|
||||
window.setTimeout(BestellungTreeSelectBestellung,10);
|
||||
// Progressmeter stoppen
|
||||
//document.getElementById('statusbar-progressmeter').setAttribute('mode','determined');
|
||||
}
|
||||
@@ -68,39 +68,39 @@ var DokumentTreeListener =
|
||||
// ****************** FUNKTIONEN ************************** //
|
||||
|
||||
// ****
|
||||
// * Asynchroner (Nicht blockierender) Refresh des Dokument Trees
|
||||
// * Asynchroner (Nicht blockierender) Refresh des Bestellung Trees
|
||||
// ****
|
||||
function BestellungTreeRefresh()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
|
||||
//markiertes Dokument global speichern damit es nach dem
|
||||
//markierte Bestellung global speichern damit es nach dem
|
||||
//refresh wieder markiert werden kann.
|
||||
var tree = document.getElementById('tree-bestellung');
|
||||
|
||||
try
|
||||
{
|
||||
DokumentSelectID = getTreeCellText(tree, "treecol-bestellung-bestell_nr", tree.currentIndex);
|
||||
BestellungSelectID = getTreeCellText(tree, "treecol-bestellung-bestell_nr", tree.currentIndex);
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
DokumentSelectID=null;
|
||||
BestellungSelectID=null;
|
||||
}
|
||||
|
||||
datasourceTreeDokument.Refresh(false); //non blocking
|
||||
datasourceTreeBestellung.Refresh(false); //non blocking
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Selectiert das Dokument nachdem der Tree
|
||||
// * Selectiert die Bestellung nachdem der Tree
|
||||
// * rebuildet wurde.
|
||||
// ****
|
||||
function DokumentTreeSelectDokument()
|
||||
function BestellungTreeSelectBestellung()
|
||||
{
|
||||
var tree=document.getElementById('tree-bestellung');
|
||||
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
|
||||
|
||||
//In der globalen Variable ist die zu selektierende ID gespeichert
|
||||
if(DokumentSelectID!=null)
|
||||
if(BestellungSelectID!=null)
|
||||
{
|
||||
for(var i=0;i<items;i++)
|
||||
{
|
||||
@@ -108,7 +108,7 @@ function DokumentTreeSelectDokument()
|
||||
id = getTreeCellText(tree, "treecol-bestellung-bestell_nr", i);
|
||||
|
||||
//wenn dies die zu selektierende Zeile
|
||||
if(DokumentSelectID==id)
|
||||
if(BestellungSelectID==id)
|
||||
{
|
||||
//Zeile markieren
|
||||
tree.view.selection.select(i);
|
||||
@@ -118,4 +118,4 @@ function DokumentTreeSelectDokument()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -221,4 +221,4 @@ function ProjektDokumentZuweisen()
|
||||
}
|
||||
|
||||
window.open(url,'Zuteilung', 'height=384,width=512,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user