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 >
+255
View File
@@ -0,0 +1,255 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
class bisfunktion
{
var $conn; // @var resource DB-Handle
var $new; // @var boolean
var $errormsg; // @var string
var $result = array(); // @var email Objekt
//Tabellenspalten
var $bisverwendung_id;
var $studiengang_kz;
var $sws;
var $updateamum;
var $updatevon;
var $insertamum;
var $insertvon;
var $ext_id;
// ***********************************************
// * Konstruktor
// * @param conn Connection zur Datenbank
// * bisverwendung_id ID des zu ladenden Datensatzes
// ***********************************************
function bisfunktion($conn, $bisverwendung_id=null, $studiengang_kz=null, $unicode=false)
{
$this->conn = $conn;
if($unicode!=null)
{
if($unicode)
$qry = "SET CLIENT_ENCODING TO 'UNICODE';";
else
$qry = "SET CLIENT_ENCODING TO 'LATIN9';";
if(!pg_query($conn,$qry))
{
$this->errormsg = "Encoding konnte nicht gesetzt werden";
return false;
}
}
if($bisverwendung_id != null && $studiengang_kz != null)
$this->load($bisverwendung_id, $studiengang_kz);
}
// ***********************************************
// * Laedt einen Datensatz
// * @param bisverwendung_id ID des zu ladenden Datensatzes
// * studiengang_kz
// ***********************************************
function load($bisverwendung_id, $studiengang_kz)
{
//bisverwendung_id auf gueltigkeit pruefen
if(!is_numeric($bisverwendung_id) || $bisverwendung_id == '')
{
$this->errormsg = 'bisverwendung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_numeric($studiengang_kz) || $studiengang_kz == '')
{
$this->errormsg = 'studiengang_kz muss eine gueltige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM bis.tbl_bisfunktion WHERE bisverwendung_id='$bisverwendung_id' AND studiengang_kz='$studiengang_kz'";
if($result = pg_query($this->conn,$qry))
{
if($row=pg_fetch_object($result))
{
$this->bisverwendung_id = $row->bisverwendung_id;
$this->studiengang_kz = $row->studiengang_kz;
$this->sws = $row->sws;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->ext_id = $row->ext_id;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
// **************************************************
// * Loescht einen Datensatz
// * @param bisverwendung_id ID des zu loeschenden Datensatzes
// * @return true wenn ok, false im Fehlerfall
// **************************************************
function delete($bisverwendung_id, $studiengang_kz)
{
//akte_id auf gueltigkeit pruefen
if(!is_numeric($bisverwendung_id) || $bisverwendung_id == '')
{
$this->errormsg = 'bisverwendung_id muss eine gueltige Zahl sein';
return false;
}
if(!is_numeric($studiengang_kz) || $studiengang_kz == '')
{
$this->errormsg = 'studiengang_kz muss eine gueltige Zahl sein';
return false;
}
$qry = "DELETE FROM bis.tbl_bisfunktion WHERE bisverwendung_id = '$bisverwendung_id' AND studiengang_kz='$studiengang_kz';";
if(pg_query($this->conn,$qry))
{
//Log schreiben
return true;
}
else
{
$this->errormsg = 'Fehler beim Loeschen';
return false;
}
}
function validate()
{
return true;
}
// ************************************************
// * wenn $var '' ist wird "null" zurueckgegeben
// * wenn $var !='' ist werden datenbankkritische
// * Zeichen mit backslash versehen und das Ergebnis
// * unter Hochkomma gesetzt.
// ************************************************
function addslashes($var)
{
return ($var!=''?"'".addslashes($var)."'":'null');
}
// *********************************************************************
// * Speichert den aktuellen Datensatz
// * Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
// * andernfalls wird der Datensatz mit der ID in $akte_id aktualisiert
// * @return true wenn ok, false im Fehlerfall
// *********************************************************************
function save($new=null)
{
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz anlegen
$qry = "BEGIN;INSERT INTO bis.tbl_bisfunktion (bisverwendung_id, studiengang_kz, sws
updateamum, updatevon, insertamum, insertvon, ext_id) VALUES (".
$this->addslashes($this->bisverwendung_id).', '.
$this->addslashes($this->studiengang_kz).', '.
$this->addslashes($this->sws).', '.
$this->addslashes($this->updateamum).', '.
$this->addslashes($this->updatevon).', '.
$this->addslashes($this->insertamum).', '.
$this->addslashes($this->insertvon).', '.
$this->addslashes($this->ext_id).');';
}
else
{
//Bestehenden Datensatz aktualisieren
$qry= "UPDATE bis.tbl_bisfunktion SET".
" sws=".$this->addslashes($this->sws).",".
" updateamum=".$this->addslashes($this->updateamum).",".
" updatevon=".$this->addslashes($this->updatevon).",".
" ext_id=".$this->addslashes($this->ext_id).
" WHERE bisverwendung_id='".addslashes($this->bisverwendung_id)."' AND studiengang_kz='$studiengang_kz'";
}
if(pg_query($this->conn, $qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
return false;
}
}
// ********************************************
// * Laedt alle Verwendungen eines Mitarbeiters
// * @param $uid UID des Mitarbeiters
// * @return true wenn ok, false wenn Fehler
// ********************************************
function getBisFunktion($bisverwendung_id, $studiengang_kz=null)
{
//laden des Datensatzes
$qry = "SELECT * FROM bis.tbl_bisfunktion WHERE bisverwendung_id='".addslashes($bisverwendung_id)."'";
if($studiengang_kz!=null)
$qry.=" AND studiengang_kz='".addslashes($studiengang_kz)."'";
if($result = pg_query($this->conn,$qry))
{
while($row=pg_fetch_object($result))
{
$obj = new bisfunktion($this->conn, null, null, null);
$obj->bisverwendung_id = $row->bisverwendung_id;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->sws = $row->sws;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->ext_id = $row->ext_id;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
}
?>
+269
View File
@@ -0,0 +1,269 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
class entwicklungsteam
{
var $conn; // @var resource DB-Handle
var $new; // @var boolean
var $errormsg; // @var string
var $result = array(); // @var email Objekt
//Tabellenspalten
var $mitarbeiter_uid;
var $studiengang_kz;
var $besqualcode;
var $beginn;
var $ende;
var $updateamum;
var $updatevon;
var $insertamum;
var $insertvon;
var $ext_id;
var $besqual;
// ***********************************************
// * Konstruktor
// * @param conn Connection zur Datenbank
// * mitarbeiter_uid ID des zu ladenden Datensatzes
// * studiengang_kz
// ***********************************************
function entwicklungsteam($conn, $mitarbeiter_uid=null, $studiengang_kz=null, $unicode=false)
{
$this->conn = $conn;
if($unicode!=null)
{
if($unicode)
$qry = "SET CLIENT_ENCODING TO 'UNICODE';";
else
$qry = "SET CLIENT_ENCODING TO 'LATIN9';";
if(!pg_query($conn,$qry))
{
$this->errormsg = "Encoding konnte nicht gesetzt werden";
return false;
}
}
if($mitarbeiter_uid != null && $studiengang_kz != null)
$this->load($mitarbeiter_uid, $studiengang_kz);
}
// ***********************************************
// * Laedt einen Datensatz
// * @param mitarbeiter_uid ID des zu ladenden Datensatzes
// * studiengang_kz
// ***********************************************
function load($mitarbeiter_uid, $studiengang_kz)
{
//bisverwendung_id auf gueltigkeit pruefen
if(!is_numeric($mitarbeiter_uid) || $mitarbeiter_uid == '')
{
$this->errormsg = 'mitarbeiter_uid muss eine gueltige Zahl sein';
return false;
}
if(!is_numeric($studiengang_kz) || $studiengang_kz == '')
{
$this->errormsg = 'studiengang_kz muss eine gueltige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM bis.tbl_entwicklungsteam JOIN bis.tbl_besqual USING(besqualcode) WHERE mitarbeiter_uid='$mitarbeiter_uid' AND studiengang_kz='$studiengang_kz'";
if($result = pg_query($this->conn,$qry))
{
if($row=pg_fetch_object($result))
{
$this->mitarbeiter_uid = $row->mitarbeiter_uid;
$this->studiengang_kz = $row->studiengang_kz;
$this->besqualcode = $row->besqualcode;
$this->beginn = $row->beginn;
$this->ende = $row->ende;
$this->updateamum = $row->updateamum;
$this->updatevon = $row->updatevon;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->ext_id = $row->ext_id;
$this->besqual = $row->besqualbez;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
// **************************************************
// * Loescht einen Datensatz
// * @param bisverwendung_id ID des zu loeschenden Datensatzes
// * @return true wenn ok, false im Fehlerfall
// **************************************************
function delete($mitarbeiter_uid, $studiengang_kz)
{
//id auf gueltigkeit pruefen
if(!is_numeric($mitarbeiter_uid) || $mitarbeiter_uid == '')
{
$this->errormsg = 'mitarbeiter_uid muss eine gueltige Zahl sein';
return false;
}
if(!is_numeric($studiengang_kz) || $studiengang_kz == '')
{
$this->errormsg = 'studiengang_kz muss eine gueltige Zahl sein';
return false;
}
$qry = "DELETE FROM bis.tbl_entwicklungsteam WHERE mitarbeiter_uid = '$mitarbeiter_uid' AND studiengang_kz='$studiengang_kz';";
if(pg_query($this->conn,$qry))
{
//Log schreiben
return true;
}
else
{
$this->errormsg = 'Fehler beim Loeschen';
return false;
}
}
function validate()
{
return true;
}
// ************************************************
// * wenn $var '' ist wird "null" zurueckgegeben
// * wenn $var !='' ist werden datenbankkritische
// * Zeichen mit backslash versehen und das Ergebnis
// * unter Hochkomma gesetzt.
// ************************************************
function addslashes($var)
{
return ($var!=''?"'".addslashes($var)."'":'null');
}
// *********************************************************************
// * Speichert den aktuellen Datensatz
// * Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
// * andernfalls wird der Datensatz mit der ID in $akte_id aktualisiert
// * @return true wenn ok, false im Fehlerfall
// *********************************************************************
function save($new=null)
{
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz anlegen
$qry = "BEGIN;INSERT INTO bis.tbl_entwicklungsteam (mitarbeiter_uid, studiengang_kz, besqualcode, beginn, ende
updateamum, updatevon, insertamum, insertvon, ext_id) VALUES (".
$this->addslashes($this->mitarbeiter_uid).', '.
$this->addslashes($this->studiengang_kz).', '.
$this->addslashes($this->besqualcode).', '.
$this->addslashes($this->beginn).', '.
$this->addslashes($this->ende).', '.
$this->addslashes($this->updateamum).', '.
$this->addslashes($this->updatevon).', '.
$this->addslashes($this->insertamum).', '.
$this->addslashes($this->insertvon).', '.
$this->addslashes($this->ext_id).');';
}
else
{
//Bestehenden Datensatz aktualisieren
$qry= "UPDATE bis.tbl_bisfunktion SET".
" besqualcode=".$this->addslashes($this->besqualcode).",".
" beginn=".$this->addslashes($this->beginn).",".
" ende=".$this->addslashes($this->ende).",".
" updateamum=".$this->addslashes($this->updateamum).",".
" updatevon=".$this->addslashes($this->updatevon).",".
" ext_id=".$this->addslashes($this->ext_id).
" WHERE mitarbeiter_uid='".addslashes($this->mitarbeiter_uid)."' AND studiengang_kz='$studiengang_kz'";
}
if(pg_query($this->conn, $qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
return false;
}
}
// ********************************************
// * Laedt alle Entwicklungsteameintraege eines Mitarbeiters
// * @param $uid UID des Mitarbeiters
// * @return true wenn ok, false wenn Fehler
// ********************************************
function getEntwicklungsteam($mitarbeiter_uid, $studiengang_kz=null)
{
//laden des Datensatzes
$qry = "SELECT * FROM bis.tbl_entwicklungsteam JOIN bis.tbl_besqual USING(besqualcode) WHERE mitarbeiter_uid='".addslashes($mitarbeiter_uid)."'";
if($studiengang_kz!=null)
$qry.=" AND studiengang_kz='".addslashes($studiengang_kz)."'";
if($result = pg_query($this->conn,$qry))
{
while($row=pg_fetch_object($result))
{
$obj = new entwicklungsteam($this->conn, null, null, null);
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
$obj->studiengang_kz = $row->studiengang_kz;
$obj->besqualcode = $row->besqualcode;
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->updateamum = $row->updateamum;
$obj->updatevon = $row->updatevon;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->ext_id = $row->ext_id;
$obj->besqual = $row->besqualbez;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
}
?>
+8 -7
View File
@@ -425,11 +425,6 @@ class prestudent extends person
// *******************************************************************************
function loadIntessentenUndBewerber($studiensemester_kurzbz, $studiengang_kz, $semester=nulll, $typ=null)
{
$qry = "SELECT distinct on(tbl_prestudent.prestudent_id) * FROM public.tbl_person, public.tbl_prestudent, public.tbl_prestudentrolle WHERE
tbl_person.person_id=tbl_prestudent.person_id AND
tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id AND
tbl_prestudent.studiengang_kz='$studiengang_kz'";
$qry = "SELECT * FROM (
SELECT *, (
SELECT rolle_kurzbz FROM tbl_prestudentrolle WHERE prestudent_id=prestudent.prestudent_id ORDER BY datum DESC LIMIT 1) AS rolle
@@ -441,6 +436,9 @@ class prestudent extends person
if(!is_null($studiensemester_kurzbz) && $studiensemester_kurzbz!='')
$qry.=" AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'";
if($semester!=null)
$qry.=" AND ausbildungssemester='$semester'";
switch ($typ)
{
@@ -468,11 +466,14 @@ class prestudent extends person
case "absage":
$qry.=" AND a.rolle='Abgewiesener'";
break;
case "prestudent":
if($studiensemester_kurzbz=='' || is_null($studiensemester_kurzbz))
$qry = "SELECT *, '' as rolle_kurzbz, '' as studiensemester_kurzbz, '' as ausbildungssemester, '' as datum FROM public.tbl_prestudent prestudent, public.tbl_person WHERE NOT EXISTS (select * from tbl_prestudentrolle WHERE prestudent_id=prestudent.prestudent_id) AND studiengang_kz='".addslashes($studiengang_kz)."' AND prestudent.person_id=tbl_person.person_id";
break;
default:
break;
}
if($semester!=null)
$qry.=" AND ausbildungssemester='$semester'";
//echo $qry;
if($result = pg_query($this->conn, $qry))
+338
View File
@@ -0,0 +1,338 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
class verwendung
{
var $conn; // @var resource DB-Handle
var $new; // @var boolean
var $errormsg; // @var string
var $result = array(); // @var email Objekt
//Tabellenspalten
var $bisverwendung_id;
var $ba1code;
var $ba2code;
var $beschausmasscode;
var $verwendung_code;
var $mitarbeiter_uid;
var $hauptberufcode;
var $hauptberuflich;
var $habilitation;
var $beginn;
var $ende;
var $updateamum;
var $updatevon;
var $insertamum;
var $insertvon;
var $ext_id;
var $ba1bez;
var $ba2bez;
var $beschausmass;
var $verwendung;
var $hauptberuf;
// ***********************************************
// * Konstruktor
// * @param conn Connection zur Datenbank
// * bisverwendung_id ID des zu ladenden Datensatzes
// ***********************************************
function verwendung($conn, $bisverwendung_id=null, $unicode=false)
{
$this->conn = $conn;
if($unicode!=null)
{
if($unicode)
$qry = "SET CLIENT_ENCODING TO 'UNICODE';";
else
$qry = "SET CLIENT_ENCODING TO 'LATIN9';";
if(!pg_query($conn,$qry))
{
$this->errormsg = "Encoding konnte nicht gesetzt werden";
return false;
}
}
if($bisverwendung_id != null)
$this->load($bisverwendung_id);
}
// ***********************************************
// * Laedt einen Datensatz
// * @param bisverwendung_id ID des zu ladenden Datensatzes
// ***********************************************
function load($bisverwendung_id)
{
//bisverwendung_id auf gueltigkeit pruefen
if(!is_numeric($bisverwendung_id) || $bisverwendung_id == '')
{
$this->errormsg = 'bisverwendung_id muss eine gueltige Zahl sein';
return false;
}
//laden des Datensatzes
$qry = "SELECT * FROM bis.tbl_bisverwendung, bis.tbl_beschaeftigungsart1, bis.tbl_beschaeftigungsart2,
bis.bescharftigungsausmass, bis.tbl_verwendung WHERE
tbl_bisverwendung.ba1code=beschaeftigungsart1.ba1code AND
tbl_bisverwendung.ba2code=beschaeftigungsart2.ba2code AND
tbl_bisverwendung.beschausmasscode=beschaeftigungsausmass.beschausmasscode AND
tbl_bisverwendung.verwendung_code=tbl_verwendung.verwendung_code AND
bisverwendung_id='$bisverwendung_id';";
if($result = pg_query($this->conn,$qry))
{
if($row=pg_fetch_object($result))
{
$this->bisverwendung_id = $row->bisverwendung_id;
$this->ba1code = $row->ba1code;
$this->ba2code = $row->ba2code;
$this->beschausmasscode = $row->beschausmasscode;
$this->verwendung_code = $row->verwendung_code;
$this->mitarbeiter_uid = $row->mitarbeiter_uid;
$this->hauptberufcode = $row->hauptberufcode;
$this->hauptberuflich = ($row->hauptberuflich=='t'?true:false);
$this->habilitation = ($row->habilitation=='t'?true:false);
$this->beginn = $row->beginn;
$this->ende = $row->ende;
$this->updatevon = $row->updatevon;
$this->updateamum = $row->updateamum;
$this->insertamum = $row->insertamum;
$this->insertvon = $row->insertvon;
$this->ext_id = $row->ext_id;
$this->ba1bez = $row->ba1bez;
$this->ba2bez = $row->ba2bez;
$this->beschausmass = $row->beschausmassbez;
$this->verwendung = $row->verwendungbez;
$this->hauptberuf = $row->bezeichnung;
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
// **************************************************
// * Loescht einen Datensatz
// * @param bisverwendung_id ID des zu loeschenden Datensatzes
// * @return true wenn ok, false im Fehlerfall
// **************************************************
function delete($bisverwendung_id)
{
//akte_id auf gueltigkeit pruefen
if(!is_numeric($bisverwendung_id) || $bisverwendung_id == '')
{
$this->errormsg = 'bisverwendung_id muss eine gueltige Zahl sein';
return false;
}
$qry = "DELETE FROM bis.tbl_bisverwendung WHERE bisverwendung_id = '$bisverwendung_id';";
if(pg_query($this->conn,$qry))
{
//Log schreiben
return true;
}
else
{
$this->errormsg = 'Fehler beim Loeschen';
return false;
}
}
function validate()
{
return true;
}
// ************************************************
// * wenn $var '' ist wird "null" zurueckgegeben
// * wenn $var !='' ist werden datenbankkritische
// * Zeichen mit backslash versehen und das Ergebnis
// * unter Hochkomma gesetzt.
// ************************************************
function addslashes($var)
{
return ($var!=''?"'".addslashes($var)."'":'null');
}
// *********************************************************************
// * Speichert den aktuellen Datensatz
// * Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
// * andernfalls wird der Datensatz mit der ID in $akte_id aktualisiert
// * @return true wenn ok, false im Fehlerfall
// *********************************************************************
function save($new=null)
{
if(!$this->validate())
return false;
if($new==null)
$new = $this->new;
if($new)
{
//Neuen Datensatz anlegen
$qry = "BEGIN;INSERT INTO bis.tbl_bisverwendung (ba1code, ba2code, beschausmasscode,
verwendung_code, mitarbeiter_uid, hauptberufcode, hauptberuflich, habilitation, beginn, ende,
updateamum, updatevon, insertamum, insertvon, ext_id) VALUES (".
$this->addslashes($this->ba1code).', '.
$this->addslashes($this->ba2code).', '.
$this->addslashes($this->beschausmasscode).', '.
$this->addslashes($this->verwendung_code).', '.
$this->addslashes($this->mitarbeiter_uid).', '.
$this->addslashes($this->hauptberufcode).', '.
($this->hauptberuflich?'true':'false').', '.
($this->habilitation?'true':'false').', '.
$this->addslashes($this->beginn).', '.
$this->addslashes($this->ende).', '.
$this->addslashes($this->updateamum).', '.
$this->addslashes($this->updatevon).', '.
$this->addslashes($this->insertamum).', '.
$this->addslashes($this->insertvon).', '.
$this->addslashes($this->ext_id).');';
}
else
{
//Bestehenden Datensatz aktualisieren
$qry= "UPDATE bis.tbl_bisverwendung SET".
" ba1code=".$this->addslashes($this->ba1code).",".
" ba2code=".$this->addslashes($this->ba2code).",".
" beschausmasscode=".$this->addslashes($this->beschausmasscode).",".
" verwendung_code=".$this->addslashes($this->verwendung_code).",".
" mitarbeiter_uid=".$this->addslashes($this->mitarbeiter_uid).",".
" hauptberufcode=".$this->addslashes($this->hauptberufcode).",".
" hauptberuflich=".($this->hauptberuflich?'true':'false').",".
" habilitation=".($this->habilitation?'true':'false').",".
" beginn=".$this->addslashes($this->beginn).",".
" ende=".$this->addslashes($this->ende).",".
" updateamum=".$this->addslashes($this->updateamum).",".
" updatevon=".$this->addslashes($this->updatevon).",".
" insertamum=".$this->addslashes($this->insertamum).",".
" insertvon=".$this->addslashes($this->insertvon).",".
" ext_id=".$this->addslashes($this->ext_id).
" WHERE bisverwendung_id='".addslashes($this->bisverwendung_id)."'";
}
if(pg_query($this->conn, $qry))
{
if($new)
{
$qry = "SELECT currval('bis.tbl_bisverwendung_bisverwendung_id_seq') as id";
if($result = pg_query($this->conn, $qry))
{
if($row = pg_fetch_object($result))
{
$this->akte_id = $row->id;
pg_query($this->conn, 'COMMIT;');
return true;
}
else
{
$this->errormsg = 'Fehler beim auslesen der Sequence';
pg_query($this->conn, 'ROLLBACK');
return false;
}
}
else
{
$this->errormsg = 'Fehler beim auslesen der Sequence';
pg_query($this->conn, 'ROLLBACK');
return false;
}
}
else
return true;
}
else
{
$this->errormsg = 'Fehler beim Speichern des Datensatzes';
return false;
}
}
// ********************************************
// * Laedt alle Verwendungen eines Mitarbeiters
// * @param $uid UID des Mitarbeiters
// * @return true wenn ok, false wenn Fehler
// ********************************************
function getVerwendung($uid)
{
//laden des Datensatzes
$qry = "SELECT * FROM bis.tbl_bisverwendung, bis.tbl_beschaeftigungsart1, bis.tbl_beschaeftigungsart2,
bis.tbl_beschaeftigungsausmass, bis.tbl_verwendung, bis.tbl_hauptberuf WHERE
tbl_bisverwendung.ba1code=tbl_beschaeftigungsart1.ba1code AND
tbl_bisverwendung.ba2code=tbl_beschaeftigungsart2.ba2code AND
tbl_bisverwendung.beschausmasscode=tbl_beschaeftigungsausmass.beschausmasscode AND
tbl_bisverwendung.verwendung_code=tbl_verwendung.verwendung_code AND
tbl_bisverwendung.hauptberufcode=tbl_hauptberuf.hauptberufcode AND
mitarbeiter_uid='".addslashes($uid)."';";
if($result = pg_query($this->conn,$qry))
{
while($row=pg_fetch_object($result))
{
$obj = new verwendung($this->conn, null, null);
$obj->bisverwendung_id = $row->bisverwendung_id;
$obj->ba1code = $row->ba1code;
$obj->ba2code = $row->ba2code;
$obj->beschausmasscode = $row->beschausmasscode;
$obj->verwendung_code = $row->verwendung_code;
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
$obj->hauptberufcode = $row->hauptberufcode;
$obj->hauptberuflich = ($row->hauptberuflich=='t'?true:false);
$obj->habilitation = ($row->habilitation=='t'?true:false);
$obj->beginn = $row->beginn;
$obj->ende = $row->ende;
$obj->updatevon = $row->updatevon;
$obj->updateamum = $row->updateamum;
$obj->insertamum = $row->insertamum;
$obj->insertvon = $row->insertvon;
$obj->ext_id = $row->ext_id;
$obj->ba1bez = $row->ba1bez;
$obj->ba2bez = $row->ba2bez;
$obj->beschausmass = $row->beschausmassbez;
$obj->verwendung = $row->verwendungbez;
$obj->hauptberuf = $row->bezeichnung;
$this->result[] = $obj;
}
return true;
}
else
{
$this->errormsg = 'Fehler bei der Datenbankabfrage';
return false;
}
}
}
?>
+88
View File
@@ -0,0 +1,88 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
// header für no cache
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
require_once('../vilesci/config.inc.php');
require_once('../include/bisfunktion.class.php');
require_once('../include/datum.class.php');
require_once('../include/studiengang.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
if(isset($_GET['bisverwendung_id']))
$bisverwendung_id = $_GET['bisverwendung_id'];
else
$bisverwendung_id = '';
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz = '';
$datum = new datum();
$stg = new studiengang($conn, null, null, true);
$stg->getAll();
$stg_arr = array();
foreach ($stg->result as $row)
$stg_arr[$row->studiengang_kz]=$row->kuerzel;
$bisfunktion = new bisfunktion($conn, null, true);
if(!$bisfunktion->getBisFunktion($bisverwendung_id, $studiengang_kz))
die($bisfunktion->errormsg);
$rdf_url='http://www.technikum-wien.at/bisfunktion';
echo '
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:BISFUNKTION="'.$rdf_url.'/rdf#"
>
<RDF:Seq about="'.$rdf_url.'/liste">
';
foreach ($bisfunktion->result as $row)
{
echo '
<RDF:li>
<RDF:Description id="'.$row->bisverwendung_id.'/'.$row->studiengang_kz.'" about="'.$rdf_url.'/'.$row->bisverwendung_id.'/'.$row->studiengang_kz.'" >
<BISFUNKTION:bisverwendung_id><![CDATA['.$row->bisverwendung_id.']]></BISFUNKTION:bisverwendung_id>
<BISFUNKTION:studiengang_kz><![CDATA['.$row->studiengang_kz.']]></BISFUNKTION:studiengang_kz>
<BISFUNKTION:sws><![CDATA['.$row->sws.']]></BISFUNKTION:sws>
<BISFUNKTION:studiengang><![CDATA['.$stg_arr[$row->studiengang_kz].']]></BISFUNKTION:studiengang>
</RDF:Description>
</RDF:li>
';
}
?>
</RDF:Seq>
</RDF:RDF>
+93
View File
@@ -0,0 +1,93 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
// header für no cache
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
require_once('../vilesci/config.inc.php');
require_once('../include/entwicklungsteam.class.php');
require_once('../include/datum.class.php');
require_once('../include/studiengang.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
if(isset($_GET['mitarbeiter_uid']))
$mitarbeiter_uid = $_GET['mitarbeiter_uid'];
else
$mitarbeiter_uid = '';
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz = '';
$datum = new datum();
$stg = new studiengang($conn, null, null, true);
$stg->getAll();
$stg_arr = array();
foreach ($stg->result as $row)
$stg_arr[$row->studiengang_kz]=$row->kuerzel;
$entwicklungsteam = new entwicklungsteam($conn, null, true);
if(!$entwicklungsteam->getEntwicklungsteam($mitarbeiter_uid, $studiengang_kz))
die($entwicklungsteam->errormsg);
$rdf_url='http://www.technikum-wien.at/entwicklungsteam';
echo '
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:ENTWICKLUNGSTEAM="'.$rdf_url.'/rdf#"
>
<RDF:Seq about="'.$rdf_url.'/liste">
';
foreach ($entwicklungsteam->result as $row)
{
echo '
<RDF:li>
<RDF:Description id="'.$row->mitarbeiter_uid.'/'.$row->studiengang_kz.'" about="'.$rdf_url.'/'.$row->mitarbeiter_uid.'/'.$row->studiengang_kz.'" >
<ENTWICKLUNGSTEAM:mitarbeiter_uid><![CDATA['.$row->mitarbeiter_uid.']]></ENTWICKLUNGSTEAM:mitarbeiter_uid>
<ENTWICKLUNGSTEAM:studiengang_kz><![CDATA['.$row->studiengang_kz.']]></ENTWICKLUNGSTEAM:studiengang_kz>
<ENTWICKLUNGSTEAM:besqualcode><![CDATA['.$row->besqualcode.']]></ENTWICKLUNGSTEAM:besqualcode>
<ENTWICKLUNGSTEAM:besqual><![CDATA['.$row->besqual.']]></ENTWICKLUNGSTEAM:besqual>
<ENTWICKLUNGSTEAM:beginn><![CDATA['.$datum->convertISODate($row->beginn).']]></ENTWICKLUNGSTEAM:beginn>
<ENTWICKLUNGSTEAM:beginn_iso><![CDATA['.$row->beginn.']]></ENTWICKLUNGSTEAM:beginn_iso>
<ENTWICKLUNGSTEAM:ende><![CDATA['.$datum->convertISODate($row->ende).']]></ENTWICKLUNGSTEAM:ende>
<ENTWICKLUNGSTEAM:ende_iso><![CDATA['.$row->ende.']]></ENTWICKLUNGSTEAM:ende_iso>
<ENTWICKLUNGSTEAM:studiengang><![CDATA['.$stg_arr[$row->studiengang_kz].']]></ENTWICKLUNGSTEAM:studiengang>
</RDF:Description>
</RDF:li>
';
}
?>
</RDF:Seq>
</RDF:RDF>
+112
View File
@@ -0,0 +1,112 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
// header für no cache
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
require_once('../vilesci/config.inc.php');
require_once('../include/verwendung.class.php');
require_once('../include/datum.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
if(isset($_GET['uid']))
$uid = $_GET['uid'];
else
$uid = '';
if(isset($_GET['bisverwedung_id']) && is_numeric($_GET['bisverwendung_id']))
$bisverwendung_id = $_GET['bisverwendung_id'];
else
$bisverwendung_id = '';
$datum = new datum();
$verwendung_obj = new verwendung($conn, null, true);
$rdf_url='http://www.technikum-wien.at/verwendung';
echo '
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:VERWENDUNG="'.$rdf_url.'/rdf#"
>
<RDF:Seq about="'.$rdf_url.'/liste">
';
if($uid!='')
{
$verwendung_obj->getVerwendung($uid);
foreach ($verwendung_obj->result as $row)
draw_row($row);
}
elseif($bisverwendung_id!='')
{
$verwendung_obj->load($bisverwendung_id);
draw_row($row);
}
else
die('Falsche Parameteruebergabe');
function draw_row($row)
{
global $rdf_url, $datum;
echo '
<RDF:li>
<RDF:Description id="'.$row->bisverwendung_id.'" about="'.$rdf_url.'/'.$row->bisverwendung_id.'" >
<VERWENDUNG:bisverwendung_id><![CDATA['.$row->bisverwendung_id.']]></VERWENDUNG:bisverwendung_id>
<VERWENDUNG:ba1code><![CDATA['.$row->ba1code.']]></VERWENDUNG:ba1code>
<VERWENDUNG:ba2code><![CDATA['.$row->ba2code.']]></VERWENDUNG:ba2code>
<VERWENDUNG:beschausmasscode><![CDATA['.$row->beschausmasscode.']]></VERWENDUNG:beschausmasscode>
<VERWENDUNG:verwendung_code><![CDATA['.$row->verwendung_code.']]></VERWENDUNG:verwendung_code>
<VERWENDUNG:mitarbeiter_uid><![CDATA['.$row->mitarbeiter_uid.']]></VERWENDUNG:mitarbeiter_uid>
<VERWENDUNG:hauptberufcode><![CDATA['.$row->hauptberufcode.']]></VERWENDUNG:hauptberufcode>
<VERWENDUNG:hauptberuflich><![CDATA['.($row->hauptberuflich?'Ja':'Nein').']]></VERWENDUNG:hauptberuflich>
<VERWENDUNG:habilitation><![CDATA['.($row->habilitation?'Ja':'Nein').']]></VERWENDUNG:habilitation>
<VERWENDUNG:beginn><![CDATA['.$datum->convertISODate($row->beginn).']]></VERWENDUNG:beginn>
<VERWENDUNG:beginn_iso><![CDATA['.$row->beginn.']]></VERWENDUNG:beginn_iso>
<VERWENDUNG:ende><![CDATA['.$datum->convertISODate($row->ende).']]></VERWENDUNG:ende>
<VERWENDUNG:ende_iso><![CDATA['.$row->ende.']]></VERWENDUNG:ende_iso>
<VERWENDUNG:ba1bez><![CDATA['.$row->ba1bez.']]></VERWENDUNG:ba1bez>
<VERWENDUNG:ba2bez><![CDATA['.$row->ba2bez.']]></VERWENDUNG:ba2bez>
<VERWENDUNG:ausmass><![CDATA['.$row->beschausmass.']]></VERWENDUNG:ausmass>
<VERWENDUNG:verwendung><![CDATA['.$row->verwendung.']]></VERWENDUNG:verwendung>
<VERWENDUNG:hauptberuf><![CDATA['.$row->hauptberuf.']]></VERWENDUNG:hauptberuf>
</RDF:Description>
</RDF:li>
';
}
?>
</RDF:Seq>
</RDF:RDF>