Filter für Funktionen im FAS hinzugefügt

This commit is contained in:
Andreas Österreicher
2018-06-15 15:08:05 +02:00
parent cf0dedd15e
commit 53098c011c
4 changed files with 798 additions and 746 deletions
+22 -2
View File
@@ -33,7 +33,6 @@ var FunktionenTreeDatasource=''; // Datasource des Adressen Trees
var FunktionenSelectID=''; var FunktionenSelectID='';
var FunktionenUID=null; var FunktionenUID=null;
var FunktionBezeichnungChanged=false; var FunktionBezeichnungChanged=false;
<?php <?php
// JS-Variable anlegen mit einer Uebersetzungstabellle // JS-Variable anlegen mit einer Uebersetzungstabellle
@@ -85,6 +84,25 @@ var FunktionenTreeListener =
}; };
// ********** FUNKTIONEN ********** // // ********** FUNKTIONEN ********** //
function FunktionFilter()
{
var filter = document.getElementById('funktionen-button-filter')
var state = document.getElementById('funktionen-filter-state')
if(state.value == 'alle')
{
state.value = 'offene';
loadFunktionen(FunktionenUID);
filter.label = 'Alle anzeigen';
setVariable('fasfunktionfilter', 'offene');
}
else
{
state.value = 'alle';
loadFunktionen(FunktionenUID);
filter.label = 'Nur aktuelle anzeigen';
setVariable('fasfunktionfilter', 'alle')
}
}
// **** // ****
// * Laedt die Trees // * Laedt die Trees
@@ -94,9 +112,11 @@ function loadFunktionen(uid)
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
FunktionenUID = uid; FunktionenUID = uid;
var filter = document.getElementById('funktionen-filter-state');
//Adressen laden //Adressen laden
url = "<?php echo APP_ROOT; ?>rdf/benutzerfunktion.rdf.php?uid="+uid+"&"+gettimestamp(); url = "<?php echo APP_ROOT; ?>rdf/benutzerfunktion.rdf.php?uid="+uid+"&filter="+filter.value+"&"+gettimestamp();
var tree=document.getElementById('funktion-tree'); var tree=document.getElementById('funktion-tree');
try try
+43 -17
View File
@@ -27,6 +27,9 @@ header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml"); header("Content-type: application/vnd.mozilla.xul+xml");
include('../config/vilesci.config.inc.php'); include('../config/vilesci.config.inc.php');
include('../include/functions.inc.php');
include('../include/variable.class.php');
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n"; echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>'; echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';
@@ -38,13 +41,20 @@ if(isset($_GET['uid']))
else else
die('Parameter uid muss uebergeben werden'); die('Parameter uid muss uebergeben werden');
$user = get_uid();
$variable = new variable();
$variable->loadVariables($user);
if ($variable->variable->fasfunktionfilter == 'alle')
$filtertext = 'Nur aktuelle anzeigen';
else
$filtertext = 'Alle anzeigen';
?> ?>
<window id="funktionen-window" title="Funktionen" <window id="funktionen-window" title="Funktionen"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="loadFunktionen('<?php echo $uid; ?>');" onload="loadFunktionen('<?php echo $uid; ?>');"
> >
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/funktionen.js.php" /> <script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/funktionen.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" /> <script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<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/fasoverlay.js.php" />
@@ -52,62 +62,76 @@ else
<hbox flex="1"> <hbox flex="1">
<!-- FUNKTIONEN --> <!-- FUNKTIONEN -->
<vbox flex="4">
<hbox>
<button id="funktionen-button-filter" oncommand="FunktionFilter()" label="<?php echo $filtertext;?>"/>
<textbox hidden="true" id="funktionen-filter-state" value="<?php echo $variable->variable->fasfunktionfilter; ?>" />
<spacer flex="1" />
</hbox>
<tree id="funktion-tree" seltype="single" hidecolumnpicker="false" flex="2" <tree id="funktion-tree" seltype="single" hidecolumnpicker="false" flex="2"
datasources="rdf:null" ref="http://www.technikum-wien.at/bnfunktion/liste" datasources="rdf:null" ref="http://www.technikum-wien.at/bnfunktion/liste"
onclick="FunktionBearbeiten()" onselect="FunktionBearbeiten()"
flags="dont-build-content" flags="dont-build-content"
enableColumnDrag="true" enableColumnDrag="true"
style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100" style="margin-left:10px;margin-right:10px;margin-bottom:5px;" height="100"
persist="hidden, height" persist="hidden, height"
> >
<treecols> <treecols>
<treecol id="funktion-treecol-funktion" label="Funktion" flex="2" hidden="false" <treecol id="funktion-treecol-funktion" label="Funktion" flex="1" hidden="false"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#funktion" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#funktion"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-oe_kurzbz" label="Organisationseinheit" flex="1" hidden="false" <treecol id="funktion-treecol-oe_kurzbz" label="Organisationseinheit" flex="1" hidden="false"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#studiengang" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#organisationseinheit"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-semester" label="Semester" flex="1" hidden="false" <treecol id="funktion-treecol-semester" label="Semester" flex="1" hidden="false"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#semester" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#semester"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-bezeichnung" label="Bezeichnung" flex="1" hidden="false" <treecol id="funktion-treecol-bezeichnung" label="Bezeichnung" flex="1" hidden="false"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#bezeichnung" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#bezeichnung"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-fachbereich" label="Institut" flex="1" hidden="false" <treecol id="funktion-treecol-fachbereich" label="Institut" flex="1" hidden="false"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#fachbereich_kurzbz" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#fachbereich_kurzbz"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-uid" label="uid" flex="1" hidden="true" <treecol id="funktion-treecol-uid" label="uid" flex="1" hidden="true"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#uid" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#uid"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-benutzerfunktion_id" label="BenutzerfunktionID" flex="1" hidden="true" <treecol id="funktion-treecol-benutzerfunktion_id" label="BenutzerfunktionID" flex="1" hidden="true"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#benutzerfunktion_id" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#benutzerfunktion_id"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-studiengang_kz" label="StudiengangKZ" flex="1" hidden="true" <treecol id="funktion-treecol-studiengang_kz" label="StudiengangKZ" flex="1" hidden="true"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#studiengang_kz" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#studiengang_kz"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-funktion_kurzbz" label="FunktionKurzBz" flex="1" hidden="true" <treecol id="funktion-treecol-funktion_kurzbz" label="FunktionKurzBz" flex="1" hidden="true"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#funktion_kurzbz" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#funktion_kurzbz"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-datum_von" label="GueltigVon" flex="1" hidden="false" <treecol id="funktion-treecol-datum_von" label="GueltigVon" flex="1" hidden="false"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_von_iso" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_von_iso"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-datum_bis" label="GueltigBis" flex="1" hidden="false" <treecol id="funktion-treecol-datum_bis" label="GueltigBis" flex="1" hidden="false"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_bis_iso" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_bis_iso"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
<treecol id="funktion-treecol-wochenstunden" label="Wochenstunden" flex="1" hidden="false" <treecol id="funktion-treecol-wochenstunden" label="Wochenstunden" flex="1" hidden="true"
class="sortDirectionIndicator" class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#wochenstunden" onclick="FunktionTreeSort()"/> sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#wochenstunden"/>
<splitter class="tree-splitter"/>
<treecol id="funktion-treecol-datum_von_iso" label="GueltigVonISO" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_von_iso"/>
<splitter class="tree-splitter"/>
<treecol id="funktion-treecol-datum_bis_iso" label="GueltigBisISO" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_bis_iso"/>
<splitter class="tree-splitter"/> <splitter class="tree-splitter"/>
</treecols> </treecols>
@@ -128,13 +152,15 @@ else
<treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_von" /> <treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_von" />
<treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_bis" /> <treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_bis" />
<treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#wochenstunden" /> <treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#wochenstunden" />
<treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_von_iso" />
<treecell label="rdf:http://www.technikum-wien.at/bnfunktion/rdf#datum_bis_iso" />
</treerow> </treerow>
</treeitem> </treeitem>
</treechildren> </treechildren>
</rule> </rule>
</template> </template>
</tree> </tree>
</vbox>
<vbox flex="1"> <vbox flex="1">
<hbox> <hbox>
<button id="funktion-button-neu" label="Neu" oncommand="FunktionNeu();" disabled="true"/> <button id="funktion-button-neu" label="Neu" oncommand="FunktionNeu();" disabled="true"/>
+2
View File
@@ -280,6 +280,8 @@ class variable extends basis_db
if (!isset($this->variable->allow_lehrstunde_drop)) if (!isset($this->variable->allow_lehrstunde_drop))
$this->variable->allow_lehrstunde_drop='false'; $this->variable->allow_lehrstunde_drop='false';
if (!isset($this->variable->fasfunktionfilter))
$this->variable->fasfunktionfilter='alle';
return true; return true;
} }
+5 -1
View File
@@ -47,6 +47,7 @@ echo '
'; ';
$uid = (isset($_GET['uid'])?$_GET['uid']:''); $uid = (isset($_GET['uid'])?$_GET['uid']:'');
$benutzerfunktion_id = (isset($_GET['benutzerfunktion_id'])?$_GET['benutzerfunktion_id']:''); $benutzerfunktion_id = (isset($_GET['benutzerfunktion_id'])?$_GET['benutzerfunktion_id']:'');
$filter = (isset($_GET['filter'])?$_GET['filter']:'');
$stg_arr = array(); $stg_arr = array();
$fkt_arr = array(); $fkt_arr = array();
$datum_obj = new datum(); $datum_obj = new datum();
@@ -60,7 +61,10 @@ $db = new basis_db();
if($uid!='') if($uid!='')
{ {
$qry = "SELECT * FROM public.tbl_benutzerfunktion WHERE uid=".$db->db_add_param($uid)." ORDER BY funktion_kurzbz"; $qry = "SELECT * FROM public.tbl_benutzerfunktion WHERE uid=".$db->db_add_param($uid);
if($filter == 'offene')
$qry .= " AND (datum_bis>=now() OR datum_bis is null)";
$qry.=" ORDER BY funktion_kurzbz";
} }
else else
{ {