Funktionen Modul FASo

This commit is contained in:
Andreas Österreicher
2007-06-29 11:46:06 +00:00
parent 95b6a8a076
commit 26d992fac8
11 changed files with 1667 additions and 47 deletions
+1 -1
View File
@@ -275,7 +275,7 @@ echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';*/
<?php
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('lva-verwaltung'))
{
echo '<tab id="tab-interessenten" label="Interessenten"/>';
echo '<tab id="tab-interessenten" label="PreStudent"/>';
echo '<tab id="tab-studenten" label="Studenten"/>';
echo '<tab id="tab-lfvt" label="Lehrveranstaltungen" />';
}
@@ -23,8 +23,9 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<groupbox id="mitarbeiter-detail-groupbox-verwendung" flex="1">
<caption label="Verwendung" />
<hbox>
<tree id="mitarbeiter-tree-verwendung" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/verwendung/alle"
datasources="rdf:null" ref="http://www.technikum-wien.at/verwendung/liste"
onselect="MitarbeiterVerwendungSelect();"
flags="dont-build-content"
enableColumnDrag="true"
@@ -32,66 +33,70 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
persist="hidden, height"
>
<treecols>
<treecol id="mitarbeiter-treecol-ba1bez" label="Beschaeftigungsart 1" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-ba1bez" label="Beschaeftigungsart 1" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#ba1bez" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ba2bez" label="Beschaeftigungsart 2" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-ba2bez" label="Beschaeftigungsart 2" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#ba2bez" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ausmass" label="Ausmass" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-ausmass" label="Ausmass" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#ausmass" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-verwendung" label="Verwendung" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-verwendung" label="Verwendung" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#verwendung" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-hauptberuf" label="Hauptberuf" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-hauptberuf" label="Hauptberuf" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#hauptberuf" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-hauptberuflich" label="Hauptberuflich" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-hauptberuflich" label="Hauptberuflich" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#hauptberuflich" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-habilitation" label="Habilitation" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-habilitation" label="Habilitation" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#habilitation" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-beginn" label="Beginn" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-beginn" label="Beginn" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#beginn" onclick="MitarbeiterTreeVerwendungSort()"/>
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#beginn_iso" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ende" label="Ende" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-verwendung-treecol-ende" label="Ende" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#ende" onclick="MitarbeiterTreeVerwendungSort()"/>
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#ende_iso" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ba1code" label="ba1code" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-verwendung-treecol-ba1code" label="ba1code" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#ba1code" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-ba2code" label="ba2code" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-verwendung-treecol-ba2code" label="ba2code" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#ba2code" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-beschausmasscode" label="beschausmasscode" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-verwendung-treecol-beschausmasscode" label="beschausmasscode" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#beschausmasscode" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-verwendungcode" label="verwendungcode" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-verwendung-treecol-verwendungcode" label="verwendungcode" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#verwendungcode" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-mitarbeiter_uid" label="mitarbeiter_uid" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-verwendung-treecol-mitarbeiter_uid" label="mitarbeiter_uid" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#mitarbeiter_uid" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-treecol-hauptberufcode" label="hauptberufcode" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-verwendung-treecol-hauptberufcode" label="hauptberufcode" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#hauptberufcode" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-verwendung-treecol-bisverwendung_id" label="bisverwendungID" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/verwendung/rdf#bisverwendung_id" onclick="MitarbeiterTreeVerwendungSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
@@ -114,41 +119,113 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<treecell label="rdf:http://www.technikum-wien.at/verwendung/rdf#verwendungcode" />
<treecell label="rdf:http://www.technikum-wien.at/verwendung/rdf#mitarbeiter_uid" />
<treecell label="rdf:http://www.technikum-wien.at/verwendung/rdf#hauptberufcode" />
<treecell label="rdf:http://www.technikum-wien.at/verwendung/rdf#bisverwendung_id" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id="mitarbeiter-verwendung-button-neu" label="Neu" disabled="true" />
<button id="mitarbeiter-verwendung-button-bearbeiten" label="Bearbeiten" disabled="true" />
<button id="mitarbeiter-verwendung-button-loeschen" label="Loeschen" disabled="true" />
</vbox>
</hbox>
<groupbox id="mitarbeiter-detail-groupbox-funktion" flex="1">
<caption label="Funktion" />
<hbox>
<tree id="mitarbeiter-tree-funktion" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/bisfunktion/liste"
onselect="MitarbeiterFunktionSelect();"
flags="dont-build-content"
enableColumnDrag="true"
style="margin:5px;"
persist="hidden, height"
>
<treecols>
<treecol id="mitarbeiter-funktion-treecol-studiengang" label="Studiengang" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bisfunktion/rdf#studiengang" onclick="MitarbeiterTreeFunktionSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-funktion-treecol-sws" label="SWS" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bisfunktion/rdf#sws" onclick="MitarbeiterTreeFunktionSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-funktion-treecol-bisverwendung_id" label="VerwendungID" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bisfunktion/rdf#bisverwendung_id" onclick="MitarbeiterTreeFunktionSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-funktion-treecol-studiengang_kz" label="Studiengang_kz" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/bisfunktion/rdf#studiengang_kz" onclick="MitarbeiterTreeFunktionSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/bisfunktion/rdf#studiengang" />
<treecell label="rdf:http://www.technikum-wien.at/bisfunktion/rdf#sws" />
<treecell label="rdf:http://www.technikum-wien.at/bisfunktion/rdf#bisverwendung_id" />
<treecell label="rdf:http://www.technikum-wien.at/bisfunktion/rdf#studiengang_kz" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id="mitarbeiter-funktion-button-neu" label="Neu" disabled="true" />
<button id="mitarbeiter-funktion-button-bearbeiten" label="Bearbeiten" disabled="true" />
<button id="mitarbeiter-funktion-button-loeschen" label="Loeschen" disabled="true" />
</vbox>
</hbox>
</groupbox>
</groupbox>
<groupbox id="mitarbeiter-detail-groupbox-funktion" flex="1">
<caption label="Funktion" />
<tree id="mitarbeiter-tree-funktion" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/funktion/alle"
onselect="MitarbeiterFunktionSelect();"
<groupbox id="mitarbeiter-detail-groupbox-entwicklungsteam" flex="1">
<caption label="Entwicklungsteam" />
<hbox>
<tree id="mitarbeiter-tree-entwicklungsteam" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/entwicklungsteam/liste"
onselect="MitarbeiterEntwicklungsteamSelect();"
flags="dont-build-content"
enableColumnDrag="true"
style="margin:5px;"
persist="hidden, height"
>
<treecols>
<treecol id="mitarbeiter-funktion-treecol-studiengang" label="Studiengang" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-entwicklungsteam-treecol-studiengang" label="Studiengang" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/funktion/rdf#studiengang" onclick="MitarbeiterTreeFunktionSort()"/>
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#studiengang" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-funktion-treecol-sws" label="SWS" flex="1" persist="hidden, width" hidden="false"
<treecol id="mitarbeiter-entwicklungsteam-treecol-besqual" label="Besondere Qualifikation" flex="1" persist="hidden, width" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/funktion/rdf#sws" onclick="MitarbeiterTreeFunktionSort()"/>
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#besqual" onclick="MitarbeiterTreeEntwicklungteamSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-funktion-treecol-bisverwendung_id" label="VerwendungID" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-entwicklungsteam-treecol-beginn" label="Beginn" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/funktioon/rdf#bisverwendung_id" onclick="MitarbeiterTreeFunktionSort()"/>
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#beginn" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-funktion-treecol-studiengang_kz" label="Studiengang_kz" flex="1" persist="hidden, width" hidden="true"
<treecol id="mitarbeiter-entwicklungsteam-treecol-ende" label="Ende" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/funktion/rdf#studiengang_kz" onclick="MitarbeiterTreeFunktionSort()"/>
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#ende" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-entwicklungsteam-treecol-studiengang_kz" label="StudiengangKZ" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#studiengang_kz" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid" label="MitarbeiterUID" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#mitarbeiter_uid" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
<splitter class="tree-splitter"/>
<treecol id="mitarbeiter-entwicklungsteam-treecol-besqualcode" label="Besqualcode" flex="1" persist="hidden, width" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#besqualcode" onclick="MitarbeiterTreeEntwicklungsteamSort()"/>
<splitter class="tree-splitter"/>
</treecols>
@@ -157,16 +234,25 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/funktion/rdf#studiengang" />
<treecell label="rdf:http://www.technikum-wien.at/funktion/rdf#sws" />
<treecell label="rdf:http://www.technikum-wien.at/funktion/rdf#bisverwendung_id" />
<treecell label="rdf:http://www.technikum-wien.at/funktion/rdf#studiengang_kz" />
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#studiengang" />
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#besqual" />
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#beginn" />
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#ende" />
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#studiengang_kz" />
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#mitarbeiter_uid" />
<treecell label="rdf:http://www.technikum-wien.at/entwicklungsteam/rdf#besqualcode" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox>
<button id="mitarbeiter-entwicklungsteam-button-neu" label="Neu" disabled="true" />
<button id="mitarbeiter-entwicklungsteam-button-bearbeiten" label="Bearbeiten" disabled="true" />
<button id="mitarbeiter-entwicklungsteam-button-loeschen" label="Loeschen" disabled="true" />
</vbox>
</hbox>
</groupbox>
</vbox>
</overlay>
</overlay>
+378 -1
View File
@@ -31,8 +31,17 @@ loadVariables($conn, $user);
// *********** Globale Variablen *****************//
var MitarbeiterSelectUid=null; //UID des zu selektierenden Mitarbeiters
var MitarbeiterTreeLoadDataOnSelect=true; // Gibt an ob die Details beim markieren eines Mitarbeiters geladen werden sollen
var MitarbeiterVerwendungTreeDatasource=null; // Datasource des Verwendungstrees
var MitarbeiterVerwendungSelectID=null; // ID der Verwendung die nach dem rebuild markiert werden soll
var MitarbeiterFunktionTreeDatasource=null; // Datasource des Verwendungstrees
var MitarbeiterFunktionSelectVerwendungID=null; // ID der Verwendung der Funktion die nach dem rebuild markiert werden soll
var MitarbeiterFunktionSelectStudiengangID=null; // ID des Studiengangs der Funktion die nach dem rebuild markiert werden soll
var MitarbeiterEntwicklungsteamTreeDatasource=null; // Datasource des Entwicklungsteamtrees
var MitarbeiterEntwicklungsteamSelectMitarbeiterUID=null; // UID des Mitarbeiters des Entwicklugnsteams das nach dem rebuild markiert werden soll
var MitarbeiterEntwicklungsteamSelectStudiengangID=null; // ID des Stg des Entwicklungsteams das nach dem rebuild markiert werden soll
// ********** Observer und Listener ************* //
// ****
// * Observer fuer Mitarbeiter Tree
// * startet Rebuild nachdem das Refresh
@@ -71,6 +80,120 @@ var MitarbeiterTreeListener =
}
};
// ****
// * Observer fuer Mitarbeiter VerwendungTree
// * startet Rebuild nachdem das Refresh
// * der Datasource fertig ist
// ****
var MitarbeiterVerwendungTreeSinkObserver =
{
onBeginLoad : function(pSink)
{
},
onInterrupt : function(pSink) {},
onResume : function(pSink) {},
onError : function(pSink, pStatus, pError) {},
onEndLoad : function(pSink)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('mitarbeiter-tree-verwendung').builder.rebuild();
}
};
// ****
// * Nach dem Rebuild wird der Mitarbeiter wieder
// * markiert
// ****
var MitarbeiterVerwendungTreeListener =
{
willRebuild : function(builder)
{
},
didRebuild : function(builder)
{
//timeout nur bei Mozilla notwendig da sonst die rows
//noch keine values haben. Ab Seamonkey funktionierts auch
//ohne dem setTimeout
window.setTimeout(MitarbeiterVerwendungTreeSelect,10);
}
};
// ****
// * Observer fuer Mitarbeiter FunktionTree
// * startet Rebuild nachdem das Refresh
// * der Datasource fertig ist
// ****
var MitarbeiterFunktionTreeSinkObserver =
{
onBeginLoad : function(pSink)
{
},
onInterrupt : function(pSink) {},
onResume : function(pSink) {},
onError : function(pSink, pStatus, pError) {},
onEndLoad : function(pSink)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('mitarbeiter-tree-funktion').builder.rebuild();
}
};
// ****
// * Nach dem Rebuild wird die Funktion wieder
// * markiert
// ****
var MitarbeiterFunktionTreeListener =
{
willRebuild : function(builder)
{
},
didRebuild : function(builder)
{
//timeout nur bei Mozilla notwendig da sonst die rows
//noch keine values haben. Ab Seamonkey funktionierts auch
//ohne dem setTimeout
window.setTimeout(MitarbeiterFunktionTreeSelect,10);
}
};
// ****
// * Observer fuer Mitarbeiter EntwicklungsteamTree
// * startet Rebuild nachdem das Refresh
// * der Datasource fertig ist
// ****
var MitarbeiterEntwicklungsteamTreeSinkObserver =
{
onBeginLoad : function(pSink)
{
},
onInterrupt : function(pSink) {},
onResume : function(pSink) {},
onError : function(pSink, pStatus, pError) {},
onEndLoad : function(pSink)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
document.getElementById('mitarbeiter-tree-entwicklungsteam').builder.rebuild();
}
};
// ****
// * Nach dem Rebuild wird die Funktion wieder
// * markiert
// ****
var MitarbeiterEntwicklungsteamTreeListener =
{
willRebuild : function(builder)
{
},
didRebuild : function(builder)
{
//timeout nur bei Mozilla notwendig da sonst die rows
//noch keine values haben. Ab Seamonkey funktionierts auch
//ohne dem setTimeout
window.setTimeout(MitarbeiterEntwicklungsteamTreeSelect,10);
}
};
// ****************** FUNKTIONEN ************************** //
// ****
@@ -399,6 +522,81 @@ function MitarbeiterAuswahl()
// ***** KONTAKTE *****
document.getElementById('mitarbeiter-kontakt').setAttribute('src','kontakt.xul.php?person_id='+person_id);
// **** VERWENDUNG ****
verwendungtree = document.getElementById('mitarbeiter-tree-verwendung');
url='<?php echo APP_ROOT;?>rdf/verwendung.rdf.php?uid='+uid+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = verwendungtree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
verwendungtree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
verwendungtree.builder.rebuild();
try
{
MitarbeiterVerwendungTreeDatasource.removeXMLSinkObserver(MitarbeiterVerwendungTreeSinkObserver);
verwendungtree.builder.removeListener(MitarbeiterVerwendungTreeListener);
}
catch(e)
{}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
MitarbeiterVerwendungTreeDatasource = rdfService.GetDataSource(url);
MitarbeiterVerwendungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
MitarbeiterVerwendungTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
verwendungtree.database.AddDataSource(MitarbeiterVerwendungTreeDatasource);
MitarbeiterVerwendungTreeDatasource.addXMLSinkObserver(MitarbeiterVerwendungTreeSinkObserver);
verwendungtree.builder.addListener(MitarbeiterVerwendungTreeListener);
MitarbeiterVerwendungDisableFields(false);
// **** ENTWICKLUNGSTEAM ****
entwicklungsteamtree = document.getElementById('mitarbeiter-tree-entwicklungsteam');
url='<?php echo APP_ROOT;?>rdf/entwicklungsteam.rdf.php?mitarbeiter_uid='+uid+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = entwicklungsteamtree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
entwicklungsteamtree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
entwicklungsteamtree.builder.rebuild();
try
{
MitarbeiterEntwicklungsteamTreeDatasource.removeXMLSinkObserver(MitarbeiterEntwicklungsteamTreeSinkObserver);
entwicklungsteamtree.builder.removeListener(MitarbeiterEntwicklungsteamTreeListener);
}
catch(e)
{}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
MitarbeiterEntwicklungsteamTreeDatasource = rdfService.GetDataSource(url);
MitarbeiterEntwicklungsteamTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
MitarbeiterEntwicklungsteamTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
entwicklungsteamtree.database.AddDataSource(MitarbeiterEntwicklungsteamTreeDatasource);
MitarbeiterEntwicklungsteamTreeDatasource.addXMLSinkObserver(MitarbeiterEntwicklungsteamTreeSinkObserver);
entwicklungsteamtree.builder.addListener(MitarbeiterEntwicklungsteamTreeListener);
MitarbeiterEntwicklungsteamDisableFields(false);
// Funktionen Tree Leeren
funktiontree = document.getElementById('mitarbeiter-tree-funktion');
//Alte DS entfernen
var oldDatasources = funktiontree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
funktiontree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
funktiontree.builder.rebuild();
MitarbeiterFunktionDisableFields(true);
}
// ****
@@ -518,4 +716,183 @@ function MitarbeiterSave()
MitarbeiterTreeDatasource.Refresh(false); //non blocking
SetStatusBarText('Daten wurden gespeichert');
}
}
}
// ***************** VERWENDUNG ********************** //
// ****
// * Selectiert die Verwendung nachdem der Tree
// * rebuildet wurde.
// ****
function MitarbeiterVerwendungTreeSelect()
{
var tree=document.getElementById('mitarbeiter-tree-verwendung');
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
//In der globalen Variable ist der zu selektierende Verwendung gespeichert
if(MitarbeiterVerwendungSelectID!=null)
{
for(var i=0;i<items;i++)
{
//Uid der row holen
col = tree.columns ? tree.columns["mitarbeiter-verwendung-treecol-bisverwendung_id"] : "mitarbeiter-verwendung-treecol-bisverwendung_id";
id=tree.view.getCellText(i,col);
if(id == MitarbeiterVerwendungSelectID)
{
//Zeile markieren
tree.view.selection.select(i);
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
tree.treeBoxObject.ensureRowIsVisible(i);
return true;
}
}
}
}
// ****
// * Wenn ein Eintrag im Verwendungstree Selektiert wird,
// * dann werden die dazugehoerigen Funktionen geladen
// ****
function MitarbeiterVerwendungSelect()
{
// Trick 17 (sonst gibt's ein Permission denied)
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('mitarbeiter-tree-verwendung');
if (tree.currentIndex==-1) return;
//Ausgewaehlte ID holen
var col = tree.columns ? tree.columns["mitarbeiter-verwendung-treecol-bisverwendung_id"] : "mitarbeiter-verwendung-treecol-bisverwendung_id";
var bisverwendung_id=tree.view.getCellText(tree.currentIndex,col);
// Laden der Funktionen
funktiontree = document.getElementById('mitarbeiter-tree-funktion');
url='<?php echo APP_ROOT;?>rdf/bisfunktion.rdf.php?bisverwendung_id='+bisverwendung_id+"&"+gettimestamp();
//Alte DS entfernen
var oldDatasources = funktiontree.database.GetDataSources();
while(oldDatasources.hasMoreElements())
{
funktiontree.database.RemoveDataSource(oldDatasources.getNext());
}
//Refresh damit die entfernten DS auch wirklich entfernt werden
funktiontree.builder.rebuild();
try
{
MitarbeiterFunktionTreeDatasource.removeXMLSinkObserver(MitarbeiterFunktionTreeSinkObserver);
funktiontree.builder.removeListener(MitarbeiterFunktionTreeListener);
}
catch(e)
{}
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
MitarbeiterFunktionTreeDatasource = rdfService.GetDataSource(url);
MitarbeiterFunktionTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource);
MitarbeiterFunktionTreeDatasource.QueryInterface(Components.interfaces.nsIRDFXMLSink);
funktiontree.database.AddDataSource(MitarbeiterFunktionTreeDatasource);
MitarbeiterFunktionTreeDatasource.addXMLSinkObserver(MitarbeiterFunktionTreeSinkObserver);
funktiontree.builder.addListener(MitarbeiterFunktionTreeListener);
MitarbeiterFunktionDisableFields(false);
}
// ****
// * De-/Aktiviert die Buttons
// ****
function MitarbeiterVerwendungDisableFields(val)
{
document.getElementById('mitarbeiter-verwendung-button-neu').disabled=val;
document.getElementById('mitarbeiter-verwendung-button-bearbeiten').disabled=val;
document.getElementById('mitarbeiter-verwendung-button-loeschen').disabled=val;
}
// *********** FUNKTION *************** //
// ****
// * Selectiert die Funktion nachdem der Tree
// * rebuildet wurde.
// ****
function MitarbeiterFunktionTreeSelect()
{
var tree=document.getElementById('mitarbeiter-tree-funktion');
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
//In der globalen Variable ist der zu selektierende Verwendung gespeichert
if(MitarbeiterFunktionSelectStudiengangID!=null)
{
for(var i=0;i<items;i++)
{
col = tree.columns ? tree.columns["mitarbeiter-funktion-treecol-bisverwendung_id"] : "mitarbeiter-funktion-treecol-bisverwendung_id";
verwendung_id=tree.view.getCellText(i,col);
col = tree.columns ? tree.columns["mitarbeiter-funktion-treecol-studiengang_kz"] : "mitarbeiter-funktion-treecol-studiengang_kz";
studiengang_kz=tree.view.getCellText(i,col);
if(verwendung_id == MitarbeiterFunktionSelectVerwendungID && studiengang_kz==MitarbeiterFunktionSelectStudiengangID)
{
//Zeile markieren
tree.view.selection.select(i);
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
tree.treeBoxObject.ensureRowIsVisible(i);
return true;
}
}
}
}
// ****
// * De-/Aktiviert die Buttons
// ****
function MitarbeiterFunktionDisableFields(val)
{
document.getElementById('mitarbeiter-funktion-button-neu').disabled=val;
document.getElementById('mitarbeiter-funktion-button-bearbeiten').disabled=val;
document.getElementById('mitarbeiter-funktion-button-loeschen').disabled=val;
}
// *********** ENTWICKLUNGSTEAM *************** //
// ****
// * Selectiert die Funktion nachdem der Tree
// * rebuildet wurde.
// ****
function MitarbeiterEntwicklungsteamTreeSelect()
{
var tree=document.getElementById('mitarbeiter-tree-entwicklungsteam');
var items = tree.view.rowCount; //Anzahl der Zeilen ermitteln
//In der globalen Variable ist der zu selektierende Verwendung gespeichert
if(MitarbeiterEntwicklungsteamSelectStudiengangID!=null)
{
for(var i=0;i<items;i++)
{
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid"] : "mitarbeiter-entwicklungsteam-treecol-mitarbeiter_uid";
mitarbeiter_uid=tree.view.getCellText(i,col);
col = tree.columns ? tree.columns["mitarbeiter-entwicklungsteam-treecol-studiengang_kz"] : "mitarbeiter-entwicklungsteam-treecol-studiengang_kz";
studiengang_kz=tree.view.getCellText(i,col);
if(mitarbeiter_uid == MitarbeiterEntwicklungsteamSelectMitarbeiterUID && studiengang_kz==MitarbeiterEntwicklungsteamSelectStudiengangID)
{
//Zeile markieren
tree.view.selection.select(i);
//Sicherstellen, dass die Zeile im sichtbaren Bereich liegt
tree.treeBoxObject.ensureRowIsVisible(i);
return true;
}
}
}
}
// ****
// * De-/Aktiviert die Buttons
// ****
function MitarbeiterEntwicklungsteamDisableFields(val)
{
document.getElementById('mitarbeiter-entwicklungsteam-button-neu').disabled=val;
document.getElementById('mitarbeiter-entwicklungsteam-button-bearbeiten').disabled=val;
document.getElementById('mitarbeiter-entwicklungsteam-button-loeschen').disabled=val;
}
@@ -30,6 +30,7 @@ require_once('../../vilesci/config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/mitarbeiter/mitarbeiterfunktionoverlay.xul.php"?>';
?>
<!DOCTYPE overlay >