diff --git a/content/projekt/projekttask.overlay.js.php b/content/projekt/projekttask.overlay.js.php index b8c961bc9..8ccc3a8b3 100755 --- a/content/projekt/projekttask.overlay.js.php +++ b/content/projekt/projekttask.overlay.js.php @@ -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 = '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=''; - */ + //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 = '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='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='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; } \ No newline at end of file diff --git a/rdf/projekttask.rdf.php b/rdf/projekttask.rdf.php index 00d3f900c..65e21ab6c 100755 --- a/rdf/projekttask.rdf.php +++ b/rdf/projekttask.rdf.php @@ -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); ?> result);$i++) $currentPT=$projekttask->projekttask_id; $nextPT=(($iresult)-1)?$projekttask_obj->result[$i+1]->projekttask_id:null); - $descr.=' + $descr.=' '.$projekttask->projekttask_id.' '.$projekttask->projektphase_id.' '.$projekttask->bezeichnung.' @@ -60,18 +69,18 @@ for ($i=0;$iresult);$i++) '."\n"; if ($lastPT!=$currentPT) - $sequenz.=' + $sequenz.=' - '."\n"; + '."\n"; // Neue OE oder letzter Datensatz? Dann muss Sequenz geschlossen werden. if ($nextPT!=$currentPT || $i==count($projekttask_obj->result)-1) { - $sequenz.=' '."\n"; + $sequenz.=' '."\n"; $sequenz.=' '."\n"; } elseif ($lastPT==$currentPT || $nextPT==$currentPT || count($projekttask_obj->result)==1) - $sequenz.=''."\n"; + $sequenz.=''."\n"; $lastPT=$currentPT; } $sequenz=''."\n\t".$sequenz.'