Tempus Filter nach LektorIn

This commit is contained in:
Manfred Kindl
2019-07-26 13:48:09 +02:00
parent 9faa2e0077
commit 81947b3df2
4 changed files with 121 additions and 47 deletions
@@ -63,6 +63,61 @@ function onLVAFilter()
vboxLehrveranstalungPlanung.setAttribute('datasources',datasources);
}
// LVA-Panel aktualisieren
function onLektorRefresh()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var treeLektorenTree=document.getElementById('tree-lektor');
//var datasources=vboxLehrveranstalungPlanung.getAttribute('datasources');
var url = '<?php echo APP_ROOT; ?>rdf/mitarbeiter.rdf.php?user=user&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var datasource = rdfService.GetDataSource(url);
var oldDatasources = treeLektorenTree.GetDataSources();
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treeLektorenTree.database.RemoveDataSource(oldDatasources);
treeLektorenTree.database.AddDataSource(datasource);
if(typeof(filter)!='undefined')
treeLektorenTree.builder.rebuild();
//vboxLehrveranstalungPlanung.setAttribute('datasources',datasources+"&bla=");
//datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/liste"
}
// Lektorenliste filtern
function onLektorFilter()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var filter=document.getElementById('tempus-lektor-filter').value;
var treeLektorenTree=document.getElementById('tree-lektor');
if(filter.length>2)
{
var url = '<?php echo APP_ROOT; ?>rdf/mitarbeiter.rdf.php?filter='+encodeURIComponent(filter)+'&'+gettimestamp();
var oldDatasources = treeLektorenTree.database.GetDataSources();
//Refresh damit die entfernten DS auch wirklich entfernt werden
treeLektorenTree.builder.rebuild();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
if(typeof(filter)=='undefined')
var datasource = rdfService.GetDataSource(url);
else
var datasource = rdfService.GetDataSourceBlocking(url);
datasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
datasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
treeLektorenTree.database.RemoveDataSource(oldDatasources.getNext());
treeLektorenTree.database.AddDataSource(datasource);
if(typeof(filter)!='undefined')
treeLektorenTree.builder.rebuild();
}
}
// Liefert die Sortierreihenfolge der Lehrstunden
function LehrstundeGetSortOrder()
{
+1 -1
View File
@@ -301,7 +301,7 @@ echo '<?xml-stylesheet href="datepicker/datepicker.css" type="text/css"?>';
<tree id="tree-verband" />
<tree id="tree-ort" />
<vbox id="vbox-fachbereich" />
<tree id="tree-lektor" />
<vbox id="vbox-lektor" />
</tabpanels>
</tabbox>
<splitter collapse="before" persist="state">
+62 -45
View File
@@ -119,52 +119,69 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/stpl-semester-overlay.xu
</rule>
</template>
</tree>
<tree id="tree-lektor" onmouseup="onLektorSelect(event);"
seltype="multi" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
ondrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragdrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,LektorFunktionDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,LektorFunktionDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,LektorFunktionDDObserver)"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/liste"
context="fasoverlay-lektor-tree-popup"
>
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vorname" label="Vorname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="studiengang_kz" label="Studiengangkz" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-lektor-fixangestellt" label="Fixangestellt" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#studiengang_kz"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#fixangestellt"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox id="vbox-lektor">
<hbox>
<!-- <spacer flex="1" />-->
<toolbox>
<toolbar id="toolbarLektorTreeFilter" tbautostretch="always" persist="collapsed">
<toolbarbutton id="toolbarbuttonLektorTreeRefresh"
image="../skin/images/refresh.png"
oncommand="onLektorRefresh();"
tooltiptext="Neu laden"
/>
<textbox id="tempus-lektor-filter" size="30" oninput="onLektorFilter()" flex="1"/>
</toolbar>
</toolbox>
<!-- <spacer flex="1" />-->
</hbox>
<tree id="tree-lektor" onmouseup="onLektorSelect(event);"
seltype="multi" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
ondrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragdrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,LektorFunktionDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,LektorFunktionDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,LektorFunktionDDObserver)"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/liste"
context="fasoverlay-lektor-tree-popup"
>
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vorname" label="Vorname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="studiengang_kz" label="Studiengangkz" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="tree-lektor-fixangestellt" label="Fixangestellt" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#studiengang_kz"/>
<treecell properties="Lektor_rdf:http://www.technikum-wien.at/mitarbeiter/rdf#aktiv" label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#fixangestellt"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</vbox>
<vbox id="vbox-main">
<popupset>
+3 -1
View File
@@ -833,7 +833,9 @@ class mitarbeiter extends benutzer
*/
public function getMitarbeiterFilter($filter)
{
$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE lower(nachname) ~* lower(".$this->db_add_param($filter).") OR uid ~* ".$this->db_add_param($filter).';';
$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE lower(nachname) ~* lower(".$this->db_add_param($filter).") OR uid ~* ".$this->db_add_param($filter);
$qry .= " ORDER BY nachname, vorname, kurzbz;";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())