Laden von Tasks hinzugefügt

This commit is contained in:
Andreas Österreicher
2011-08-11 14:09:24 +00:00
parent c8c8d95ba9
commit d513f478df
2 changed files with 50 additions and 216 deletions
+34 -209
View File
@@ -93,76 +93,20 @@ function TaskTreeRefresh()
// ****
function TaskNeu()
{
// Trick 17 (sonst gibt's ein Permission denied)
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
alert('Neuer Task - noch nicht implementiert');
/*
var tree = document.getElementById('lehrveranstaltung-tree');
//Details zuruecksetzen
LeDetailReset();
//Detail Tab als aktiv setzen
document.getElementById('lehrveranstaltung-tabbox').selectedIndex=0;
//Lektor-Tab und GruppenTree ausblenden
document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe').hidden=true;
document.getElementById('lehrveranstaltung-detail-label-lehreinheitgruppe').hidden=true;
document.getElementById('lehrveranstaltung-tab-lektor').collapsed=true;
//Lehrveranstaltungs_id holen
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrveranstaltung_id"] : "lehrveranstaltung-treecol-lehrveranstaltung_id";
var lehrveranstaltung_id=tree.view.getCellText(tree.currentIndex,col);
//Lehrform setzen
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-lehrform"] : "lehrveranstaltung-treecol-lehrform";
var lehrform_kurzbz=tree.view.getCellText(tree.currentIndex,col);
//Lehrfach drop down setzen
//ID in globale Variable speichern
LeDetailLehrfach_id='';
var col = tree.columns ? tree.columns["lehrveranstaltung-treecol-bezeichnung"] : "lehrveranstaltung-treecol-bezeichnung";
LeDetailLehrfach_label=tree.view.getCellText(tree.currentIndex,col);
lehrfachmenulist = document.getElementById('lehrveranstaltung-detail-menulist-lehrfach');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
//Entfernen der alten Datasources
var oldDatasources = lehrfachmenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
lehrfachmenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
lehrfachmenulist.builder.rebuild();
//Url zusammenbauen
var url = '<?php echo APP_ROOT;?>rdf/lehrfach.rdf.php?lehrveranstaltung_id='+lehrveranstaltung_id+'&'+gettimestamp();
//RDF holen
var newDs = rdfService.GetDataSource(url);
lehrfachmenulist.database.AddDataSource(newDs);
//SinkObserver hinzufuegen
var sink = newDs.QueryInterface(Components.interfaces.nsIRDFXMLSink);
sink.addXMLSinkObserver(LeDetailLehrfachSinkObserver);
document.getElementById('lehrveranstaltung-detail-textbox-lehrveranstaltung').value=lehrveranstaltung_id;
document.getElementById('lehrveranstaltung-detail-checkbox-new').checked=true;
document.getElementById('lehrveranstaltung-detail-textbox-stundenblockung').value='2';
document.getElementById('lehrveranstaltung-detail-textbox-wochenrythmus').value='1';
if(lehrform_kurzbz=='')
lehrform_kurzbz='UE';
document.getElementById('lehrveranstaltung-detail-menulist-lehrform').value=lehrform_kurzbz;
var stsem = getStudiensemester();
document.getElementById('lehrveranstaltung-detail-menulist-studiensemester').value=stsem;
tree = document.getElementById('tree-projektmenue');
//Defaultwert fuer Anmerkung
document.getElementById('lehrveranstaltung-detail-textbox-anmerkung').value='<?php echo str_replace("'","\'",LEHREINHEIT_ANMERKUNG_DEFAULT);?>';
*/
//Projektphase_id holen
var projektphase_id = getTreeCellText(tree, "treecol-projektmenue-projekt_phase_id", tree.currentIndex);
if(projektphase_id=='')
{
alert('Bitte markieren sie im Projektmenue zuerst eine Projektphase');
return false;
}
//Details zuruecksetzen
TaskDetailReset();
document.getElementById('textbox-projekttaskdetail-projektphase_id').value=projektphase_id;
}
// ****
// * Selectiert die Lektorzuordnung nachdem der Tree
@@ -248,7 +192,7 @@ function TaskDetailReset()
document.getElementById('textbox-projekttaskdetail-projekttask_id').value='';
document.getElementById('textbox-projekttaskdetail-projektphase_id').value='';
document.getElementById('textbox-projekttask-detail-bezeichnung').value='';
document.getElementById('textbox-projekttask-detail-beschreibung').checked=true;
document.getElementById('textbox-projekttask-detail-beschreibung').value='';
document.getElementById('textbox-projekttask-detail-aufwand').value='';
document.getElementById('textbox-projekttask-detail-mantis_id').value='';
}
@@ -352,156 +296,37 @@ function TaskAuswahl()
alert(e);
return false;
}
alert("Details Laden von Task "+id);
/*
var req = new phpRequest('../rdf/lehreinheit.rdf.php','','');
req.add('lehreinheit_id',lehreinheit_id);
var req = new phpRequest('../rdf/projekttask.rdf.php','','');
req.add('projekttask_id',id);
var response = req.execute();
// Datasource holen
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/lehreinheit/liste');
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/projekttask/alle-projekttasks');
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/lehreinheit/" + lehreinheit_id);
var subject = rdfService.GetResource("http://www.technikum-wien.at/projekttask/" + id);
var predicateNS = "http://www.technikum-wien.at/lehreinheit/rdf";
var predicateNS = "http://www.technikum-wien.at/projekttask/rdf";
//Daten holen
unr = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#unr" ));
lvnr=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#lvnr" ));
sprache=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#sprache" ));
lehrveranstaltung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#lehrveranstaltung_id" ));
lehrfach=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#lehrfach_id" ));
raumtyp=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#raumtyp" ));
raumtyp_alt=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#raumtypalternativ" ));
lehre=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#lehre" ));
stundenblockung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#stundenblockung" ));
wochenrythmus=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#wochenrythmus" ));
start_kw=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#start_kw" ));
anmerkung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anmerkung" ));
studiensemester=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiensemester_kurzbz" ));
lehrform=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#lehrform_kurzbz" ));
anzahl_studenten=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#anzahl_studenten" ));
//Lehrfach drop down setzen
//ID in globale Variable speichern
LeDetailLehrfach_id=lehrfach;
lehrfachmenulist = document.getElementById('lehrveranstaltung-detail-menulist-lehrfach');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
//Entfernen der alten Datasources
var oldDatasources = lehrfachmenulist.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
lehrfachmenulist.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
lehrfachmenulist.builder.rebuild();
//Url zusammenbauen
var url = '<?php echo APP_ROOT;?>rdf/lehrfach.rdf.php?lehrveranstaltung_id='+lehrveranstaltung+'&lehrfach_id='+lehrfach+'&'+gettimestamp();
//RDF holen
var newDs = rdfService.GetDataSourceBlocking(url);
newDs.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
newDs.QueryInterface(Components.interfaces.nsIRDFXMLSink);
lehrfachmenulist.database.AddDataSource(newDs);
lehrfachmenulist.builder.rebuild();
//SinkObserver hinzufuegen
//var sink = newDs.QueryInterface(Components.interfaces.nsIRDFXMLSink);
//sink.addXMLSinkObserver(LeDetailLehrfachSinkObserver);
var projekttask_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#projekttask_id" ));
var projektphase_id=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#projektphase_id" ));
var bezeichnung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#bezeichnung" ));
var beschreibung=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#beschreibung" ));
var aufwand=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#aufwand" ));
var mantis_id=getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#mantis_id" ));
//Daten den Feldern zuweisen
document.getElementById('lehrveranstaltung-detail-textbox-unr').value=unr;
document.getElementById('lehrveranstaltung-detail-textbox-lvnr').value=lvnr;
document.getElementById('lehrveranstaltung-detail-textbox-lehrveranstaltung').value=lehrveranstaltung;
if(lehre=='Ja')
document.getElementById('lehrveranstaltung-detail-checkbox-lehre').checked=true;
else
document.getElementById('lehrveranstaltung-detail-checkbox-lehre').checked=false;
document.getElementById('lehrveranstaltung-detail-textbox-stundenblockung').value=stundenblockung;
document.getElementById('lehrveranstaltung-detail-textbox-wochenrythmus').value=wochenrythmus;
document.getElementById('lehrveranstaltung-detail-textbox-startkw').value=start_kw;
document.getElementById('lehrveranstaltung-detail-textbox-anmerkung').value=anmerkung;
document.getElementById('lehrveranstaltung-detail-menulist-sprache').value=sprache;
document.getElementById('lehrveranstaltung-detail-menulist-lehrfach').value=lehrfach;
document.getElementById('lehrveranstaltung-detail-menulist-raumtyp').value=raumtyp;
document.getElementById('lehrveranstaltung-detail-menulist-raumtypalternativ').value=raumtyp_alt;
document.getElementById('lehrveranstaltung-detail-menulist-studiensemester').value=studiensemester;
document.getElementById('lehrveranstaltung-detail-menulist-lehrform').value=lehrform;
document.getElementById('lehrveranstaltung-detail-checkbox-new').checked=false;
document.getElementById('lehrveranstaltung-detail-textbox-lehreinheit_id').value=lehreinheit_id;
document.getElementById('lehrveranstaltung-detail-groupbox-caption').label='Details - Anzahl TeilnehmerInnen: '+anzahl_studenten;
//Lehreinheitmitarbeiter tree setzen
url='<?php echo APP_ROOT;?>rdf/lehreinheitmitarbeiter.rdf.php?lehreinheit_id='+lehreinheit_id+"&"+gettimestamp();
try
{
lektortree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitmitarbeiter');
try
{
lektortree.builder.removeListener(LvLektorTreeListener);
}
catch(e)
{}
//Alte DS entfernen
var oldDatasources = lektortree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
lektortree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
lektortree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
LeDetailLektorDatasource = rdfService.GetDataSource(url);
LeDetailLektorDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
LeDetailLektorDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
lektortree.database.AddDataSource(LeDetailLektorDatasource);
lektortree.builder.addListener(LvLektorTreeListener);
}
catch(e)
{
debug(e);
}
//Lehreinheitgruppe tree setzen
url='<?php echo APP_ROOT; ?>rdf/lehreinheitgruppe.rdf.php?lehreinheit_id='+lehreinheit_id+"&"+gettimestamp();
try
{
gruppentree = document.getElementById('lehrveranstaltung-detail-tree-lehreinheitgruppe');
//Alte DS entfernen
var oldDatasources = gruppentree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
gruppentree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
gruppentree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
LeDetailGruppeDatasource = rdfService.GetDataSource(url);
LeDetailGruppeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
LeDetailGruppeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
gruppentree.database.AddDataSource(LeDetailGruppeDatasource);
}
catch(e)
{
debug(e);
}
*/
document.getElementById('textbox-projekttaskdetail-projekttask_id').value=projekttask_id;
document.getElementById('textbox-projekttaskdetail-projektphase_id').value=projektphase_id;
document.getElementById('textbox-projekttask-detail-bezeichnung').value=bezeichnung;
document.getElementById('textbox-projekttask-detail-beschreibung').value=beschreibung;
document.getElementById('textbox-projekttask-detail-aufwand').value=aufwand;
document.getElementById('textbox-projekttask-detail-mantis_id').value=mantis_id;
}
+16 -7
View File
@@ -26,13 +26,22 @@ require_once('../include/projekttask.class.php');
$rdf_url='http://www.technikum-wien.at/projekttask/';
$projekttask_obj = new projekttask();
$projektphase_id=4; //zum Testen, ansonsten null
if (isset($_GET['projektphase_id']))
{
$projektphase_id=$_GET['projektphase_id'];
$projekttask_obj->getProjekttasks($projektphase_id);
}
if(isset($_GET['projekttask_id']))
{
$projekttask_obj->load($_GET['projekttask_id']);
$projekttask_obj->result[] = $projekttask_obj;
}
$projekttask_obj = new projekttask();
$projekttask_obj->getProjekttasks($projektphase_id);
//var_dump($projekttask_obj);
?>
<RDF:RDF
@@ -50,7 +59,7 @@ for ($i=0;$i<count($projekttask_obj->result);$i++)
$currentPT=$projekttask->projekttask_id;
$nextPT=(($i<count($projekttask_obj->result)-1)?$projekttask_obj->result[$i+1]->projekttask_id:null);
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekttask->projektphase_id.'/'.$projekttask->projekttask_id.'" >
$descr.='<RDF:Description RDF:about="'.$rdf_url.$projekttask->projekttask_id.'" >
<PROJEKTTASK:projekttask_id>'.$projekttask->projekttask_id.'</PROJEKTTASK:projekttask_id>
<PROJEKTTASK:projektphase_id>'.$projekttask->projektphase_id.'</PROJEKTTASK:projektphase_id>
<PROJEKTTASK:bezeichnung>'.$projekttask->bezeichnung.'</PROJEKTTASK:bezeichnung>
@@ -60,18 +69,18 @@ for ($i=0;$i<count($projekttask_obj->result);$i++)
</RDF:Description>'."\n";
if ($lastPT!=$currentPT)
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekttask->projektphase_id.'/'.$projekttask->projekttask_id.'" />
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekttask->projekttask_id.'" />
<RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.$projekttask->projektphase_id.'/'.$projekttask->projekttask_id.'" >'."\n";
<RDF:Seq RDF:about="'.$rdf_url.$projekttask->projekttask_id.'" >'."\n";
// Neue OE oder letzter Datensatz? Dann muss Sequenz geschlossen werden.
if ($nextPT!=$currentPT || $i==count($projekttask_obj->result)-1)
{
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekttask->projektphase_id.'/'.$projekttask->projekttask_id.'" />'."\n";
$sequenz.=' <RDF:li RDF:resource="'.$rdf_url.$projekttask->projekttask_id.'" />'."\n";
$sequenz.=' </RDF:Seq>
</RDF:li>'."\n";
}
elseif ($lastPT==$currentPT || $nextPT==$currentPT || count($projekttask_obj->result)==1)
$sequenz.='<RDF:li RDF:resource="'.$rdf_url.$projekttask->projektphase_id.'/'.$projekttask->projekttask_id.'" />'."\n";
$sequenz.='<RDF:li RDF:resource="'.$rdf_url.$projekttask->projekttask_id.'" />'."\n";
$lastPT=$currentPT;
}
$sequenz='<RDF:Seq about="'.$rdf_url.'alle-projekttasks">'."\n\t".$sequenz.'