diff --git a/content/notiz.xml.php b/content/notiz.xml.php index 94a881980..a6aad47df 100755 --- a/content/notiz.xml.php +++ b/content/notiz.xml.php @@ -167,7 +167,7 @@ echo ''; - + '; this.setAttribute('person_id',person_id); this.setAttribute('prestudent_id',prestudent_id); this.setAttribute('bestellung_id',bestellung_id); + this.setAttribute('user',user); var datasource="rdf/notiz.rdf.php?ts="+gettimestamp(); datasource = datasource+"&projekt_kurzbz="+encodeURIComponent(projekt_kurzbz); @@ -191,6 +192,7 @@ echo ''; datasource = datasource+"&person_id="+encodeURIComponent(person_id); datasource = datasource+"&prestudent_id="+encodeURIComponent(prestudent_id); datasource = datasource+"&bestellung_id="+encodeURIComponent(bestellung_id); + datasource = datasource+"&user="+encodeURIComponent(user); //debug('Source:'+datasource); var tree = document.getAnonymousElementByAttribute(this ,'anonid', 'tree-notiz'); @@ -291,11 +293,12 @@ echo ''; var person_id = this.getAttribute('person_id'); var prestudent_id = this.getAttribute('prestudent_id'); var bestellung_id = this.getAttribute('bestellung_id'); + var user = this.getAttribute('user'); if(projekt_kurzbz!='' || projektphase_id!='' || projekttask_id!='' - || uid!='' || person_id!='' || prestudent_id!='' || bestellung_id!='') + || uid!='' || person_id!='' || prestudent_id!='' || bestellung_id!='' || user!='') { - this.LoadNotizTree(projekt_kurzbz,projektphase_id,projekttask_id,uid,person_id,prestudent_id,bestellung_id, true); + this.LoadNotizTree(projekt_kurzbz,projektphase_id,projekttask_id,uid,person_id,prestudent_id,bestellung_id, user); } diff --git a/content/planner.js.php b/content/planner.js.php index d07fcabc9..a6c1c6661 100755 --- a/content/planner.js.php +++ b/content/planner.js.php @@ -73,7 +73,11 @@ function onLoad() //Funktion ueberschreiben damit sie nicht nochmal aufgerufen wird //wenn zb ein IFrame geladen wird onLoad=function() {return false}; - ressourceTreeLoad(); + ressourceTreeLoad(); + + //Notizen des Users laden + notiz = document.getElementById('box-notizen'); + notiz.LoadNotizTree('','','','','','','', getUsername()); } catch(e) { diff --git a/content/planner.overlay.js.php b/content/planner.overlay.js.php index 4b8025237..e59bde300 100755 --- a/content/planner.overlay.js.php +++ b/content/planner.overlay.js.php @@ -27,14 +27,12 @@ var datasourceTreeDokument; function treeProjektmenueSelect() { - //document.getElementById('tempus-lva-filter').value=''; netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); - //var contentFrame=document.getElementById('iframeTimeTableWeek'); var tree=document.getElementById('tree-projektmenue'); // Wenn auf die Ueberschrift geklickt wird, soll nix passieren - if(tree.currentIndex==-1) - return; + if(tree.currentIndex==-1) + return; var bezeichnung = getTreeCellText(tree, "treecol-projektmenue-bezeichnung", tree.currentIndex); var oe=getTreeCellText(tree, "treecol-projektmenue-oe", tree.currentIndex); @@ -42,131 +40,129 @@ function treeProjektmenueSelect() var projekt_phase=getTreeCellText(tree, "treecol-projektmenue-projekt_phase", tree.currentIndex); var projekt_phase_id=getTreeCellText(tree, "treecol-projektmenue-projekt_phase_id", tree.currentIndex); - //alert("Projekt Phase ID "+projekt_phase_id); - - // Neu und Delete Button fuer Projekte und Phasen aktivieren/deaktivieren - if (projekt_kurzbz=='') - { - document.getElementById('toolbarbutton-projektmenue-neu').disabled=false; - document.getElementById('toolbarbutton-projektphase-neu').disabled=true; - } - else - { - document.getElementById('toolbarbutton-projektmenue-neu').disabled=true; - document.getElementById('toolbarbutton-projektphase-neu').disabled=false; - } - - // Projekte neu laden - try - { - var datasource="rdf/projekt.rdf.php?oe="+oe+"&"+gettimestamp(); - //alert("OE "+oe+" | Projekt KurzBZ "+projekt_kurzbz+" | Datasource "+datasource); - var treeProjekt=document.getElementById('tree-projekt'); - //treeProjekt.datasources=datasource; - //Alte DS entfernen - var oldDatasources = treeProjekt.database.GetDataSources(); - while(oldDatasources.hasMoreElements()) - { - treeProjekt.database.RemoveDataSource(oldDatasources.getNext()); - } - - try - { - datasourceTreeProjekt.removeXMLSinkObserver(observerTreeProjekt); - treeProjekt.builder.removeListener(listenerTreeProjekt); - } - catch(e) - {} - - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); - datasourceTreeProjekt = rdfService.GetDataSource(datasource); - datasourceTreeProjekt.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); - datasourceTreeProjekt.QueryInterface(Components.interfaces.nsIRDFXMLSink); - treeProjekt.database.AddDataSource(datasourceTreeProjekt); - datasourceTreeProjekt.addXMLSinkObserver(observerTreeProjekt); - treeProjekt.builder.addListener(listenerTreeProjekt); - } - catch(e) - { - debug("whoops Projekt load failed with exception: "+e); - } - - // Projektphasen neu laden - if(projekt_phase_id=='' && projekt_kurzbz!='') + + //Neu und Delete Button fuer Projekte und Phasen aktivieren/deaktivieren + if (projekt_kurzbz=='') { - //alert("OE "+oe+" | Projekt KurzBZ "+projekt_kurzbz); - try - { - var datasources="rdf/projektphase.rdf.php?"+gettimestamp(); - var ref="http://www.technikum-wien.at/projektphase/"+oe+"/"+projekt_kurzbz; - var treePhase=document.getElementById('tree-projektphase'); - - //Alte DS entfernen - var oldDatasources = treePhase.database.GetDataSources(); - while(oldDatasources.hasMoreElements()) - { - treePhase.database.RemoveDataSource(oldDatasources.getNext()); - } - - try - { - datasourceTreeProjektphase.removeXMLSinkObserver(observerTreeProjektphase); - treePhase.builder.removeListener(ProjektphaseTreeListener); - } - catch(e) - {} - - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); - datasourceTreeProjektphase = rdfService.GetDataSource(datasources); - datasourceTreeProjektphase.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); - datasourceTreeProjektphase.QueryInterface(Components.interfaces.nsIRDFXMLSink); - treePhase.database.AddDataSource(datasourceTreeProjektphase); - datasourceTreeProjektphase.addXMLSinkObserver(observerTreeProjektphase); - treePhase.builder.addListener(ProjektphaseTreeListener); - treePhase.ref=ref; - } - catch(e) - { - debug("whoops Projekttask load failed with exception: "+e); - } + document.getElementById('toolbarbutton-projekt-neu').disabled=false; + document.getElementById('toolbarbutton-projektphase-neu').disabled=true; + } + else + { + document.getElementById('toolbarbutton-projekt-neu').disabled=true; + document.getElementById('toolbarbutton-projektphase-neu').disabled=false; } - // Projekttasks neu laden + //Projekte neu laden + try + { + var datasource="rdf/projekt.rdf.php?oe="+oe+"&"+gettimestamp(); + + var treeProjekt=document.getElementById('tree-projekt'); + //Alte DS entfernen + var oldDatasources = treeProjekt.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + treeProjekt.database.RemoveDataSource(oldDatasources.getNext()); + } + + try + { + datasourceTreeProjekt.removeXMLSinkObserver(observerTreeProjekt); + treeProjekt.builder.removeListener(listenerTreeProjekt); + } + catch(e) + {} + + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + datasourceTreeProjekt = rdfService.GetDataSource(datasource); + datasourceTreeProjekt.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); + datasourceTreeProjekt.QueryInterface(Components.interfaces.nsIRDFXMLSink); + treeProjekt.database.AddDataSource(datasourceTreeProjekt); + datasourceTreeProjekt.addXMLSinkObserver(observerTreeProjekt); + treeProjekt.builder.addListener(listenerTreeProjekt); + } + catch(e) + { + debug("whoops Projekt load failed with exception: "+e); + } + + // Projektphasen neu laden + if(projekt_phase_id=='' && projekt_kurzbz!='') + { + + try + { + var datasources="rdf/projektphase.rdf.php?"+gettimestamp(); + var ref="http://www.technikum-wien.at/projektphase/"+oe+"/"+projekt_kurzbz; + var treePhase=document.getElementById('tree-projektphase'); + + //Alte DS entfernen + var oldDatasources = treePhase.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + treePhase.database.RemoveDataSource(oldDatasources.getNext()); + } + + try + { + datasourceTreeProjektphase.removeXMLSinkObserver(observerTreeProjektphase); + treePhase.builder.removeListener(ProjektphaseTreeListener); + } + catch(e) + {} + + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + datasourceTreeProjektphase = rdfService.GetDataSource(datasources); + datasourceTreeProjektphase.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); + datasourceTreeProjektphase.QueryInterface(Components.interfaces.nsIRDFXMLSink); + treePhase.database.AddDataSource(datasourceTreeProjektphase); + datasourceTreeProjektphase.addXMLSinkObserver(observerTreeProjektphase); + treePhase.builder.addListener(ProjektphaseTreeListener); + treePhase.ref=ref; + } + catch(e) + { + debug("whoops Projektphase load failed with exception: "+e); + } + } + + // Projekttasks neu laden if(projekt_phase_id!='') { try - { - 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 - { - datasourceTreeTask.removeXMLSinkObserver(TaskTreeSinkObserver); - treeTask.builder.removeListener(TaskTreeListener); - } - catch(e) - {} - - var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); - datasourceTreeTask = rdfService.GetDataSource(url); - datasourceTreeTask.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); - datasourceTreeTask.QueryInterface(Components.interfaces.nsIRDFXMLSink); - treeTask.database.AddDataSource(datasourceTreeTask); - datasourceTreeTask.addXMLSinkObserver(TaskTreeSinkObserver); - treeTask.builder.addListener(TaskTreeListener); - } - catch(e) - { - debug("whoops Projekttask load failed with exception: "+e); - } + { + 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 + { + datasourceTreeTask.removeXMLSinkObserver(TaskTreeSinkObserver); + treeTask.builder.removeListener(TaskTreeListener); + } + catch(e) + {} + + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + datasourceTreeTask = rdfService.GetDataSource(url); + datasourceTreeTask.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); + datasourceTreeTask.QueryInterface(Components.interfaces.nsIRDFXMLSink); + treeTask.database.AddDataSource(datasourceTreeTask); + datasourceTreeTask.addXMLSinkObserver(TaskTreeSinkObserver); + treeTask.builder.addListener(TaskTreeListener); + } + catch(e) + { + debug("whoops Projekttask load failed with exception: "+e); + } } document.getElementById('projekttask-toolbar-del').disabled=true; @@ -220,20 +216,7 @@ function treeProjektmenueSelect() document.getElementById('toolbarbutton-projektdokument-neu').disabled=true; document.getElementById('toolbarbutton-projektdokument-zuweisung').disabled=true; } - - //Notizen Laden - if(projekt_phase_id!='') - { - //Notizen zu einer Phase Laden - notiz = document.getElementById('box-notizen'); - notiz.LoadNotizTree('',projekt_phase_id,'','','','','', ''); - } - else if(projekt_kurzbz!='') - { - //Notizen zu einem Projekt Laden - notiz = document.getElementById('box-notizen'); - notiz.LoadNotizTree(projekt_kurzbz,'','','','','','', ''); - } + if(projekt_kurzbz!='') { //Neu Button bei Tasks aktivieren @@ -246,7 +229,9 @@ function treeProjektmenueSelect() } } -// Dialog fuer neues Projekt starten +// **** +// * Dialog fuer neues Projekt starten +// **** function ProjektNeu() { // netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); // Trick 17 @@ -256,7 +241,9 @@ function ProjektNeu() //alert (oe); } -// Dialog fuer neue Ressource starten +// **** +// * Dialog fuer neue Ressource starten +// **** function RessourceNeu() { // netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); // Trick 17 diff --git a/content/planner.overlay.xul.php b/content/planner.overlay.xul.php index 4883436c9..f7c024a4b 100755 --- a/content/planner.overlay.xul.php +++ b/content/planner.overlay.xul.php @@ -35,8 +35,10 @@ echo ' + diff --git a/include/mitarbeiter.class.php b/include/mitarbeiter.class.php index 77fd3b062..c615ec853 100644 --- a/include/mitarbeiter.class.php +++ b/include/mitarbeiter.class.php @@ -735,11 +735,11 @@ class mitarbeiter extends benutzer /** * Laedt die Mitarbeiter deren - * Nachname mit $filter beginnt + * Nachname oder uid mit $filter beginnt */ public function getMitarbeiterFilter($filter) { - $qry = "SELECT * FROM campus.vw_mitarbeiter WHERE nachname ~* '".addslashes($filter).".*'"; + $qry = "SELECT * FROM campus.vw_mitarbeiter WHERE nachname ~* '".addslashes($filter)."' OR uid ~* '".addslashes($filter)."'"; if($this->db_query($qry)) { while($row = $this->db_fetch_object()) diff --git a/include/notiz.class.php b/include/notiz.class.php index 3177201a5..5b34d04f9 100644 --- a/include/notiz.class.php +++ b/include/notiz.class.php @@ -229,15 +229,16 @@ class notiz extends basis_db * @param $person_id * @param $prestudent_id * @param $bestellung_id + * @param $user * @return boolean */ - public function getNotiz($erledigt=null, $projekt_kurzbz=null, $projektphase_id=null, $projekttask_id=null, $uid=null, $person_id=null, $prestudent_id=null, $bestellung_id=null) + public function getNotiz($erledigt=null, $projekt_kurzbz=null, $projektphase_id=null, $projekttask_id=null, $uid=null, $person_id=null, $prestudent_id=null, $bestellung_id=null, $user=null) { $qry = "SELECT * FROM public.tbl_notiz - JOIN public.tbl_notizzuordnung USING(notiz_id) + LEFT JOIN public.tbl_notizzuordnung USING(notiz_id) WHERE 1=1"; if($erledigt) @@ -256,6 +257,8 @@ class notiz extends basis_db $qry.=" AND prestudent_id='".addslashes($prestudent_id)."'"; if($bestellung_id!='') $qry.=" AND bestellung_id='".addslashes($bestellung_id)."'"; + if($user!='') + $qry.=" AND (verfasser_uid='".addslashes($user)."' OR bearbeiter_uid='".addslashes($user)."')"; $qry.=' ORDER BY start, ende, titel'; if($result = $this->db_query($qry)) diff --git a/rdf/lehrveranstaltung_einheiten.rdf.php b/rdf/lehrveranstaltung_einheiten.rdf.php index 9e910c923..56b36f6cb 100644 --- a/rdf/lehrveranstaltung_einheiten.rdf.php +++ b/rdf/lehrveranstaltung_einheiten.rdf.php @@ -131,7 +131,7 @@ if(!$result = $db->db_query($qry)) while($row_lva = $db->db_fetch_object($result)) { //Fachbereichskoordinatoren laden - $qry_fbk = "SELECT kurzbz FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid = + $qry_fbk = "SELECT kurzbz FROM public.tbl_mitarbeiter LEFT JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid) WHERE tbl_benutzer.aktiv AND mitarbeiter_uid = ( SELECT COALESCE(koordinator, uid) as koordinator diff --git a/rdf/mitarbeiter.rdf.php b/rdf/mitarbeiter.rdf.php index 7ba6f3815..0ee99e73d 100644 --- a/rdf/mitarbeiter.rdf.php +++ b/rdf/mitarbeiter.rdf.php @@ -195,7 +195,7 @@ if($lehrveranstaltung_id==null && $filter==null && $mitarbeiter_uid==null) } else { - $filter = utf8_encode($filter); + $filter = $filter; echo ""; if(isset($_GET['optional']) && $_GET['optional']=='true') { diff --git a/rdf/notiz.rdf.php b/rdf/notiz.rdf.php index 56bb3edf1..eb309fc66 100644 --- a/rdf/notiz.rdf.php +++ b/rdf/notiz.rdf.php @@ -52,8 +52,9 @@ $person_id=(isset($_GET['person_id'])?$_GET['person_id']:null); $prestudent_id=(isset($_GET['prestudent_id'])?$_GET['prestudent_id']:null); $bestellung_id=(isset($_GET['bestellung_id'])?$_GET['bestellung_id']:null); $datum_obj = new datum(); +$user=(isset($_GET['user'])?$_GET['user']:null); -if(!$notiz->getNotiz($erledigt, $projekt_kurzbz, $projektphase_id, $projekttask_id, $uid, $person_id, $prestudent_id, $bestellung_id)) +if(!$notiz->getNotiz($erledigt, $projekt_kurzbz, $projektphase_id, $projekttask_id, $uid, $person_id, $prestudent_id, $bestellung_id, $user)) die($notiz->errormsg); foreach($notiz->result as $row)