ProjektmanagementTool Planner

This commit is contained in:
Christian Paminger
2011-08-04 05:45:00 +00:00
parent 17c6247d28
commit e17883f1e7
13 changed files with 5133 additions and 0 deletions
+496
View File
@@ -0,0 +1,496 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]>
*/
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)
{
var id=progress_id;
var runningprogress=0;
this.StopPM=StopPM;
this.StartPM=StartPM;
function StartPM()
{
// Progressmeter starten.
document.getElementById(id).setAttribute('mode','undetermined');
runningprogress++;
}
function StopPM()
{
runningprogress--;
if(runningprogress<0)
runningprogress=0;
// Progressmeter stoppen wenn alle fertig sind
if(runningprogress==0)
document.getElementById(id).setAttribute('mode','determined');
}
}
// ------ EndOf CLASS Progressmeter ------------------------------
var globalProgressmeter=new Progressmeter('statusbar-progressmeter');
//globalProgressmeter.StartPM();
function closeWindow()
{
//Warnung wenn Daten veraendert aber noch nicht gespeichert wurden
if(MitarbeiterDetailValueChanged)
{
if(!confirm('Achtung! Mitarbeiterdaten wurden veraendert aber noch nicht gespeichert. Programm wirklich beenden? \n(Die geaenderten Daten gehen dabei verloren)'))
return false;
}
MitarbeiterDetailValueChanged=false;
window.close();
}
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};
}
catch(e)
{
debug('catched'+e);
onLoad=function() {return false};
}
}
function loadRightFrame()
{
}
function loadURL(event)
{
var contentFrame = document.getElementById('contentFrame');
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 = '<?php echo APP_ROOT ?>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 = '<?php echo APP_ROOT ?>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 = '<?php echo APP_ROOT ?>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 = '<?php echo APP_ROOT; ?>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('<?php echo APP_ROOT;?>vilesci/lehre/stpl_benutzer_kollision_frameset.html', 'Kollision Student');
}
// ****
// * Zeigt das Fenster zur LVPlanWartung
// ****
function LVPlanWartungShow()
{
window.open('<?php echo APP_ROOT;?>vilesci/lehre/lvplanwartung.php', 'LVPLanWartung');
}
// ****
// * Zeigt das Fenster zur Kollisionspruefung mit Reservierungen
// ****
function ResCheckShow()
{
window.open('<?php echo APP_ROOT;?>vilesci/lehre/check/res_check.php', 'KollisionReservierung');
}
// ****
// * Oeffnet das Handbuch
// ****
function OpenManualTempus()
{
window.open('<?php echo APP_ROOT ?>content/Tempus.pdf','Manual');
}
// ****
// * Oeffnet den About Dialog
// ****
function OpenAboutDialog()
{
window.open('<?php echo APP_ROOT ?>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');
}
+354
View File
@@ -0,0 +1,354 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
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;
}
function onProjektSelect()
{
//document.getElementById('tempus-lva-filter').value='';
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//var contentFrame=document.getElementById('iframeTimeTableWeek');
var tree=document.getElementById('tree-projekt');
// Kommentar bitte!
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 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 = "<?php echo APP_ROOT; ?>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)
{
//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 = "<?php echo APP_ROOT; ?>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 = "<?php echo APP_ROOT; ?>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);
}
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 = '<?php echo APP_ROOT; ?>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());
}
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 = "<?php echo APP_ROOT; ?>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 = "<?php echo APP_ROOT; ?>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 = "<?php echo APP_ROOT; ?>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 = "<?php echo APP_ROOT; ?>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
{
//alert(stg_kz);
url = '<?php echo APP_ROOT; ?>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;
}
catch(e)
{
debug(e);
}
}
function loadURL(event)
{
var contentFrame = document.getElementById('contentFrame');
var url = event.target.getAttribute('value');
if (url) contentFrame.setAttribute('src', url);
};
function parseRDFString(str, url)
{
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
} catch(e) {
alert(e);
return;
}
var memoryDS = Components.classes["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"].createInstance(Components.interfaces.nsIRDFDataSource);
var ios=Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
baseUri=ios.newURI(url,null,null);
var parser=Components.classes["@mozilla.org/rdf/xml-parser;1"].createInstance(Components.interfaces.nsIRDFXMLParser);
parser.parseString(memoryDS,baseUri,str);
return memoryDS;
}
+162
View File
@@ -0,0 +1,162 @@
<?php
require_once('../config/vilesci.config.inc.php');
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
/*echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentenoverlay.xul.php?xulapp=planner"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/stpl-week-overlay.xul.php"?>';*/
echo '<?xul-overlay href="'.APP_ROOT.'content/projekt/projekttask.overlay.xul.php"?>';
?>
<!DOCTYPE overlay >
<!-- [<?php require_once("../locale/de-AT/planner.dtd"); ?>] -->
<overlay id="PlannerOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/planner.overlay.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/dragboard.js.php"/>
<vbox id="box-projekt">
<popupset>
<popup id="projekttask-tree-popup">
<menuitem label="Entfernen" oncommand="LeDelete();" id="projekttask-tree-popup-entf" disabled="false"/>
</popup>
</popupset>
<toolbox>
<toolbar id="projekttask-nav-toolbar">
<toolbarbutton id="projekttask-toolbar-neu" label="Neues Projekt" oncommand="ProjektNeu();" disabled="true" image="../skin/images/NeuDokument.png" tooltiptext="Neues Projekt anlegen" />
<toolbarbutton id="projekttask-toolbar-del" label="Loeschen" oncommand="LeDelete();" disabled="true" image="../skin/images/DeleteIcon.png" tooltiptext="Lehreinheiten löschen"/>
<toolbarbutton id="projekttask-toolbar-refresh" label="Aktualisieren" oncommand="LvTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<toolbarbutton id="projekttask-toolbar-lehrauftrag" label="Lehrauftrag" oncommand="LvCreateLehrauftrag()" disabled="false" image="../skin/images/person.gif" tooltiptext="Lehrauftrag ausdrucken" hidden="true"/>
<!--<toolbarbutton id="projekttask-toolbar-refresh" label="Load" oncommand="debugload()" disabled="false"/>-->
</toolbar>
</toolbox>
<tree id="tree-projekt" onselect="onProjektSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/projektphase.rdf.php?foo=<?php echo time(); ?>" ref="http://www.technikum-wien.at/projektphase/alle-projektphasen"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,lvbgrpDDObserver);"
ondragdrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,verbandtreeDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,verbandtreeDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,verbandtreeDDObserver)"
>
<treecols>
<treecol id="tree-projekt-bezeichnung" label="Bezeichnung" flex="15" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-oe" label="OE" flex="2" hidden="true" />
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-projekt_kurzbz" label="Projekt" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-projekt_phase" label="Phase" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-projekt_phase_id" label="PhaseID" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-titel" label="Titel" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-nummer" label="Nummer" flex="1" hidden="false"/>
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-beginn" label="Beginn" flex="1" hidden="false"/>
<splitter class="tree-splitter"/>
<treecol id="tree-projekt-ende" label="Ende" flex="1" hidden="false"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#oe_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#projekt_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#projekt_phase"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#projekt_phase_id"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#titel"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#nummer"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#beginn"/>
<treecell label="rdf:http://www.technikum-wien.at/projektphase/rdf#ende"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</vbox>
<!--<tree id="tree-ort" onselect="onOrtSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/ort.rdf.php" ref="http://www.technikum-wien.at/ort/alle-orte">
<treecols>
<treecol id="raumtyp" label="Raumtyp" flex="2" primary="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="ort_kurzbz" label="Raum" flex="4" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="hierarchie" label="HI" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="ort_bezeichnung" label="Bezeichnung" flex="3" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="max_person" label="MaxP" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="raumtypen" label="Raumtypen" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="stockwerk" label="Stockwerk" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="planbezeichnung" label="Planbezeichnung" flex="1" hidden="true" persist="hidden, width, ordinal"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#raumtyp"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#ort_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#hierarchie"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#ort_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#max_person"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#raumtypen"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#stockwerk"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#planbezeichnung"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>-->
<vbox id="vbox-main">
<popupset>
<popup id="fasoverlay-lektor-tree-popup">
<menuitem label="Mail senden" oncommand="LektorFunktionMail();" />
<menuseparator />
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
</popup>
</popupset>
<tabbox id="tabbox-main" flex="3" orient="vertical">
<tabs orient="horizontal">
<tab id="tab-projekttask" label="Tasks" />
<tab id="tab-semester" label="Semesterplan" />
<tab id="tab-studenten" label="Studenten" />
<tab id="tab-lfvt" label="Lehrveranstaltung" />
</tabs>
<tabpanels id="tabpanels-main" flex="1">
<!-- Projekttask -->
<vbox id="box-projekttask" />
<!-- Semesterplan -->
<vbox id="vboxTimeTableSemester" />
<!-- Studenten -->
<vbox id="studentenEditor" />
<!-- Lehrfachverteilung -->
<vbox id="LehrveranstaltungEditor" />
</tabpanels>
</tabbox>
</vbox>
</overlay>
+295
View File
@@ -0,0 +1,295 @@
<?php
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/studiensemester.class.php');
$uid=get_uid();
$error_msg='';
loadVariables($uid);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
/*echo '<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>';*/
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/planner.css" type="text/css"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/planner.overlay.xul.php"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'content/bindings.css" type="text/css" ?>';
echo '<?xml-stylesheet href="datepicker/datepicker.css" type="text/css"?>';
?>
<!DOCTYPE window [
<?php require("../locale/de-AT/planner.dtd"); ?>
]>
<window
id="planner"
title="&window.title; &window.version;"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
orient="vertical"
width="800"
height="600"
persist="screenX screenY width height sizemode"
onload="onLoad()"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/planner.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<commandset id="maincommands">
<command id="menu-file-close:command" oncommand="closeWindow();"/>
<command id="menu-properties-studiensemester:command" oncommand="studiensemesterChange();"/>
<command id="menu-prefs-stpltable-stundenplan:command" oncommand="stpltableChange('stundenplan');"/>
<command id="menu-prefs-stpltable-stundenplandev:command" oncommand="stpltableChange('stundenplandev');"/>
<command id="menu-prefs-ignore_kollision:command" oncommand="variableChange('ignore_kollision','menu-prefs-ignore_kollision');"/>
<command id="menu-prefs-ignore_zeitsperre:command" oncommand="variableChange('ignore_zeitsperre','menu-prefs-ignore_zeitsperre');"/>
<command id="menu-prefs-ignore_reservierung:command" oncommand="variableChange('ignore_reservierung','menu-prefs-ignore_reservierung');"/>
<command id="menu-prefs-kollision_student:command" oncommand="variableChange('kollision_student','menu-prefs-kollision_student');"/>
<command id="menu-prefs-max_kollision:command" oncommand="variableChangeValue('max_kollision');"/>
<command id="menu-extras-kollisionstudent:command" oncommand="KollisionStudentShow();"/>
<command id="menu-extras-lvplanwartung:command" oncommand="LVPlanWartungShow();"/>
<command id="menu-extras-rescheck:command" oncommand="ResCheckShow();"/>
<command id="menu-help-about:command" oncommand="OpenAboutDialog()"/>
<command id="menu-help-todo:command" oncommand="HelpOpenToDo();"/>
<command id="menu-help-manual:command" oncommand="OpenManualPlanner();"/>
</commandset>
<keyset id="mainkeys">
<key
id = "menu-file-close:key"
key = "&menu-file-close.key;"
observes = "menu-file-close:command"
modifiers = "accel" />
<key id="keycode_ignore_kollision" keycode="VK_F9" oncommand="toggleIgnoreKollision()"/>
</keyset>
<toolbox id="main-toolbox">
<menubar id="menu" >
<menu id="menu-file" label="&menu-file.label;" accesskey="&menu-file.accesskey;">
<menupopup id="menu-file-popup">
<menuitem
id = "menu-file-close"
key = "menu-file-close:key"
label = "&menu-file-close.label;"
command = "menu-file-close:command"
accesskey = "&menu-file-close.accesskey;"/>
</menupopup>
</menu>
<menu id="menu-edit" label="&menu-edit.label;" accesskey="&menu-edit.accesskey;" onclick="">
<menupopup id="menu-edit-popup" onpopupshowing="loadUndoList();">
<menu id="menu-edit-undo" label="&menu-edit-undo.label;"
datasources="rdf:null"
ref="http://www.technikum-wien.at/undo/liste"
>
<template>
<rule>
<menupopup id="menu-edit-undo-popup">
<menuitem uri="rdf:*" label="rdf:http://www.technikum-wien.at/undo/rdf#beschreibung"
value="rdf:http://www.technikum-wien.at/undo/rdf#log_id"
onclick="UnDo(this.value, this.label);"/>
</menupopup>
</rule>
</template>
</menu>
</menupopup>
</menu>
<menu id="menu-prefs" label="&menu-prefs.label;" accesskey="&menu-prefs.accesskey;">
<menupopup id="menu-prefs-popup">
<menu
id = "menu-properies-studiensemester"
label = "Studiensemester">
<menupopup id="menu-properties-popup">
<?php
$stsemobj = new studiensemester();
$stsemobj->getAll();
foreach ($stsemobj->studiensemester as $stsem)
{
echo "
<menuitem
id = 'menu-properies-studiensemester-name'
label = '$stsem->studiensemester_kurzbz'
type = 'radio'
command = 'menu-properties-studiensemester:command'
checked = ".($semester_aktuell==$stsem->studiensemester_kurzbz?"'true' ":"'false'")." />";
}
?>
</menupopup>
</menu>
<?php
if($rechte->isBerechtigt('lv-plan'))
{
?>
<menu id="menu-prefs-stpltable" label="&menu-prefs-stpltable.label;" accesskey="&menu-prefs-stpltable.accesskey;">
<menupopup id="menu-prefs-stpltable-popup">
<menuitem
id ="menu-prefs-stpltable-stundenplan"
type ="radio"
key ="menu-prefs-stpltable-stundenplan:key"
label ="&menu-prefs-stpltable-stundenplan.label;"
command ="menu-prefs-stpltable-stundenplan:command"
accesskey ="&menu-prefs-stpltable-stundenplan.accesskey;"
checked ="<?php echo ($db_stpl_table=='stundenplan'?'true':'false');?>" />
<menuitem
id ="menu-prefs-stpltable-stundenplandev"
type ="radio"
key ="menu-prefs-stpltable-stundenplandev:key"
label ="&menu-prefs-stpltable-stundenplandev.label;"
command ="menu-prefs-stpltable-stundenplandev:command"
accesskey ="&menu-prefs-stpltable-stundenplandev.accesskey;"
checked ="<?php echo ($db_stpl_table=='stundenplandev'?'true':'false');?>" />
</menupopup>
</menu>
<menuitem
id ="menu-prefs-ignore_kollision"
type ="checkbox"
key ="menu-prefs-ignore_kollision:key"
label ="&menu-prefs-ignore_kollision.label;"
command ="menu-prefs-ignore_kollision:command"
accesskey ="&menu-prefs-ignore_kollision.accesskey;"
checkbox ="true"
checked ="<?php echo $ignore_kollision;?>"
/>
<menuitem
id ="menu-prefs-ignore_zeitsperre"
type ="checkbox"
key ="menu-prefs-ignore_zeitsperre:key"
label ="&menu-prefs-ignore_zeitsperre.label;"
command ="menu-prefs-ignore_zeitsperre:command"
accesskey ="&menu-prefs-ignore_zeitsperre.accesskey;"
checkbox ="true"
checked ="<?php echo $ignore_zeitsperre;?>"
/>
<menuitem
id ="menu-prefs-ignore_reservierung"
type ="checkbox"
key ="menu-prefs-ignore_reservierung:key"
label ="&menu-prefs-ignore_reservierung.label;"
command ="menu-prefs-ignore_reservierung:command"
accesskey ="&menu-prefs-ignore_reservierung.accesskey;"
checkbox ="true"
checked ="<?php echo $ignore_reservierung;?>"
/>
<menuitem
id ="menu-prefs-kollision_student"
type ="checkbox"
key ="menu-prefs-kollision_student:key"
label ="&menu-prefs-kollision_student.label;"
command ="menu-prefs-kollision_student:command"
accesskey ="&menu-prefs-kollision_student.accesskey;"
checkbox ="true"
checked ="<?php echo $kollision_student;?>"
/>
<menuitem
id ="menu-prefs-max_kollision"
key ="menu-prefs-max_kollision:key"
label ="&menu-prefs-max_kollision.label;"
command ="menu-prefs-max_kollision:command"
accesskey ="&menu-prefs-max_kollision.accesskey;"
value ="<?php echo $max_kollision;?>"
/>
<?php
}
?>
</menupopup>
</menu>
<menu id="menu-extras" label="&menu-extras.label;" accesskey="&menu-extras.accesskey;">
<menupopup id="menu-extras-popup">
<menuitem
id = "menu-extras-kollisionstudent"
key = "menu-extras-kollisionstudent:key"
label = "&menu-extras-kollisionstudent.label;"
command = "menu-extras-kollisionstudent:command"
accesskey = "&menu-extras-kollisionstudent.accesskey;"/>
<menuitem
id = "menu-extras-lvplanwartung"
key = "menu-extras-lvplanwartung:key"
label = "&menu-extras-lvplanwartung.label;"
command = "menu-extras-lvplanwartung:command"
accesskey = "&menu-extras-lvplanwartung.accesskey;"/>
<menuitem
id = "menu-extras-rescheck"
key = "menu-extras-rescheck:key"
label = "&menu-extras-rescheck.label;"
command = "menu-extras-rescheck:command"
accesskey = "&menu-extras-rescheck.accesskey;"/>
</menupopup>
</menu>
<menu id="menu-help" label="&menu-help.label;" accesskey="&menu-help.accesskey;">
<menupopup id="menu-about-popup">
<menuitem
id = "menu-help-about"
key = "menu-help-about:key"
label = "&menu-help-about.label;"
command = "menu-help-about:command"
accesskey = "&menu-help-about.accesskey;"/>
<menuitem
id = "menu-help-manual"
key = "menu-help-manual:key"
label = "&menu-help-manual.label;"
command = "menu-help-manual:command"
accesskey = "&menu-help-manual.accesskey;"/>
<menuitem
id = "menu-help-todo"
key = "&menu-help-todo.key;"
label = "&menu-help-todo.label;"
command = "menu-help-todo:command"
accesskey = "&menu-help-todo.accesskey;"/>
</menupopup>
</menu>
</menubar>
</toolbox>
<hbox flex="1">
<tabbox id="tabbox-left" orient="vertical" flex="1">
<tabs orient="horizontal">
<tab id="tab-projekt" label="Projekt" />
<tab id="tab-ressource" label="Ressource" />
<tab id="tab-lektor" label="Lektor" />
</tabs>
<tabpanels id="tabpanels-left" flex="1">
<vbox id="box-projekt" />
<tree id="tree-ressource" />
<tree id="tree-lektor" />
</tabpanels>
</tabbox>
<splitter collapse="before" persist="state">
<grippy />
</splitter>
<vbox id="vbox-main" flex="15" />
</hbox>
<statusbar id="status-bar" persist="collapsed">
<statusbarpanel class="statusbarpanel-iconic" id="logo-icon" />
<statusbarpanel>
<toolbarbutton id="statusbarpanel-studiensemester-left"
tooltiptext="1 Studiensemester zurueck"
image="../skin/images/left.png"
oncommand="studiensemesterChange('', -1)"
/>
<toolbarbutton id="statusbarpanel-semester" label="<?php echo $semester_aktuell; ?>" oncommand="getStudiensemesterVariable()"/>
<toolbarbutton id="statusbarpanel-studiensemester-right"
tooltiptext="1 Studiensemester vor"
image="../skin/images/right.png"
oncommand="studiensemesterChange('', 1)"
/>
</statusbarpanel>
<?php
if($rechte->isBerechtigt('system/developer'))
echo '<statusbarpanel label="'.DB_NAME.'"/>';
?>
<statusbarpanel id="statusbarpanel-db_table" label="<?php echo $db_stpl_table; ?>"/>
<statusbarpanel>
<toolbarbutton id="statusbarpanel-ignore_kollision" label="Kollisionscheck <?php echo ($ignore_kollision=='true'?'AUS':'AN'); ?>" <?php echo ($ignore_kollision=='true'?'style="background-color: RED;"':'');?> oncommand="updateignorekollision()"/>
</statusbarpanel>
<statusbarpanel id="statusbarpanel-text" label="<?php echo htmlspecialchars($error_msg); ?>" flex="4" crop="right" />
<statusbarpanel id="progress-panel" class="statusbarpanel-progress">
<progressmeter id="statusbar-progressmeter" class="progressmeter-statusbar" mode="determined" value="0%"/>
</statusbarpanel>
<statusbarpanel class="statusbarpanel-iconic" id="example-status" />
</statusbar>
</window>
File diff suppressed because it is too large Load Diff
+140
View File
@@ -0,0 +1,140 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>
*/
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 '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/projekt/projekttaskdetail.overlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/projekt/projekttasknoten.overlay.xul.php"?>';
?>
<overlay id="ProjekttaskOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/projekt/projekttask.overlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<!-- ************************ -->
<!-- * Projekttask * -->
<!-- ************************ -->
<vbox id="box-projekttask" flex="1" uid="" stg_kz="">
<popupset>
<popup id="projekttask-tree-popup">
<menuitem label="Entfernen" oncommand="LeDelete();" id="projekttask-tree-popup-entf" disabled="false"/>
</popup>
</popupset>
<toolbox>
<toolbar id="projekttask-nav-toolbar">
<toolbarbutton id="projekttask-toolbar-neu" label="Neue Lehreinheit" oncommand="LeNeu();" disabled="true" image="../skin/images/NeuDokument.png" tooltiptext="Neue Lehreinheit anlegen" />
<toolbarbutton id="projekttask-toolbar-del" label="Loeschen" oncommand="LeDelete();" disabled="true" image="../skin/images/DeleteIcon.png" tooltiptext="Lehreinheiten löschen"/>
<toolbarbutton id="projekttask-toolbar-refresh" label="Aktualisieren" oncommand="LvTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<toolbarbutton id="projekttask-toolbar-lehrauftrag" label="Lehrauftrag" oncommand="LvCreateLehrauftrag()" disabled="false" image="../skin/images/person.gif" tooltiptext="Lehrauftrag ausdrucken" hidden="true"/>
<!--<toolbarbutton id="projekttask-toolbar-refresh" label="Load" oncommand="debugload()" disabled="false"/>-->
</toolbar>
</toolbox>
<!-- ************* -->
<!-- * Auswahl * -->
<!-- ************* rdf:null -->
<!-- Bem.: style="visibility:collapse" versteckt eine Spalte -->
<tree id="projekttask-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="../../rdf/projekttask.rdf.php?foo=123" ref="http://www.technikum-wien.at/projekttask/alle-projekttasks"
style="margin:0px;" enableColumnDrag="true"
onselect="LeAuswahl(this);"
persist="height"
onkeypress="LvTreeKeyPress(event)"
flags="dont-build-content"
context="projekttask-tree-popup"
>
<treecols>
<treecol id="projekttask-treecol-bezeichnung" label="Bezeichnung" flex="5" hidden="false" primary="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projekttask/rdf#bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="projekttask-treecol-projektphase_id" label="ProjektphaseID" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projekttask/rdf#projektphase_id"/>
<splitter class="tree-splitter"/>
<treecol id="projekttask-treecol-projekttask_id" label="ProjekttaskID" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projekttask/rdf#projekttask_id"/>
<splitter class="tree-splitter"/>
<treecol id="projekttask-treecol-beschreibung" label="Beschreibung" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projekttask/rdf#beschreibung"/>
<splitter class="tree-splitter"/>
<treecol id="projekttask-treecol-aufwand" label="Aufwand" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projekttask/rdf#sprache" />
<splitter class="tree-splitter"/>
<treecol id="projekttask-treecol-mantis_id" label="MantisID" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/projekttask/rdf#ects" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow dbID="rdf:http://www.technikum-wien.at/projekttask/rdf#projekttask_id" >
<treecell label="rdf:http://www.technikum-wien.at/projekttask/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/projekttask/rdf#projektphase_id"/>
<treecell label="rdf:http://www.technikum-wien.at/projekttask/rdf#projekttask_id"/>
<treecell label="rdf:http://www.technikum-wien.at/projekttask/rdf#beschreibung"/>
<treecell label="rdf:http://www.technikum-wien.at/projekttask/rdf#aufwand"/>
<treecell label="rdf:http://www.technikum-wien.at/projekttask/rdf#mantis_id"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
<splitter collapse="after" persist="state">
<grippy />
</splitter>
<!-- ************ -->
<!-- * Detail * -->
<!-- ************ -->
<vbox flex="1" style="overflow:auto;margin:0px;" persist="height">
<tabbox id="projekttask-tabbox" flex="3" orient="vertical">
<tabs orient="horizontal" id="projekttask-tabs">
<tab id="projekttask-tab-detail" label="Details" />
<tab id="projekttask-tab-mantis" label="Mantis" />
<tab id="projekttask-tab-noten" label="Noten" />
</tabs>
<tabpanels id="projekttask-tabpanels-main" flex="1">
<vbox id="projekttask-detail" />
<vbox id="projekttask-mantis" />
<vbox id="projekttask-noten" />
</tabpanels>
</tabbox>
</vbox>
</vbox>
</overlay>