diff --git a/content/planner.overlay.xul.php b/content/planner.overlay.xul.php
index 555d1c42e..50ab226a7 100755
--- a/content/planner.overlay.xul.php
+++ b/content/planner.overlay.xul.php
@@ -7,6 +7,7 @@ echo '';
/*echo '';
echo '';
echo '';*/
+echo '';
echo '';
?>
@@ -139,18 +140,20 @@ echo '
+
-
-
-
+
+
+
+
-
+
-
+
diff --git a/content/planner.xul.php b/content/planner.xul.php
index 5b6329591..5a5c00673 100755
--- a/content/planner.xul.php
+++ b/content/planner.xul.php
@@ -249,12 +249,10 @@ echo '';
-
-
diff --git a/content/projekt/projektphase.overlay.js.php b/content/projekt/projektphase.overlay.js.php
new file mode 100755
index 000000000..76c51db90
--- /dev/null
+++ b/content/projekt/projektphase.overlay.js.php
@@ -0,0 +1,599 @@
+
+ */
+
+require_once('../../config/vilesci.config.inc.php');
+
+?>
+// *********** Globale Variablen *****************//
+
+var TaskTreeDatasource; //Datasource des Task Tree
+var TaskSelectID=null; //ID des Task Eintrages der nach dem Refresh markiert werden soll
+// ********** Observer und Listener ************* //
+
+// ****
+// * Observer fuer LV Tree
+// * startet Rebuild nachdem das Refresh
+// * der datasource fertig ist
+// ****
+var TaskTreeSinkObserver =
+{
+ onBeginLoad : function(pSink) {},
+ onInterrupt : function(pSink) {},
+ onResume : function(pSink) {},
+ onError : function(pSink, pStatus, pError) { debug('onerror:'+pError); },
+ onEndLoad : function(pSink)
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ document.getElementById('projekttask-tree').builder.rebuild();
+ }
+};
+
+// ****
+// * Nach dem Rebuild wird die Lehreinheit wieder
+// * markiert
+// ****
+var TaskTreeListener =
+{
+ willRebuild : function(builder)
+ {
+ },
+ didRebuild : function(builder)
+ {
+ //timeout nur bei Mozilla notwendig da sonst die rows
+ //noch keine values haben. Ab Seamonkey funktionierts auch
+ //ohne dem setTimeout
+ window.setTimeout(TaskTreeSelectTask,10);
+ // Progressmeter stoppen
+ //document.getElementById('statusbar-progressmeter').setAttribute('mode','determined');
+ }
+};
+
+// ****************** FUNKTIONEN ************************** //
+
+// ****
+// * Asynchroner (Nicht blockierender) Refresh des LV Trees
+// ****
+function TaskTreeRefresh()
+{
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ //markierte Lehreinheit global speichern damit diese LE nach dem
+ //refresh wieder markiert werden kann.
+ var tree = document.getElementById('projekttask-tree');
+
+ try
+ {
+ TaskSelectID = getTreeCellText(tree, "projekttask-treecol-projekttask_id", tree.currentIndex);
+ }
+ catch(e)
+ {
+ TaskSelectID=null;
+ }
+ TaskTreeDatasource.Refresh(false); //non blocking
+}
+
+// ****
+// * neuen Task anlegen
+// ****
+function TaskNeu()
+{
+ // Trick 17 (sonst gibt's ein Permission denied)
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+
+ alert('Neuer Task - noch nicht implementiert');
+ /*
+ var tree = document.getElementById('lehrveranstaltung-tree');
+
+ //Details zuruecksetzen
+ LeDetailReset();
+
+ //Detail Tab als aktiv setzen
+ document.getElementById('lehrveranstaltung-tabbox').selectedIndex=0;
+
+ //Lektor-Tab und GruppenTree ausblenden
+ document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe').hidden=true;
+ document.getElementById('lehrveranstaltung-detail-label-lehreinheitgruppe').hidden=true;
+ document.getElementById('lehrveranstaltung-tab-lektor').collapsed=true;
+
+ //Lehrveranstaltungs_id holen
+ var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
+ var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
+
+ //Lehrform setzen
+ var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrform"] : "lehrveranstaltung-treecol-lehrform";
+ var lehrform_kurzbz=tree.view.getCellText(tree.currentIndex,col);
+
+ //Lehrfach drop down setzen
+
+ //ID in globale Variable speichern
+ LeDetailLehrfach_id='';
+ var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-bezeichnung"] : "lehrveranstaltung-treecol-bezeichnung";
+ LeDetailLehrfach_label=tree.view.getCellText(tree.currentIndex,col);
+
+ lehrfachmenulist = document.getElementById('lehrveranstaltung-detail-menulist-lehrfach');
+ var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
+
+ //Entfernen der alten Datasources
+ var oldDatasources = lehrfachmenulist.database.GetDataSources();
+ while(oldDatasources.hasMoreElements())
+ {
+ lehrfachmenulist.database.RemoveDataSource(oldDatasources.getNext());
+ }
+ //Refresh damit die entfernten DS auch wirklich entfernt werden
+ lehrfachmenulist.builder.rebuild();
+
+ //Url zusammenbauen
+ var url = 'rdf/lehrfach.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+'&'+gettimestamp();
+
+ //RDF holen
+ var newDs = rdfService.GetDataSource(url);
+ lehrfachmenulist.database.AddDataSource(newDs);
+
+ //SinkObserver hinzufuegen
+ var sink = newDs.QueryInterface(Components.interfaces.nsIRDFXMLSink);
+ sink.addXMLSinkObserver(LeDetailLehrfachSinkObserver);
+
+ document.getElementById('lehrveranstaltung-detail-textbox-lehrveranstaltung').value=lehrveranstaltung_id;
+ document.getElementById('lehrveranstaltung-detail-checkbox-new').checked=true;
+ document.getElementById('lehrveranstaltung-detail-textbox-stundenblockung').value='2';
+ document.getElementById('lehrveranstaltung-detail-textbox-wochenrythmus').value='1';
+ if(lehrform_kurzbz=='')
+ lehrform_kurzbz='UE';
+ document.getElementById('lehrveranstaltung-detail-menulist-lehrform').value=lehrform_kurzbz;
+
+ var stsem = getStudiensemester();
+ document.getElementById('lehrveranstaltung-detail-menulist-studiensemester').value=stsem;
+
+ //Defaultwert fuer Anmerkung
+ document.getElementById('lehrveranstaltung-detail-textbox-anmerkung').value='';
+ */
+}
+// ****
+// * Selectiert die Lektorzuordnung nachdem der Tree
+// * rebuildet wurde.
+// ****
+function TaskTreeSelectTask()
+{
+ var tree=document.getElementById('projekttask-tree');
+ var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
+
+ //In der globalen Variable ist die zu selektierende ID gespeichert
+ if(TaskSelectID!=null)
+ {
+ for(var i=0;i
+ */
+
+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('../../config/vilesci.config.inc.php');
+
+echo '';
+
+/*echo '';*/
+?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file