diff --git a/content/planner.js.php b/content/planner.js.php
index 9fffe57d0..99fca178a 100755
--- a/content/planner.js.php
+++ b/content/planner.js.php
@@ -20,13 +20,6 @@
*/
require_once('../config/vilesci.config.inc.php');
?>
-var menuUndoDatasource=0;
-var STPLlastDetailUrl='leer';
-
-//Speichert die Position der Scrollbalken in der Wochenuebersicht
-TimeTableWeekPositionX=0;
-TimeTableWeekPositionY=0;
-
// ----------------------------------------------------------
// ------- CLASS Progressmeter ------------------------------
function Progressmeter(progress_id)
@@ -77,10 +70,6 @@ function onLoad()
{
try
{
- initLektorTree();
- //Studenten Tab beim starten markieren
- //document.getElementById('main-content-tabs').selectedItem=document.getElementById('tab-studenten');
-
//Funktion ueberschreiben damit sie nicht nochmal aufgerufen wird
//wenn zb ein IFrame geladen wird
onLoad=function() {return false};
@@ -103,394 +92,4 @@ function loadURL(event)
var url = event.target.getAttribute('value');
if (url) contentFrame.setAttribute('src', url);
-}
-
-// ****
-// * Aendert die Stundenplantabelle
-// ****
-function stpltableChange(db_stpl_table)
-{
- variableChange('db_stpl_table', null, db_stpl_table);
- return true;
-}
-
-// ****
-// * Wechselt von Studiensemester 'stsem' um 'wert' Studiensemester vor bzw zurueck
-// ****
-function studiensemesterChange(stsem, wert)
-{
- if(typeof(wert)=='undefined')
- {
- wert=0;
- if(typeof(stsem)=='undefined')
- {
- var items = document.getElementsByTagName('menuitem');
-
- for(i in items)
- {
- if(items[i].id=='menu-properies-studiensemester-name' && items[i].getAttribute("checked")=='true')
- stsem = items[i].label;
- }
- }
- }
- else
- stsem = getStudiensemester();
-
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
-
- // Request absetzen
-
- var url = 'content/fasDBDML.php';
-
- var req = new phpRequest(url,'','');
-
- req.add('type', 'variablechange');
- req.add('stsem', stsem);
- req.add('wert', wert);
-
- var response = req.executePOST();
-
- var val = new ParseReturnValue(response)
-
- if (!val.dbdml_return)
- {
- if(val.dbdml_errormsg=='')
- alert(response)
- else
- alert(val.dbdml_errormsg)
- }
- else
- {
- //Statusbar setzen
- document.getElementById("statusbarpanel-text").label = "Studiensemester erfolgreich geaendert";
- document.getElementById("statusbarpanel-semester").label = val.dbdml_data;
- //Menue setzen
- var items = document.getElementsByTagName('menuitem');
-
- for(i in items)
- {
- if(items[i].label==val.dbdml_data && items[i].id=='menu-properies-studiensemester-name')
- {
- items[i].setAttribute('checked',true);
- break;
- }
- }
- //MitarbeiterDetailStudiensemester_id = dbdml_errormsg;
- //Ansichten Refreshen
- try
- {
- StudentTreeRefresh();
- }
- catch(e)
- {}
-
- try
- {
- LvTreeRefresh();
- }
- catch(e)
- {}
- }
-
- return true;
-}
-
-// ****
-// * Oeffnet ein Fenster zum Aendern eines Variablenwertes
-// ****
-function variableChangeValue(variable)
-{
- var variablevalue = getvariable(variable);
-
- if(variablevalue = prompt('Bitte geben Sie den neuen Wert fuer '+variable+' ein', variablevalue))
- {
- variableChange(variable, '', variablevalue);
- }
-}
-
-// ****
-// * Aendert den Wert der Variable IgnoreKollision
-// ****
-function toggleIgnoreKollision()
-{
- if(getvariable('ignore_kollision')=='true')
- variableChange('ignore_kollision','menu-prefs-ignore_kollision', 'false');
- else
- variableChange('ignore_kollision','menu-prefs-ignore_kollision', 'true');
-}
-
-// ****
-// * Sendet einen Request zum Aendern einer Variable
-// ****
-function variableChange(variable, id, wert)
-{
- item = document.getElementById(id);
-
- if(typeof(wert)==='undefined')
- {
- if(item.getAttribute('checked')=='true')
- checked='true';
- else
- checked='false';
- }
- else
- checked=wert;
-
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
-
- // Request absetzen
-
- var url = 'content/fasDBDML.php';
-
- var req = new phpRequest(url,'','');
-
- req.add('type', 'variablechange');
- req.add('name', variable);
- req.add('wert', checked);
-
- var response = req.executePOST();
-
- var val = new ParseReturnValue(response)
-
- if (!val.dbdml_return)
- {
- if(val.dbdml_errormsg=='')
- alert(response)
- else
- alert(val.dbdml_errormsg)
- }
- else
- {
- if(variable=='ignore_kollision')
- updateignorekollision();
- if(variable=='db_stpl_table')
- {
- document.getElementById("statusbarpanel-db_table").label = wert;
- updatedbstpltable();
- }
- //Statusbar setzen
- document.getElementById("statusbarpanel-text").label = "Variable erfolgreich geaendert";
- }
-}
-
-// ****
-// * Aktualisiert die IngnoreKollision Anzeige
-// * sowohl in der Toolbar als auch im Menue
-// ****
-function updateignorekollision()
-{
- var panel = document.getElementById('statusbarpanel-ignore_kollision');
- if(getvariable('ignore_kollision')=='true')
- {
- panel.label='Kollisionscheck AUS';
- panel.style.backgroundColor='red';
- document.getElementById('menu-prefs-ignore_kollision').setAttribute('checked','true');
- }
- else
- {
- panel.label='Kollisionscheck AN';
- panel.style.backgroundColor='';
- document.getElementById('menu-prefs-ignore_kollision').setAttribute('checked','false');
- }
-}
-
-// ****
-// * Markiert den Eintrag in der Statusleiste rot wenn auf die
-// * echte stpl tabelle zugegriffen wird
-// ****
-function updatedbstpltable()
-{
- var panel = document.getElementById('statusbarpanel-db_table');
-
- if(panel.label=='stundenplan')
- {
- panel.style.backgroundColor='red';
- }
- else
- {
- panel.style.backgroundColor='transparent';
- }
-}
-
-// ****
-// * Laedt den Wert einer Variable aus der DB
-// ****
-function getvariable(variable)
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
-
- // Request absetzen
-
- var url = 'content/fasDBDML.php';
-
- var req = new phpRequest(url,'','');
-
- req.add('type', 'getvariable');
- req.add('name', variable);
-
- var response = req.executePOST();
-
- var val = new ParseReturnValue(response)
-
- if (!val.dbdml_return)
- {
- if(val.dbdml_errormsg=='')
- alert(response)
- else
- alert(val.dbdml_errormsg)
- return false;
- }
- else
- {
- return val.dbdml_data;
- }
-}
-
-// ****
-// * Liefert das eingestellte Studiensemester
-// ****
-function getStudiensemesterVariable()
-{
- if(stsem = getvariable('semester_aktuell'))
- {
- //Statusbar setzen
- document.getElementById("statusbarpanel-text").label = "Studiensemester erfolgreich geaendert";
- document.getElementById("statusbarpanel-semester").label = stsem;
- //Menue setzen
- var items = document.getElementsByTagName('menuitem');
-
- for(i in items)
- {
- if(items[i].label==stsem && items[i].id=='menu-properies-studiensemester-name')
- {
- items[i].setAttribute('checked',true);
- break;
- }
- }
-
- //Ansichten Refreshen
- try
- {
- StudentTreeRefresh();
- }
- catch(e)
- {}
-
- try
- {
- LvTreeRefresh();
- }
- catch(e)
- {}
- }
-}
-
-// ****
-// * Laedt das Undo Menue Neu
-// ****
-function loadUndoList()
-{
- menu = document.getElementById('menu-edit-undo');
-
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if(menuUndoDatasource==0)
- {
- //Wenn noch keine Datasource angegeben ist, dann wird eine neue hinzugefuegt
- var url = 'rdf/undo.rdf.php?'+gettimestamp();
-
- //Alte DS entfernen
- var oldDatasources = menu.database.GetDataSources();
- while(oldDatasources.hasMoreElements())
- {
- menu.database.RemoveDataSource(oldDatasources.getNext());
- }
-
- var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
- menuUndoDatasource = rdfService.GetDataSource(url);
- menuUndoDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
- menu.database.AddDataSource(menuUndoDatasource);
- }
- else
- {
- //Wenn die Datasource bereits geladen wurde dann nur neu laden
- menuUndoDatasource.Refresh(true); //blocking
- menu.builder.rebuild();
- }
-
- return true;
-}
-
-// ****
-// * Fuehrt den Undo Befehl aus
-// ****
-function UnDo(log_id, bezeichnung)
-{
- if(confirm('Wollen Sie folgenden Befehl wirklich Rueckgaengig machen: '+bezeichnung))
- {
- //Request absetzen
- var req = new phpRequest('tempusDBDML.php','','');
-
- req.add('type','undo');
- req.add('log_id',log_id);
-
- var response = req.executePOST();
- var val = new ParseReturnValue(response)
-
- if (!val.dbdml_return)
- {
- alert(val.dbdml_errormsg)
- }
- else
- {
- LvTreeRefresh();
- onJumpDate(0);
- }
- }
-}
-
-// ****
-// * Oeffnet die ToDoListe fuers Tempus
-// ****
-function HelpOpenToDo()
-{
- window.open('ToDo_Tempus.html','ToDo');
-}
-
-// ****
-// * Zeigt das Fenster zur Kollisionspruefung auf Studentenebene an
-// ****
-function KollisionStudentShow()
-{
- window.open('vilesci/lehre/stpl_benutzer_kollision_frameset.html', 'Kollision Student');
-}
-// ****
-// * Zeigt das Fenster zur LVPlanWartung
-// ****
-function LVPlanWartungShow()
-{
- window.open('vilesci/lehre/lvplanwartung.php', 'LVPLanWartung');
-}
-
-// ****
-// * Zeigt das Fenster zur Kollisionspruefung mit Reservierungen
-// ****
-function ResCheckShow()
-{
- window.open('vilesci/lehre/check/res_check.php', 'KollisionReservierung');
-}
-
-// ****
-// * Oeffnet das Handbuch
-// ****
-function OpenManualTempus()
-{
- window.open('content/Tempus.pdf','Manual');
-}
-
-// ****
-// * Oeffnet den About Dialog
-// ****
-function OpenAboutDialog()
-{
- window.open('content/about.xul.php','About','height=520,width=500,left=350,top=350,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
-}
+}
\ No newline at end of file
diff --git a/content/planner.overlay.js.php b/content/planner.overlay.js.php
index 2ad75183a..76b26c14d 100755
--- a/content/planner.overlay.js.php
+++ b/content/planner.overlay.js.php
@@ -22,19 +22,7 @@
include('../config/vilesci.config.inc.php');
?>
-var currentAuswahl=new auswahlValues();
-var LvTreeDatasource;
-var StudentTreeDatasource;
-
-function auswahlValues()
-{
- this.stg_kz=null;
- this.sem=null;
- this.ver=null;
- this.grp=null;
- this.gruppe=null;
- this.lektor_uid=null;
-}
+var TaskTreeDatasource;
function onProjektSelect()
{
@@ -42,285 +30,67 @@ function onProjektSelect()
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//var contentFrame=document.getElementById('iframeTimeTableWeek');
var tree=document.getElementById('tree-projekt');
- // Kommentar bitte!
- if(tree.currentIndex==-1)
+
+ // Wenn auf die Ueberschrift geklickt wird, soll nix passieren
+ if(tree.currentIndex==-1)
return;
- var col=tree.columns ? tree.columns["tree-projekt-bezeichnung"] : "tree-projekt-bezeichnung";
- var bezeichnung=tree.view.getCellText(tree.currentIndex,col);
- col=tree.columns ? tree.columns["tree-projekt-oe"] : "tree-projekt-oe";
- var oe=tree.view.getCellText(tree.currentIndex,col);
- col=tree.columns ? tree.columns["tree-projekt-projekt_kurzbz"] : "tree-projekt-projekt_kurzbz";
- var projekt_kurzbz=tree.view.getCellText(tree.currentIndex,col);
- col=tree.columns ? tree.columns["tree-projekt-projekt_phase"] : "tree-projekt-projekt_phase";
- var projekt_phase=tree.view.getCellText(tree.currentIndex,col);
- col=tree.columns ? tree.columns["tree-projekt-projekt_phase_id"] : "tree-projekt-projekt_phase_id";
- var projekt_phase_id=tree.view.getCellText(tree.currentIndex,col);
- alert(projekt_phase_id);
- 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);
+
+ var bezeichnung = getTreeCellText(tree, "tree-projekt-bezeichnung", tree.currentIndex);
+ var oe=getTreeCellText(tree, "tree-projekt-oe", tree.currentIndex);
+ var projekt_kurzbz=getTreeCellText(tree, "tree-projekt-projekt_kurzbz", tree.currentIndex);
+ var projekt_phase=getTreeCellText(tree, "tree-projekt-projekt_phase", tree.currentIndex);
+ var projekt_phase_id=getTreeCellText(tree, "tree-projekt-projekt_phase_id", tree.currentIndex);
+
+ //alert("Projekt Phase ID "+projekt_phase_id);
- var daten=window.TimeTableWeek.document.getElementById('TimeTableWeekData');
- var datum=parseInt(daten.getAttribute("datum"));
- var attributes="&stg_kz="+stg_kz+"&sem="+sem+"&ver="+ver+"&grp="+grp+"&gruppe="+gruppe;
- var url = "content/lvplanung/timetable-week.xul.php";
- if (gruppe!=null && gruppe!=0 &gruppe!='')
- var type="?type=gruppe";
- else
- var type="?type=verband";
- url+=type+attributes+"&datum="+datum;
- if (url)
+ if(projekt_phase_id!='')
{
- //alert(url);
- contentFrame.setAttribute('src', url);
- }
-
- currentAuswahl.stg_kz=stg_kz;
- currentAuswahl.sem=sem;
- currentAuswahl.ver=ver;
- currentAuswahl.grp=grp;
- currentAuswahl.gruppe=gruppe;
-
- // Semesterplan
- var semesterplan=document.getElementById('tabpanels-main');
- var panelIndex=semesterplan.getAttribute("selectedIndex");
- if (panelIndex==1)
- {
- //alert (url);
- var contentFrame=document.getElementById('iframeTimeTableSemester');
- var url = "content/lvplanung/timetable-week.xul.php";
- if (gruppe!=null && gruppe!=0 &gruppe!='')
- var type="?type=gruppe";
- else
- var type="?type=verband";
- url+=type+attributes+"&semesterplan=true&"+gettimestamp();
- if (url)
- contentFrame.setAttribute('src', url);
- }
-
- var order = LehrstundeGetSortOrder();
- // LVAs
- var vboxLehrveranstalungPlanung=document.getElementById('vboxLehrveranstalungPlanung');
- var attribute='../rdf/lehreinheit-lvplan.rdf.php'+type+"&stg_kz="+stg_kz+"&sem="+sem+"&ver="+ver+"&grp="+grp+"&gruppe="+gruppe+"&order="+order;
-
- vboxLehrveranstalungPlanung.setAttribute('datasources',attribute);
-
- // -------------- Studenten --------------------------
- try
- {
- 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&"+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);
+ url = "rdf/projekttask.rdf.php?projektphase_id="+projekt_phase_id+"&"+gettimestamp();
+
+ var treeTask=document.getElementById('projekttask-tree');
+
+ //Alte DS entfernen
+ var oldDatasources = treeTask.database.GetDataSources();
+ while(oldDatasources.hasMoreElements())
+ {
+ treeTask.database.RemoveDataSource(oldDatasources.getNext());
+ }
+
+ try
+ {
+ TaskTreeDatasource.removeXMLSinkObserver(TaskTreeSinkObserver);
+ treeTask.builder.removeListener(TaskTreeListener);
+ }
+ catch(e)
+ {}
+ var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
+ TaskTreeDatasource = rdfService.GetDataSource(url);
+ TaskTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
+ TaskTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
+ treeTask.database.AddDataSource(TaskTreeDatasource);
+ TaskTreeDatasource.addXMLSinkObserver(TaskTreeSinkObserver);
+ treeTask.builder.addListener(TaskTreeListener);
}
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);
-
- //Detailfelder Deaktivieren
- StudentDetailReset();
- StudentDetailDisableFields(true);
- StudentPrestudentDisableFields(true);
- StudentKontoDisableFields(true);
- StudentAkteDisableFields(true);
- StudentIODisableFields(true);
- StudentNoteDisableFields(true);
- document.getElementById('student-kontakt').setAttribute('src','');
- document.getElementById('student-betriebsmittel').setAttribute('src','');
- StudentAbschlusspruefungDisableFields(true);
- }
- catch(e){}
-
-
- // Lehrveranstaltung
- try
- {
- url = 'rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&sem='+sem+'&ver='+ver+'&grp='+grp+'&gruppe='+gruppe+'&'+gettimestamp();
- var treeLV=document.getElementById('lehrveranstaltung-tree');
-
- //Alte DS entfernen
- var oldDatasources = treeLV.database.GetDataSources();
- while(oldDatasources.hasMoreElements())
{
- treeLV.database.RemoveDataSource(oldDatasources.getNext());
+ debug("whoops Projekttask load failed with exception: "+e);
}
-
- var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
- LvTreeDatasource = rdfService.GetDataSource(url);
- LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
- LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
- treeLV.database.AddDataSource(LvTreeDatasource);
- LvTreeDatasource.addXMLSinkObserver(LvTreeSinkObserver);
- treeLV.builder.addListener(LvTreeListener);
- }
- catch(e)
- {
- debug(e);
- }
-}
-
-function onOrtSelect()
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- var contentFrame=document.getElementById('iframeTimeTableWeek');
- var treeOrt=document.getElementById('tree-ort');
- var col=treeOrt.columns ? treeOrt.columns["ort_kurzbz"] : "ort_kurzbz";
- var ort=treeOrt.view.getCellText(treeOrt.currentIndex,col);
- var daten=window.TimeTableWeek.document.getElementById('TimeTableWeekData');
- var datum=parseInt(daten.getAttribute("datum"));
-
- if(ort=='')
- return false;
-
- var attributes="?type=ort&ort="+ort+"&datum="+datum;
- var url = "content/lvplanung/timetable-week.xul.php";
- url+=attributes+'&'+gettimestamp();
- if (url)
- contentFrame.setAttribute('src', url);
-
- // Semesterplan
- var semesterplan=document.getElementById('tabpanels-main');
- var panelIndex=semesterplan.getAttribute("selectedIndex");
- if (panelIndex==1)
- {
- //alert (url);
- var contentFrame=document.getElementById('iframeTimeTableSemester');
- var url = "content/lvplanung/timetable-week.xul.php";
- url+=attributes+"&semesterplan=true&"+gettimestamp();
- if (url)
- contentFrame.setAttribute('src', url);
- }
-}
-
-function onLektorSelect(event)
-{
- document.getElementById('tempus-lva-filter').value='';
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- var contentFrame=document.getElementById('iframeTimeTableWeek');
- var treeLektor=document.getElementById('tree-lektor');
- var col=treeLektor.columns ? treeLektor.columns["uid"] : "uid";
- //debug(col+'-'+treeLektor.currentIndex);
- try
- {
- var uid=treeLektor.view.getCellText(treeLektor.currentIndex,col);
- }
- catch(e)
- {
- }
- if(uid=='')
- return;
- //var treeVerband=document.getElementById('tree-verband');
- //var stg_kz=treeVerband.view.getCellText(treeVerband.currentIndex,"stg_kz");
- var daten=window.TimeTableWeek.document.getElementById('TimeTableWeekData');
- var datum=parseInt(daten.getAttribute("datum"));
-
- var attributes="?type=lektor&pers_uid="+uid+"&datum="+datum;
- var url = "content/lvplanung/timetable-week.xul.php";
- url+=attributes+'&'+gettimestamp();
- if (url)
- contentFrame.setAttribute('src', url);
-
- // Semesterplan
- var semesterplan=document.getElementById('tabpanels-main');
- var panelIndex=semesterplan.getAttribute("selectedIndex");
- if (panelIndex==1)
- {
- //alert (url);
- var contentFrame=document.getElementById('iframeTimeTableSemester');
- var url = "content/lvplanung/timetable-week.xul.php";
- url+=attributes+"&semesterplan=true&"+gettimestamp();
- if (url)
- contentFrame.setAttribute('src', url);
}
- var order = LehrstundeGetSortOrder();
- // LVAs
- var vboxLehrveranstalungPlanung=document.getElementById('vboxLehrveranstalungPlanung');
- vboxLehrveranstalungPlanung.setAttribute('datasources','../rdf/lehreinheit-lvplan.rdf.php?'+"type=lektor&lektor="+uid+"&order="+order+"&"+gettimestamp());
-
- var tree=document.getElementById('tree-lektor');
- //Wenn nichts markiert wurde -> beenden
- if(tree.currentIndex==-1)
- return;
-
- var row = { };
- var col = { };
- var child = { };
-
- tree.treeBoxObject.getCellAt(event.pageX, event.pageY, row, col, child)
-
- //Wenn es keine Row ist sondern ein Header oder Scrollbar dann abbrechen
- if (!col.value)
- return false;
-
- //Wenn eine andere row markiert ist als angeklickt wurde -> beenden.
- //Dies kommt vor wenn ein Subtree geoeffnet wird
- if(row.value!=tree.currentIndex)
- return;
-
- col = tree.columns ? tree.columns["uid"] : "uid";
- var uid=tree.view.getCellText(tree.currentIndex,col);
-
- var stg_idx = tree.view.getParentIndex(tree.currentIndex);
- var col = tree.columns ? tree.columns["studiengang_kz"] : "studiengang_kz";
- var stg_kz=tree.view.getCellText(stg_idx,col);
-
- document.getElementById('LehrveranstaltungEditor').setAttribute('stg_kz',stg_kz);
- document.getElementById('LehrveranstaltungEditor').setAttribute('uid',uid);
-
- // Lehrveranstaltung des Lektors laden
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- try
+ document.getElementById('projekttask-toolbar-del').disabled=true;
+
+
+ if(projekt_kurzbz!='')
{
- //alert(stg_kz);
- url = 'rdf/lehrveranstaltung_einheiten.rdf.php?stg_kz='+stg_kz+'&uid='+uid+'&'+gettimestamp();
- var treeLV=document.getElementById('lehrveranstaltung-tree');
-
- //Alte DS entfernen
- var oldDatasources = treeLV.database.GetDataSources();
- try
- {
- LvTreeDatasource.removeXMLSinkObserver(LvTreeSinkObserver);
- treeLV.builder.removeListener(LvTreeListener);
- }
- catch(e)
- {}
-
- while(oldDatasources.hasMoreElements())
- {
- treeLV.database.RemoveDataSource(oldDatasources.getNext());
- }
-
- var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
- LvTreeDatasource = rdfService.GetDataSource(url);
- LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
- LvTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
- treeLV.database.AddDataSource(LvTreeDatasource);
- LvTreeDatasource.addXMLSinkObserver(LvTreeSinkObserver);
- treeLV.builder.addListener(LvTreeListener);
- document.getElementById('lehrveranstaltung-toolbar-lehrauftrag').hidden=false;
+ //Neu Button bei Tasks aktivieren
+ document.getElementById('projekttask-toolbar-neu').disabled=false;
}
- catch(e)
+ else
{
- debug(e);
+ document.getElementById('projekttask-toolbar-neu').disabled=true;
+ document.getElementById('projekttask-toolbar-del').disabled=true;
}
}
@@ -335,9 +105,12 @@ function loadURL(event)
function parseRDFString(str, url)
{
- try {
+ try
+ {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- } catch(e) {
+ }
+ catch(e)
+ {
alert(e);
return;
}
diff --git a/content/planner.overlay.xul.php b/content/planner.overlay.xul.php
index bf82d4640..555d1c42e 100755
--- a/content/planner.overlay.xul.php
+++ b/content/planner.overlay.xul.php
@@ -31,11 +31,9 @@ echo '
-
-
-
-
-
+
+
+
// *********** Globale Variablen *****************//
-var LeDetailLehrfach_id; //Lehrfach_id die nach dem Laden markiert werden soll
-var LeDetailLehrfach_label; //Bezeichnung des Lehrfachs das markiert werden soll
-var LeDetailGruppeDatasource; //Datasource fuer Gruppen DropDown
-var LeDetailLektorDatasource; //Datasource fuer Lektren DropDown
-var LvSelectLehreinheit_id; //Lehreinheit_id die nach dem Rebuild des Trees markiert werden soll
-var LvOpenLehrveranstaltung_id; //Lehrveranstaltung_id der Lehreinheit die gerade gespeichert wurde. Diese LV muss vor dem Select im Tree geoeffnet werden
-var leDetailLektorUid; // UID der Lektorzuordnung die nach dem Rebuild markiert werden soll
-var leDetailLektorLehreinheit_id; // Lehreinheit_id der Lektorzuordnung die nach dem Rebuild markiert werden soll
-var lehrveranstaltungNotenTreeDatasource; //Datasource des Noten Trees
-var lehrveranstaltungNotenSelectUID=null; //UID des Noten Eintrages der nach dem Refresh markiert werden soll
-var lehrveranstaltungLvGesamtNotenTreeDatasource; //Datasource des Noten Trees
-var lehrveranstaltungLvGesamtNotenSelectUID=null; //LehreinheitID des Noten Eintrages der nach dem Refresh markiert werden soll
-var lehrveranstaltungNotenTreeloaded=false;
-var lehrveranstaltungGesamtNotenTreeloaded=false;
+var TaskTreeDatasource; //Datasource des Task Tree
+var TaskSelectID=null; //ID des Task Eintrages der nach dem Refresh markiert werden soll
// ********** Observer und Listener ************* //
// ****
@@ -44,7 +32,7 @@ var lehrveranstaltungGesamtNotenTreeloaded=false;
// * startet Rebuild nachdem das Refresh
// * der datasource fertig ist
// ****
-var LvTreeSinkObserver =
+var TaskTreeSinkObserver =
{
onBeginLoad : function(pSink) {},
onInterrupt : function(pSink) {},
@@ -52,9 +40,8 @@ var LvTreeSinkObserver =
onError : function(pSink, pStatus, pError) { debug('onerror:'+pError); },
onEndLoad : function(pSink)
{
- //debug('startrebuild');
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- document.getElementById('lehrveranstaltung-tree').builder.rebuild();
+ document.getElementById('projekttask-tree').builder.rebuild();
}
};
@@ -62,242 +49,56 @@ var LvTreeSinkObserver =
// * Nach dem Rebuild wird die Lehreinheit wieder
// * markiert
// ****
-var LvTreeListener =
+var TaskTreeListener =
{
willRebuild : function(builder)
{
},
didRebuild : function(builder)
{
- //debug('didrebuild');
- //timeout nur bei Mozilla notwendig da sonst die rows
+ //timeout nur bei Mozilla notwendig da sonst die rows
//noch keine values haben. Ab Seamonkey funktionierts auch
//ohne dem setTimeout
- window.setTimeout(LvTreeSelectLehreinheit,10);
+ window.setTimeout(TaskTreeSelectTask,10);
// Progressmeter stoppen
//document.getElementById('statusbar-progressmeter').setAttribute('mode','determined');
}
};
-// ****
-// * Nach dem Rebuild wird die Lektorzuordnung
-// * wieder markiert
-// ****
-var LvLektorTreeListener =
-{
- willRebuild : function(builder) { },
- didRebuild : function(builder)
- {
- window.setTimeout(LeLektorTreeSelectLektor,10);
- }
-};
-
-
-// ****
-// * Observer fuer Lehrfachdropdown
-// ****
-var LeDetailLehrfachSinkObserver =
-{
- onBeginLoad: function(aSink) { },
- onInterrupt: function(aSink) { },
- onResume: function(aSink) { },
- onEndLoad: function(aSink) {
- //Das richtige Lehrfach markieren
- if(LeDetailLehrfach_id!='') //Wenn die Lehrfach_id bekannt ist, dann einfach markieren
- document.getElementById('lehrveranstaltung-detail-menulist-lehrfach').value=LeDetailLehrfach_id;
- else
- {
- if(LeDetailLehrfach_label!='') //Wenn Name bekannt ist
- {
-
- menulist = document.getElementById('lehrveranstaltung-detail-menulist-lehrfach');
-
- //Alle eintraege aus menulist holen
- var items = menulist.childNodes[1].childNodes //Anzahl der Zeilen ermitteln
- found=false;
- for(i in items)
- {
- //Vom Label des DropDowns den Fachbereich abschneiden
- //der dahinter in Klammer steht
- lflabel = items[i].label.substr(0, items[i].label.lastIndexOf('(')).trim();
-
- //Richtigen Eintrag suchen
- if(lflabel==LeDetailLehrfach_label)
- {
- //Eintrag markieren
- menulist.selectedIndex=i;
- found=true;
- break;
- }
- }
- //Wenn nichts gefunden wurde, wird der erste Eintrag markiert
- if(!found)
- menulist.selectedIndex=0;
- }
- }
- },
- onError: function(aSink, aStatus, aErrorMsg) {
- alert('Bei der Datenuebertragung ist ein Fehler Aufgetreten. Bitte Versuchen Sie es erneut.');
- }
-};
-
-// ****
-// * Observer fuer Noten Tree
-// * startet Rebuild nachdem das Refresh
-// * der datasource fertig ist
-// ****
-var LehrveranstaltungNotenTreeSinkObserver =
-{
- onBeginLoad : function(pSink) {},
- onInterrupt : function(pSink) {},
- onResume : function(pSink) {},
- onError : function(pSink, pStatus, pError) {},
- onEndLoad : function(pSink)
- {
- lehrveranstaltungNotenTreeloaded=false;
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- document.getElementById('lehrveranstaltung-noten-tree').builder.rebuild();
- }
-};
-
-// ****
-// * Nach dem Rebuild wird der Eintrag wieder
-// * markiert
-// ****
-var LehrveranstaltungNotenTreeListener =
-{
- 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
- lehrveranstaltungNotenTreeloaded=true;
- window.setTimeout(LehrveranstaltungNotenTreeSelectID,10);
- }
-};
-
-// ****
-// * Observer fuer LvGesamtNoten Tree
-// * startet Rebuild nachdem das Refresh
-// * der datasource fertig ist
-// ****
-var LehrveranstaltungLvGesamtNotenTreeSinkObserver =
-{
- onBeginLoad : function(pSink) {},
- onInterrupt : function(pSink) {},
- onResume : function(pSink) {},
- onError : function(pSink, pStatus, pError) {},
- onEndLoad : function(pSink)
- {
- lehrveranstaltungGesamtNotenTreeloaded=false;
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- document.getElementById('lehrveranstaltung-lvgesamtnoten-tree').builder.rebuild();
- }
-};
-
-// ****
-// * Nach dem Rebuild wird der Eintrag wieder
-// * markiert
-// ****
-var LehrveranstaltungLvGesamtNotenTreeListener =
-{
- 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
- lehrveranstaltungGesamtNotenTreeloaded=true;
- window.setTimeout(LehrveranstaltungLvGesamtNotenTreeSelectID,10);
- }
-};
-
-// ***************** KEY Events ************************* //
-
-// ****
-// * Wird ausgefuehrt wenn eine Taste gedrueckt wird und der Focus
-// * im Lehrveranstaltungs-tree ist
-// * Beim Druecken von ENTF wird die markierte Lehreinheit geloescht
-// * Beim Druecken von F5 wird der Lehrveranstaltungstree aktualisiert
-// ****
-function LvTreeKeyPress(event)
-{
- if(event.keyCode==46) // Entf
- LeDelete();
- else if(event.keyCode==116) // F5
- LvTreeRefresh();
-}
-
-// ****
-// * Wird ausgefuehrt wenn eine Taste gedrueckt wird und der Focus
-// * im Gruppen-tree ist
-// * Beim Druecken von ENTF wird die markierte Gruppenzuordnung geloescht
-// ****
-function LvDetailGruppenTreeKeyPress(event)
-{
- if(event.keyCode==46) //Entf
- LeGruppeDel();
-}
-
-// ****
-// * Wird ausgefuehrt wenn eine Taste gedrueckt wird und der Focus
-// * im Mitarbeiter-tree ist
-// * Beim Druecken von ENTF wird die markierte Mitarbeiterzuordnung geloescht
-// ****
-function LvDetailMitarbeiterTreeKeyPress(event)
-{
- if(event.keyCode==46) //Entf
- LeMitarbeiterDel();
-}
-
-// ****
-// * Erstellt den Lehrauftrag fuer
-// * einen Mitarbeiter
-// ****
-function LvCreateLehrauftrag()
-{
- stg = document.getElementById('LehrveranstaltungEditor').getAttribute('stg_kz');
- uid = document.getElementById('LehrveranstaltungEditor').getAttribute('uid');
- var ss = document.getElementById('statusbarpanel-semester').label;
- //window.location.href = 'content/lvplanung/lehrauftrag.php?stg_kz='+stg+'&uid='+uid+'&'+gettimestamp();
- window.location.href = 'content/pdfExport.php?xml=lehrauftrag.xml.php&xsl=Lehrauftrag&stg_kz='+stg+'&uid='+uid+'&ss='+ss+'&'+gettimestamp();
-}
-
// ****************** FUNKTIONEN ************************** //
// ****
// * Asynchroner (Nicht blockierender) Refresh des LV Trees
// ****
-function LvTreeRefresh()
+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('lehrveranstaltung-tree');
- var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehreinheit_id"] : "lehrveranstaltung-treecol-lehreinheit_id";
+ var tree = document.getElementById('projekttask-tree');
+
try
{
- LvSelectLehreinheit_id=tree.view.getCellText(tree.currentIndex,col);
+ TaskSelectID = getTreeCellText(tree, "projekttask-treecol-projekttask_id", tree.currentIndex);
}
catch(e)
{
- LvSelectLehreinheit_id=null;
+ TaskSelectID=null;
}
- LvTreeDatasource.Refresh(false); //non blocking
+ TaskTreeDatasource.Refresh(false); //non blocking
}
// ****
-// * neue Lehreinheit anlegen
+// * neuen Task anlegen
// ****
-function LeNeu()
+function TaskNeu()
{
- LeDetailDisableFields(false);
-
// 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
@@ -362,30 +163,27 @@ function LeNeu()
//Defaultwert fuer Anmerkung
document.getElementById('lehrveranstaltung-detail-textbox-anmerkung').value='';
+ */
}
// ****
// * Selectiert die Lektorzuordnung nachdem der Tree
// * rebuildet wurde.
// ****
-function LeLektorTreeSelectLektor()
+function TaskTreeSelectTask()
{
- var tree=document.getElementById('lehrveranstaltung-detail-tree-lehreinheitmitarbeiter');
+ var tree=document.getElementById('projekttask-tree');
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
- //In der globalen Variable ist die zu selektierende Lehreinheit gespeichert
- if(leDetailLektorUid!=null && leDetailLektorLehreinheit_id!=null)
+ //In der globalen Variable ist die zu selektierende ID gespeichert
+ if(TaskSelectID!=null)
{
for(var i=0;i=0;i--)
- {
- col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
- lehrveranstaltung_id=tree.view.getCellText(i,col);
- if(lehrveranstaltung_id == LvOpenLehrveranstaltung_id)
- {
- if(!tree.view.isContainerOpen(i))
- tree.view.toggleOpenState(i);
- break;
- }
- }
- LvOpenLehrveranstaltung_id='';
-
- //Jetzt die wirkliche Anzahl (aller) Zeilen holen
- items = tree.view.rowCount;
- for(var i=0;i=0)
- idx = tree.currentIndex;
- else
- {
- alert('Bitte zuerst einen Mitarbeiter markieren');
- return false;
- }
-
- try
- {
- //UID holen
- var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitmitarbeiter-treecol-mitarbeiter_uid"] : "lehrveranstaltung-lehreinheitmitarbeiter-treecol-mitarbeiter_uid";
- var uid=tree.view.getCellText(idx,col);
- //Lehreinheit_id holen
- var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitmitarbeiter-treecol-lehreinheit_id"] : "lehrveranstaltung-lehreinheitmitarbeiter-treecol-lehreinheit_id";
- var lehreinheit_id=tree.view.getCellText(idx,col);
- }
- catch(e)
- {
- alert(e);
- return false;
- }
-
- var req = new phpRequest('lvplanung/lehrveranstaltungDBDML.php','','');
-
- req.add('type', 'lehreinheit_mitarbeiter_del');
- req.add('lehreinheit_id', lehreinheit_id);
- req.add('mitarbeiter_uid', uid);
-
- var response = req.executePOST();
- var val = new ParseReturnValue(response)
-
- if (!val.dbdml_return)
- {
- alert(val.dbdml_errormsg)
- }
- else
- {
- //Refresh des Trees
- LeLektorTreeRefresh();
- }
-}
-
-// ****
-// * Wenn bei den Lektorenzuordnungen Felder bearbeitet werden,
-// * dann wird der Speichern Button aktiviert
-// ****
-function LeMitarbeiterValueChanged()
-{
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-button-save').disabled=false;
-}
-
-// ****
-// * Wenn der Lektor geaendert wird, dann den Stundensatz aus der Tabelle Mitarbeiter holen
-// ****
-function LeMitarbeiterLektorChange()
-{
- mitarbeiter_uid = document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-menulist-lektor').value;
-
- var url = 'content/lvplanung/lehrveranstaltungDBDML.php';
- var req = new phpRequest(url,'','');
-
- req.add('type', 'getstundensatz');
- req.add('mitarbeiter_uid', mitarbeiter_uid);
-
- var response = req.executePOST();
-
- var val = new ParseReturnValue(response);
-
- if (!val.dbdml_return)
- {
- if(val.dbdml_errormsg=='')
- alert(response);
- else
- alert(val.dbdml_errormsg);
- }
- else
- {
- stundensatz = val.dbdml_data;
- }
-
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-stundensatz').value=stundensatz;
-}
-
-// ****
-// * deaktiviert/aktiviert die Lektorendetails und
-// * loescht den Inhalt der Felder
-// * wenn val=false dann werden die Felder deaktiviert
-// * wenn val=true dann werden die Felder aktiviert
-// ****
-function LeMitarbeiterDisableFields(val)
-{
- //Felder Leeren
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-menulist-lehrfunktion_kurzbz').value='Lektor';
- //document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-menulist-lektor').value='';
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-semesterstunden').value='';
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-planstunden').value='';
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-stundensatz').value='';
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-faktor').value='';
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-anmerkung').value='';
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-checkbox-bismelden').checked=false;
-
- //Felder aktivieren/deaktivieren
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-menulist-lehrfunktion_kurzbz').disabled=val;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-menulist-lektor').disabled=val;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-semesterstunden').disabled=val;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-planstunden').disabled=val;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-stundensatz').disabled=val;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-faktor').disabled=val;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-anmerkung').disabled=val;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-checkbox-bismelden').disabled=val;
-}
-
-// ****
-// * Bei Auswaehlen eines Mitarbeiters werden zu zugehoerigen
-// * Details geladen und angezeigt
-// ****
-function LeMitarbeiterAuswahl()
-{
- tree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitmitarbeiter');
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-button-save').disabled=true;
- //Falls kein Eintrag gewaehlt wurde, den ersten auswaehlen
- var idx;
- if(tree.currentIndex>=0)
- idx = tree.currentIndex;
- else
- idx = 0;
-
- try
- {
- //Lehreinheit_id holen
- var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitmitarbeiter-treecol-lehreinheit_id"] : "lehrveranstaltung-lehreinheitmitarbeiter-treecol-lehreinheit_id";
- var lehreinheit_id=tree.view.getCellText(idx,col);
-
- //Mitarbeiter_uid holen
- var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitmitarbeiter-treecol-mitarbeiter_uid"] : "lehrveranstaltung-lehreinheitmitarbeiter-treecol-mitarbeiter_uid";
- var mitarbeiter_uid=tree.view.getCellText(idx,col);
- }
- catch(e)
- {
- return false;
- }
-
- // Url zum RDF
- var url="rdf/lehreinheitmitarbeiter.rdf.php?"+gettimestamp();
-
- //RDF laden
- var req = new phpRequest(url,'','');
- req.add('lehreinheit_id',lehreinheit_id);
- req.add('mitarbeiter_uid',mitarbeiter_uid);
-
- var response = req.execute();
-
- // Trick 17 (sonst gibt's ein Permission denied)
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
-
- // XML in Datasource parsen
- var dsource=parseRDFString(response, 'http://www.technikum-wien.at/lehreinheitmitarbeiter/liste');
-
- // Daten aus RDF auslesen
- dsource=dsource.QueryInterface(Components.interfaces.nsIRDFDataSource);
- var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
- getService(Components.interfaces.nsIRDFService);
- var subject = rdfService.GetResource("http://www.technikum-wien.at/lehreinheitmitarbeiter/" + lehreinheit_id + "/"+ mitarbeiter_uid);
- var predicateNS = "http://www.technikum-wien.at/lehreinheitmitarbeiter/rdf";
-
- //Daten in Variablen speichern
- lehrfunktion_kurzbz = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#lehrfunktion_kurzbz" ));
- semesterstunden = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#semesterstunden" ));
- planstunden = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#planstunden" ));
- stundensatz = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#stundensatz" ));
- faktor = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#faktor" ));
- anmerkung = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#anmerkung" ));
- bismelden = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#bismelden" ));
-
- //Felder aktivieren
- LeMitarbeiterDisableFields(false);
- //Felder befuellen
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-menulist-lehrfunktion_kurzbz').value=lehrfunktion_kurzbz;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-menulist-lektor').value=mitarbeiter_uid;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-semesterstunden').value=semesterstunden;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-planstunden').value=planstunden;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-stundensatz').value=stundensatz;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-faktor').value=faktor;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-anmerkung').value=anmerkung;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-lehreinheit_id').value=lehreinheit_id;
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-textbox-mitarbeiter_uid').value=mitarbeiter_uid;
-
- if(bismelden=='Ja')
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-checkbox-bismelden').checked=true;
- else
- document.getElementById('lehrveranstaltung-lehreinheitmitarbeiter-checkbox-bismelden').checked=false;
-
- LeMitarbeiterGesamtkosten();
-}
-
-// ****
-// * Refresht den Lehreinheitmitarbeiter Tree
-// ****
-function LeLektorTreeRefresh()
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- try
- {
- LeDetailLektorDatasource.Refresh(true); //Blocking
- lektortree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitmitarbeiter');
- lektortree.builder.rebuild();
- }
- catch(e)
- {
- debug(e);
- }
-}
-
-// ************* GRUPPEN ******************** //
-
-// ****
-// * Loescht die Zuordnung einer Gruppe zu einer
-// * Lehreinheit
-// ****
-function LeGruppeDel()
-{
- tree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe');
-
- //Nachsehen ob Gruppe markiert wurde
- var idx;
- if(tree.currentIndex>=0)
- idx = tree.currentIndex;
- else
- {
- alert('Bitte zuerst eine Gruppe markieren');
- return false;
- }
-
- try
- {
- //Lehreinheit_id holen
- var col = tree.columns ? tree.columns["lehrveranstaltung-lehreinheitgruppe-treecol-lehreinheitgruppe_id"] : "lehrveranstaltung-lehreinheitgruppe-treecol-lehreinheitgruppe_id";
- var lehreinheitgruppe_id=tree.view.getCellText(idx,col);
- }
- catch(e)
- {
- alert(e);
- return false;
- }
-
- var req = new phpRequest('lvplanung/lehrveranstaltungDBDML.php','','');
- neu = document.getElementById('lehrveranstaltung-detail-checkbox-new').checked;
-
- req.add('type', 'lehreinheit_gruppe_del');
- req.add('lehreinheitgruppe_id', lehreinheitgruppe_id);
-
- var response = req.executePOST();
- var val = new ParseReturnValue(response)
-
- if (!val.dbdml_return)
- {
- alert(val.dbdml_errormsg)
- }
- else
- {
- //Refresh des Trees
- LeDetailGruppeTreeRefresh();
- LvTreeRefresh();
- }
-}
-
-// ****
-// * Gruppen Tree Refreshen
-// ****
-function LeDetailGruppeTreeRefresh()
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- try
- {
- LeDetailGruppeDatasource.Refresh(true); //Blocking
- gruppentree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe');
- gruppentree.builder.rebuild();
- }
- catch(e)
- {
- debug(e);
- }
-}
-
-// ****************** NOTEN ****************** //
-
-// ****
-// * De-/Aktiviert die Noten Felder
-// ****
-function LehrveranstaltungNotenDisableFields(val)
-{
- document.getElementById('lehrveranstaltung-note-copy').disabled=val;
- document.getElementById('lehrveranstaltung-noten-button-import').disabled=val;
-
- if(val)
- LehrveranstaltungNotenDetailDisableFields(val);
-}
-
-// ****
-// * De-/Aktiviert die Noten Detail Felder
-// ****
-function LehrveranstaltungNotenDetailDisableFields(val)
-{
- document.getElementById('lehrveranstaltung-noten-button-speichern').disabled=val;
- document.getElementById('lehrveranstaltung-noten-menulist-note').disabled=val;
-}
-
-// ****
-// * Noten Trees Loeschen
-// ****
-function LehrveranstaltungNotenTreeUnload()
-{
- netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
-
- notentree = document.getElementById('lehrveranstaltung-noten-tree');
- var oldDatasources = notentree.database.GetDataSources();
- while(oldDatasources.hasMoreElements())
- {
- notentree.database.RemoveDataSource(oldDatasources.getNext());
- }
- //Refresh damit die entfernten DS auch wirklich entfernt werden
- notentree.builder.rebuild();
-
- var lvgesamtnotentree = document.getElementById('lehrveranstaltung-lvgesamtnoten-tree');
- 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();
-}
-
-// ****
-// * Laedt die Notentrees
-// ****
-function LehrveranstaltungNotenLoad(lehrveranstaltung_id)
-{
- // *** ZeugnisNoten ***
- notentree = document.getElementById('lehrveranstaltung-noten-tree');
-
- 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())
- {
- notentree.database.RemoveDataSource(oldDatasources.getNext());
- }
- //Refresh damit die entfernten DS auch wirklich entfernt werden
- notentree.builder.rebuild();
- var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
- LehrveranstaltungNotenTreeDatasource = rdfService.GetDataSource(url);
- LehrveranstaltungNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
- LehrveranstaltungNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
- notentree.database.AddDataSource(LehrveranstaltungNotenTreeDatasource);
- LehrveranstaltungNotenTreeDatasource.addXMLSinkObserver(LehrveranstaltungNotenTreeSinkObserver);
- notentree.builder.addListener(LehrveranstaltungNotenTreeListener);
-
- // *** LvGesamtNoten ***
- var lvgesamtnotentree = document.getElementById('lehrveranstaltung-lvgesamtnoten-tree');
-
- url='rdf/lvgesamtnote.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+"&"+gettimestamp();
-
- try
- {
- LehrveranstaltungLvGesamtNotenTreeDatasource.removeXMLSinkObserver(LehrveranstaltungLvGesamtNotenTreeSinkObserver);
- lvgesamtnotentree.builder.removeListener(LehrveranstaltungLvGesamtNotenTreeListener);
- }
- 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);
- LehrveranstaltungLvGesamtNotenTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
- lvgesamtnotentree.database.AddDataSource(LehrveranstaltungLvGesamtNotenTreeDatasource);
- LehrveranstaltungLvGesamtNotenTreeDatasource.addXMLSinkObserver(LehrveranstaltungLvGesamtNotenTreeSinkObserver);
- lvgesamtnotentree.builder.addListener(LehrveranstaltungLvGesamtNotenTreeListener);
-}
-
-// ****
-// * Selectiert die Noten im LVGesamtNoteTree welche nicht gleich denen
-// * im ZeugnisNoteTree sind
-// ****
-function LehrveranstaltungGesamtNotenTreeSelectDifferent()
-{
- var zeugnistree = document.getElementById("lehrveranstaltung-noten-tree");
- var lvgesamttree = document.getElementById("lehrveranstaltung-lvgesamtnoten-tree");
- lvgesamttree.view.selection.clearSelection();
-
- if(lehrveranstaltungNotenTreeloaded && lehrveranstaltungGesamtNotenTreeloaded)
- {
- lvgesamttree.view.selection.clearSelection();
- 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;ilvgesamtbenotungsdatum)
- {
- found=true;
- break;
- }
- }
-
- if(!found)
- {
- //Zeile markieren
- lvgesamttree.view.selection.rangedSelect(i,i,true);
- }
- }
- }
-}
-
-// ****
-// * Markiert einen Eintrag im LVGesamtNotenTree
-// ****
-function LehrveranstaltungLvGesamtNotenTreeSelectID()
-{
- LehrveranstaltungGesamtNotenTreeSelectDifferent();
-/*
- var tree=document.getElementById('lehrveranstaltung-lvgesamtnoten-tree');
- if(tree.view)
- var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
- else
- return false;
-
- //In der globalen Variable ist die zu selektierende Eintrag gespeichert
- if(lehrveranstaltungLvGesamtNotenSelectUID!=null)
- {
- for(var i=0;i';
echo '';
-echo '';
?>
-
-
-
-
-
+
+
+
-
+
@@ -127,12 +123,10 @@ echo '
-
-
diff --git a/content/projekt/projekttaskdetail.overlay.xul.php b/content/projekt/projekttaskdetail.overlay.xul.php
new file mode 100755
index 000000000..ecfce1c81
--- /dev/null
+++ b/content/projekt/projekttaskdetail.overlay.xul.php
@@ -0,0 +1,47 @@
+
+ */
+
+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 '';
+
+?>
+
+
+
+
+
+
+ Task Details
+
+
+
+ Mantis Details
+
+
\ No newline at end of file