Statistik Modul

This commit is contained in:
Andreas Österreicher
2007-06-01 14:00:10 +00:00
parent b36f271125
commit bd01339383
15 changed files with 742 additions and 173 deletions
+156
View File
@@ -0,0 +1,156 @@
<?xml version="1.0" encoding="ISO-8859-15" ?>
<xsl:stylesheet version="1.0" xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" indent="yes" />
<xsl:template match="lehrauftraege">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master page-height="297mm" page-width="210mm" margin="5mm 25mm 5mm 25mm" master-name="PageMaster">
<fo:region-body margin="20mm 0mm 20mm 0mm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<xsl:apply-templates select="lehrauftrag"/>
</fo:root>
</xsl:template>
<xsl:template match="lehrauftrag">
<fo:page-sequence master-reference="PageMaster">
<fo:flow flow-name="xsl-region-body" >
<!-- Logo -->
<fo:block>
<fo:external-graphic src="../skin/images/TWLogo_klein.jpg" posx="140" posy="15" />
</fo:block>
<!-- Titel -->
<fo:block font-size="15pt">Fachhochschule Technikum Wien Lehrauftrag</fo:block>
<!-- Studiengang -->
<fo:block font-size="12pt">
\n<xsl:value-of select="studiengang" />
</fo:block>
<!--Name und Adresse-->
<fo:block font-size="10pt">
\n\nAn
\n<fo:inline font-weight="bold" font-size="12pt">
<xsl:value-of select="mitarbeiter/titelpre" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/vorname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/familienname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/titelpost" />
\n<xsl:value-of select="mitarbeiter/anschrift" />
\n<xsl:value-of select="mitarbeiter/plz" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/ort" />
</fo:inline>
\n\n<fo:block font-size="7pt">
Abs.: Fachhochschule Technikum Wien, Höchstädtplatz 5, A-1200 Wien
</fo:block>
\n\n\n\n\n\n<fo:block font-size="8pt">
<fo:inline font-weight="bold">
<xsl:value-of select="mitarbeiter/titelpre" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/vorname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/familienname" /><xsl:text> </xsl:text>
<xsl:value-of select="mitarbeiter/titelpost" />
</fo:inline>
\n<xsl:text>SV.Nr.: </xsl:text><xsl:value-of select="mitarbeiter/svnr" />
\n<xsl:text>Personalnummer: </xsl:text><xsl:value-of select="mitarbeiter/personalnummer" />
</fo:block>
</fo:block>
<fo:block font-size="8pt">
\n\n\n\n\n\n\n\n\n\nWir beauftragen Sie, im <xsl:value-of select="studiensemester" /> folgende Lehrveranstaltungen abzuhalten:\n
</fo:block>
<!-- Tabelle -->
<fo:table table-layout="fixed" border-collapse="separate">
<fo:table-column column-width="12mm"/>
<fo:table-column column-width="65mm"/>
<fo:table-column column-width="40mm"/>
<fo:table-column column-width="20mm"/>
<fo:table-column column-width="12mm"/>
<fo:table-column column-width="10mm"/>
<fo:table-column column-width="10mm"/>
<fo:table-column column-width="17mm"/>
<fo:table-body>
<fo:table-row line-height="10pt">
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Nummer</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Lehrveranstaltung</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Fachbereich</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Gruppe</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Stunden</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Satz</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Faktor</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Brutto</fo:block></fo:table-cell>
</fo:table-row>
<xsl:apply-templates select="lehreinheit"/>
<fo:table-row line-height="10pt">
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold"> Summe:</fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold" text-align="right" content-width="12mm"><xsl:value-of select="gesamtstunden" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" font-weight="bold" content-width="17mm" text-align="right">EURO <xsl:value-of select="gesamtbetrag" /></fo:block></fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
<fo:block><xsl:text>
</xsl:text></fo:block>
<!-- Tabelle ENDE -->
<fo:block font-size="8pt">Die angeführten Stundensätze sind Bruttobeträge, von denen gegebenenfalls die Dienstnehmeranteile für Steuern und Sozialversicherung abgezogen werden.
Die angeführte Stundenzahl ist die maximal vorgesehene; abgerechnet werden jedoch nur die tatsächlich gehaltenen Stunden laut Anwesenheitslisten.
Außerdem besteht die Verpflichtung zur Teilnahme an Lektorenkonferenzen.
</fo:block>
<fo:block><xsl:text>
</xsl:text></fo:block>
<fo:block><xsl:text>
</xsl:text></fo:block>
<fo:block><xsl:text>
</xsl:text></fo:block>
<fo:block><xsl:text>
</xsl:text></fo:block>
<!-- Unterschrift -->
<fo:table table-layout="fixed" border-collapse="separate">
<fo:table-column column-width="80mm"/>
<fo:table-column column-width="50mm"/>
<fo:table-column column-width="80mm"/>
<fo:table-body>
<fo:table-row line-height="12pt">
<fo:table-cell border-width="0"><fo:block font-size="8pt" ></fo:block></fo:table-cell>
<fo:table-cell border-width="0"><fo:block font-size="8pt" ></fo:block></fo:table-cell>
<fo:table-cell border-width="0"><fo:block font-size="8pt" content-width="45" text-align="center" >Wien, am <xsl:value-of select="datum" /></fo:block></fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell border-width="0"><fo:block font-size="10pt" >________________________</fo:block></fo:table-cell>
<fo:table-cell border-width="0"><fo:block font-size="10pt" ></fo:block></fo:table-cell>
<fo:table-cell border-width="0"><fo:block font-size="10pt" >________________________</fo:block></fo:table-cell>
</fo:table-row>
<fo:table-row line-height="12pt">
<fo:table-cell border-width="0"><fo:block font-size="8pt" content-width="45" text-align="center" ><xsl:value-of select="studiengangsleiter" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0"><fo:block font-size="8pt" ></fo:block></fo:table-cell>
<fo:table-cell border-width="0"><fo:block font-size="8pt" content-width="45" text-align="center" >Ort, Datum</fo:block></fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
<fo:block text-align="center" font-size="7pt">
Fachhochschule Technikum\nWien\nHöchstädtplatz 5\nA-1200 Wien\nZVR-Nr.: 074476526\nDVR-Nr.: 0928381
</fo:block>
</fo:flow>
</fo:page-sequence>
</xsl:template>
<xsl:template match="lehreinheit">
<fo:table-row line-height="10pt">
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"><xsl:text> </xsl:text><xsl:value-of select="lehreinheit_id" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"><xsl:text> </xsl:text><xsl:value-of select="lehrveranstaltung" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt"><xsl:text> </xsl:text><xsl:value-of select="fachbereich" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" content-width="20mm" text-align="center"><xsl:value-of select="gruppe" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" content-width="12mm" text-align="right"><xsl:value-of select="stunden" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" content-width="10mm" text-align="right"><xsl:value-of select="satz" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" content-width="10mm" text-align="right"><xsl:value-of select="faktor" /></fo:block></fo:table-cell>
<fo:table-cell border-width="0.2mm" border-style="solid" ><fo:block font-size="8pt" content-width="17mm" text-align="right">EURO <xsl:value-of select="brutto" /></fo:block></fo:table-cell>
</fo:table-row>
</xsl:template>
</xsl:stylesheet >
+16 -10
View File
@@ -16,30 +16,23 @@ Auflistung nach Priorit&auml;t (h&ouml;chste oben).
<h2>Dokumente</h2>
<ul>
<li> Zahlungsbest&auml;tigung: Ein Button beim Konto liefert ein PDF
f&uuml;r die Zahlungsbest&auml;tigung. </li>
f&uuml;r die Zahlungsbest&auml;tigung. (Button ist vorhanden XSLT fehlt noch) </li>
<li> Inskriptionsbest&auml;tigung: Im Hauptmen&uuml; Dokumente
w&auml;hlbar. Wenn mehrere Studenten gew&auml;hlt sind, werden mehrere
Seiten im PDF produziert. </li>
Seiten im PDF produziert. (Button ist vorhanden, XML und XSLT fehlen noch)</li>
</ul>
<hr />
<h2>Statistik</h2>
Als Hauptmen&uuml;
<ul>
<li> Koordinatorstunden: Fachbereich muss gew&auml;hlt sein. <br>
Geliefert wird eine HTML-Seite mit einer &Uuml;bersicht &uuml;ber die
Stunden der Koordinatoren innerhalb des FB. </li>
<li> Lehrauftr&auml;ge: PDF mit allen Lektoren. Studiengang muss
gew&auml;hlt sein. </li>
<li> LV-Planung: HTML mit &Uuml;bersicht der Lehrauftr&auml;ge.
Studiengang und optional Semester muss gew&auml;hlt sein. </li>
Studiengang und optional Semester muss gew&auml;hlt sein. (HTML Seite content/statistik/lvplanung.php muss noch erstellt werden)</li>
</ul>
<hr />
<h2>Studenten-Modul</h2>
<ul>
<li> Import: Studiensemester ist ausw&auml;hlbar. Vorgew&auml;hlt ist
das n&auml;chste. </li>
<li> -&gt;Student: Wenn Bewerber zum Studenten gemacht wird kommt er
automatisch ins 1. Semester. </li>
<li> Incoming/Outgoing: Zus&auml;tzliche Daten m&uuml;ssen
gespeichert werden. Karteireiter beim Studenten? </li>
@@ -90,6 +83,19 @@ vorgerr&uuml;ckt ist)</li>
<hr>
<h2>Erledigte Anforderungen</h2>
<ul>
<li> Lehrauftr&auml;ge: PDF mit allen Lektoren. Studiengang muss
gew&auml;hlt sein.
<br>01.06.2007 oesi<br><br>
</li>
<li> Koordinatorstunden: Fachbereich muss gew&auml;hlt sein. <br>
Geliefert wird eine HTML-Seite mit einer &Uuml;bersicht &uuml;ber die
Stunden der Koordinatoren innerhalb des FB.
<br>01.06.2007 oesi<br><br>
</li>
<li> -&gt;Student: Wenn Bewerber zum Studenten gemacht wird kommt er
automatisch ins 1. Semester.
<br>01.06.2007 oesi<br><br>
</li>
<li> Gegenbuchung: Nur die Differenz gegenbuchen, nicht den
urspr&uuml;nglichen Betrag.
<br>31.05.2007 oesi<br><br>
+56
View File
@@ -1,4 +1,24 @@
<?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("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
include('../vilesci/config.inc.php');
@@ -51,6 +71,10 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/fasoverlay.xul.php"?>';
<command id="menu-properties-studiensemester:command" oncommand="studiensemesterChange();"/>
<command id="menu-prefs-stpltable-stundenplan:command" oncommand="stpltableChange('stundenplan');"/>
<command id="menu-prefs-stpltable-stundenplandev:command" oncommand="stpltableChange('stundenplandev');"/>
<command id="menu-statistic-koordinatorstunden:command" oncommand="StatistikPrintKoordinatorstunden();"/>
<command id="menu-statistic-lehrauftraege:command" oncommand="StatistikPrintLehrauftraege();"/>
<command id="menu-statistic-lvplanung:command" oncommand="StatistikPrintLVPlanung();"/>
<command id="menu-dokumente-inskriptionsbestaetigung:command" oncommand="StudentPrintInskriptionsbestaetigung();"/>
</commandset>
<keyset id="mainkeys">
@@ -133,6 +157,38 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/fasoverlay.xul.php"?>';
</menu>
</menupopup>
</menu>
<menu id="menu-statistic" label="&menu-statistic.label;" accesskey="&menu-statistic.accesskey;">
<menupopup id="menu-statistic-popup">
<menuitem
id = "menu-statistic-koordinatorstunden"
key = "menu-statistic-koordinatorstunden:key"
label = "&menu-statistic-koordinatorstunden.label;"
command = "menu-statistic-koordinatorstunden:command"
accesskey = "&menu-statistic-koordinatorstunden.accesskey;"/>
<menuitem
id = "menu-statistic-lehrauftraege"
key = "menu-statistic-lehrauftraege:key"
label = "&menu-statistic-lehrauftraege.label;"
command = "menu-statistic-lehrauftraege:command"
accesskey = "&menu-statistic-lehrauftraege.accesskey;"/>
<menuitem
id = "menu-statistic-lvplanung"
key = "menu-statistic-lvplanung:key"
label = "&menu-statistic-lvplanung.label;"
command = "menu-statistic-lvplanung:command"
accesskey = "&menu-statistic-lvplanung.accesskey;"/>
</menupopup>
</menu>
<menu id="menu-dokumente" label="&menu-dokumente.label;" accesskey="&menu-dokumente.accesskey;">
<menupopup id="menu-dokumente-popup">
<menuitem
id = "menu-dokumente-inskriptionsbestaetigung"
key = "menu-dokumente-inskriptionsbestaetigung:key"
label = "&menu-dokumente-inskriptionsbestaetigung.label;"
command = "menu-dokumente-inskriptionsbestaetigung:command"
accesskey = "&menu-dokumente-inskriptionsbestaetigung.accesskey;"/>
</menupopup>
</menu>
<menu id="menu-help" label="&menu-help.label;" accesskey="&menu-help.accesskey;">
<menupopup id="menu-about-popup">
<menuitem
+69
View File
@@ -463,3 +463,72 @@ function parseRDFString(str, url)
return memoryDS;
}
// ****
// * Liefert eine HTML Liste mit den Koordinatorstunden
// * fuer einen Fachbereich
// ****
function StatistikPrintKoordinatorstunden()
{
tree = document.getElementById('tree-fachbereich');
if(tree.currentIndex==-1)
{
alert('Bitte zuerst einen Fachbereich auswaehlen');
return;
}
//Fachbereich holen
var col;
col = tree.columns ? tree.columns["kurzbz"] : "kurzbz";
var fachbereich_kurzbz=tree.view.getCellText(tree.currentIndex,col);
window.open('<?php echo APP_ROOT ?>content/statistik/koordinatorstunden.php?fachbereich_kurzbz='+fachbereich_kurzbz,'Koordinatorstunden');
}
// ****
// * Erstellt das PDF File fuer die Lehrauftraege
// * Studiengang muss ausgewaehlt sein
// ****
function StatistikPrintLehrauftraege()
{
tree = document.getElementById('tree-verband');
if(tree.currentIndex==-1)
{
alert('Bitte zuerst einen Studiengang auswaehlen');
return;
}
//Studiengang holen
var col;
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
var studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
var ss = document.getElementById('statusbarpanel-semester').label;
window.open('<?php echo APP_ROOT ?>content/pdfExport.php?xml=lehrauftrag.xml.php&xsl=Lehrauftrag&stg_kz='+studiengang_kz+'&ss='+ss,'Lehrauftrag');
}
// ****
// * Liefert eine HTML Liste mit Uebersicht der Lehrauftraege.
// * Studiengang und optional Semester muss gewaehlt sein.
// ****
function StatistikPrintLVPlanung()
{
tree = document.getElementById('tree-verband');
if(tree.currentIndex==-1)
{
alert('Bitte zuerst einen Studiengang auswaehlen');
return;
}
//Studiengang und Semester holen
var col;
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
var studiengang_kz=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["sem"] : "sem";
var semester=tree.view.getCellText(tree.currentIndex,col);
window.open('<?php echo APP_ROOT ?>content/statistik/lvplanung.php?studiengang_kz='+studiengang_kz+'&semester='+semester,'LV-Planung');
}
+20
View File
@@ -1,4 +1,24 @@
<?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("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>';
@@ -178,7 +178,9 @@ function LvCreateLehrauftrag()
{
stg = document.getElementById('LehrveranstaltungEditor').getAttribute('stg_kz');
uid = document.getElementById('LehrveranstaltungEditor').getAttribute('uid');
window.location.href = '<?php echo APP_ROOT; ?>content/lvplanung/lehrauftrag.php?stg_kz='+stg+'&uid='+uid+'&'+gettimestamp();
var ss = document.getElementById('statusbarpanel-semester').label;
//window.location.href = '<?php echo APP_ROOT; ?>content/lvplanung/lehrauftrag.php?stg_kz='+stg+'&uid='+uid+'&'+gettimestamp();
window.location.href = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=lehrauftrag.xml.php&xsl=Lehrauftrag&stg_kz='+stg+'&uid='+uid+'&ss='+ss+'&'+gettimestamp();
}
// ****************** FUNKTIONEN ************************** //
+4 -3
View File
@@ -61,8 +61,9 @@ if(isset($_GET['person_id']))
if(isset($_GET['buchungsnr']))
$params.='&buchungsnr='.$_GET['buchungsnr'];
if(isset($_GET['stg_kz']))
$params.='stg_kz='.$_GET['stg_kz'];
$params.='&stg_kz='.$_GET['stg_kz'];
if(isset($_GET['ss']))
$params.='&ss='.$_GET['ss'];
//Berechtigung pruefen
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
@@ -98,7 +99,7 @@ $proc->importStyleSheet($xsl); // attach the xsl rules
$buffer = $proc->transformToXml($xml_doc);
//in $buffer steht nun das xsl-fo file mit den daten
$buffer = '<?xml version="1.0" encoding="ISO-8859-15" ?>'.substr($buffer, strpos($buffer,"\n"),strlen($buffer));
$buffer = html_entity_decode($buffer);
//$buffer = html_entity_decode($buffer);
//echo "buffer: $buffer";
//Pdf erstellen
+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>.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
$user = get_uid();
loadVariables($conn, $user);
if(!isset($_GET['fachbereich_kurzbz']))
die('Falsche Parameteruebergabe');
else
$fachbereich_kurzbz = $_GET['fachbereich_kurzbz'];
echo '<html><body>';
echo '<b>Fachbereich: '.$fachbereich_kurzbz.'</b><br><br>';
$studiengang = new studiengang($conn);
$studiengang->getAll();
$stg_arr = array();
foreach ($studiengang->result as $row)
$stg_arr[$row->studiengang_kz]=$row->kuerzel;
//Alle Fachbereichsleiter des uebergebenen Studienganges holen und
//Die Anzahl der Stunden die dieser in den einzelnen Studiengaengen haelt ermitteln
$qry = "SET CLIENT_ENCODING TO 'UNICODE';SELECT
distinct on(tbl_lehreinheit.lehreinheit_id)
tbl_benutzerfunktion.uid,
tbl_lehreinheitmitarbeiter.semesterstunden,
tbl_lehrveranstaltung.studiengang_kz,
tbl_person.vorname,
tbl_person.nachname
FROM
public.tbl_benutzerfunktion,
lehre.tbl_lehreinheitmitarbeiter,
lehre.tbl_lehreinheit,
lehre.tbl_lehrveranstaltung,
public.tbl_benutzer,
public.tbl_person
WHERE
tbl_benutzerfunktion.uid=tbl_lehreinheitmitarbeiter.mitarbeiter_uid AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_benutzerfunktion.fachbereich_kurzbz='".addslashes($fachbereich_kurzbz)."' AND
tbl_benutzerfunktion.funktion_kurzbz='fbk' AND
tbl_benutzerfunktion.uid=tbl_benutzer.uid AND
tbl_benutzer.person_id=tbl_person.person_id AND
tbl_lehreinheit.studiensemester_kurzbz='$semester_aktuell'
ORDER BY tbl_lehreinheit.lehreinheit_id, nachname, vorname
";
$data = array();
$name = array();
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if(array_key_exists($row->uid, $data))
{
if(array_key_exists($row->studiengang_kz, $data[$row->uid]))
{
$data[$row->uid][$row->studiengang_kz] += $row->semesterstunden;
}
else
$data[$row->uid][$row->studiengang_kz] = $row->semesterstunden;
}
else
$data[$row->uid][$row->studiengang_kz] = $row->semesterstunden;
$name[$row->uid]['vorname']=$row->vorname;
$name[$row->uid]['nachname']=$row->nachname;
}
}
echo '<table border="1"><tr><th>Name</th><th>Studiengang</th><th>Stunden</th></tr>';
foreach ($name as $uid=>$row)
{
foreach ($data[$uid] as $stg=>$row2)
{
echo '<tr><td>'.$name[$uid]['vorname'].' '.$name[$uid]['nachname'].'</td><td>'.$stg_arr[$stg].'</td><td>'.$row2.'</td></tr>';
}
}
echo '</table>';
?>
</body>
</html>
+35
View File
@@ -0,0 +1,35 @@
<?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>.
*/
require_once('../../vilesci/config.inc.php');
if(!isset($_GET['studiengang_kz']))
die('Falsche Parameteruebergabe');
else
$studiengang_kz = $_GET['studiengang_kz'];
if(isset($_GET['semester']))
$semester = $_GET['semester'];
else
$semester = '';
echo 'Studiengang: '.$studiengang_kz.' Semester:'.$semester;
?>
+6 -6
View File
@@ -446,7 +446,7 @@ if(!$error)
//pruefen ob schon eine Studentenrolle Existiert
$hlp1 = new prestudent($conn);
$hlp1->getPrestudentRolle($_POST['prestudent_id'], 'Student', $hlp->result[0]->studiensemester_kurzbz);
if(count($hlp1)>0)
if(count($hlp1->result)>0)
{
$return = false;
$errormsg = 'Diese Person ist bereits Student';
@@ -489,7 +489,7 @@ if(!$error)
$student->matrikelnr = $matrikelnr;
$student->prestudent_id = $prestd->prestudent_id;
$student->studiengang_kz = $prestd->studiengang_kz;
$student->semester = $hlp->result[0]->ausbildungssemester;
$student->semester = 1; //$hlp->result[0]->ausbildungssemester
$student->verband = ' ';
$student->gruppe = ' ';
$student->insertamum = date('Y-m-d H:i:s');
@@ -501,8 +501,8 @@ if(!$error)
$rolle = new prestudent($conn);
$rolle->prestudent_id = $prestd->prestudent_id;
$rolle->rolle_kurzbz = 'Student';
$rolle->studiensemester_kurzbz = $hlp->result[0]->studiensemester_kurzbz;
$rolle->ausbildungssemester = $hlp->result[0]->ausbildungssemester;
$rolle->studiensemester_kurzbz = $semester_aktuell; //$hlp->result[0]->studiensemester_kurzbz;
$rolle->ausbildungssemester = 1; //$hlp->result[0]->ausbildungssemester
$rolle->datum = date('Y-m-d');
$rolle->insertamum = date('Y-m-d H:i:s');
$rolle->insertvon = $user;
@@ -513,9 +513,9 @@ if(!$error)
//StudentLehrverband anlegen
$studentlehrverband = new student($conn);
$studentlehrverband->uid = $uid;
$studentlehrverband->studiensemester_kurzbz = $hlp->result[0]->studiensemester_kurzbz;
$studentlehrverband->studiensemester_kurzbz = $semester_aktuell; //$hlp->result[0]->studiensemester_kurzbz;
$studentlehrverband->studiengang_kz = $prestd->studiengang_kz;
$studentlehrverband->semester = $hlp->result[0]->ausbildungssemester;
$studentlehrverband->semester = 1; //$hlp->result[0]->ausbildungssemester
$studentlehrverband->verband = ' ';
$studentlehrverband->gruppe = ' ';
$studentlehrverband->insertamum = date('Y-m-d H:i:s');
@@ -113,6 +113,8 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<button id="student-konto-button-neu" label="Neu" oncommand="StudentKontoNeu();" disabled="true"/>
<button id="student-konto-button-gegenbuchung" label="Gegenbuchung" oncommand="StudentKontoGegenbuchung();" disabled="true"/>
<button id="student-konto-button-loeschen" label="Loeschen" oncommand="StudentKontoDelete();" disabled="true"/>
<spacer flex="1"/>
<button id="student-konto-button-zahlungsbestaetigung" label="Zahlungsbestaetigung drucken" oncommand="StudentKontoZahlungsbestaetigung();" disabled="true"/>
</hbox>
<vbox hidden="true">
<label value="Buchungsnr" control="student-konto-textbox-buchungsnr"/>
+63
View File
@@ -1034,6 +1034,8 @@ function StudentAkteDel()
}
}
// **************** KONTO ******************
// ****
// * Wenn eine buchung Ausgewaehlt wird, dann werden
// * die Details geladen und angezeigt
@@ -1150,6 +1152,7 @@ function StudentKontoDisableFields(val)
document.getElementById('student-konto-button-neu').disabled=val;
document.getElementById('student-konto-button-gegenbuchung').disabled=val;
document.getElementById('student-konto-button-loeschen').disabled=val;
document.getElementById('student-konto-button-zahlungsbestaetigung').disabled=val;
StudentKontoDetailDisableFields(true);
}
@@ -1352,6 +1355,35 @@ function StudentKontoNeuSpeichern(dialog, person_ids, studiengang_kz)
}
}
// *****
// * Druckt eine Zahlungsbestaetigung aus
// *****
function StudentKontoZahlungsbestaetigung()
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var tree = document.getElementById('student-konto-tree');
if (tree.currentIndex==-1)
{
alert('Bitte zuerst eine Buchung auswaehlen');
return;
}
if(!tree.view.getParentIndex(tree.currentIndex))
{
alert('Zum Drucken der bestaetigung bitte die oberste Buchung waehlen');
return false;
}
//Ausgewaehlte Nr holen
var col = tree.columns ? tree.columns["student-konto-tree-buchungsnr"] : "student-konto-tree-buchungsnr";
var buchungsnr=tree.view.getCellText(tree.currentIndex,col);
var uid = document.getElementById('student-detail-textbox-uid').value;
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=konto.rdf.php&xsl=Zahlung&uid='+uid+'&buchungsnr='+buchungsnr,'Zahlungsbestaetigung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
}
// *********** Zeugnis *****************
function StudentCreateZeugnis()
@@ -1680,4 +1712,35 @@ function StudentAddRolle(rolle)
SetStatusBarText('Rolle hinzugefuegt');
}
}
}
// ****
// * Druckt die Instkriptionsbestaetigung
// ****
function StudentPrintInskriptionsbestaetigung()
{
tree = document.getElementById('student-tree');
//Alle markierten Studenten holen
var start = new Object();
var end = new Object();
var numRanges = tree.view.selection.getRangeCount();
var paramList= '';
var anzahl=0;
for (var t = 0; t < numRanges; t++)
{
tree.view.selection.getRangeAt(t,start,end);
for (var v = start.value; v <= end.value; v++)
{
col = tree.columns ? tree.columns["student-treecol-uid"] : "student-treecol-uid";
uid = tree.view.getCellText(v,col);
paramList += ';'+uid;
anzahl = anzahl+1;
}
}
if(anzahl>0)
window.open('<?php echo APP_ROOT; ?>content/pdfExport.php?xml=student.rdf.php&xsl=Inskription&uid='+paramList,'Inskriptionsbestaetigung', 'height=200,width=350,left=0,top=0,hotkeys=0,resizable=yes,status=no,scrollbars=yes,toolbar=no,location=no,menubar=no,dependent=yes');
else
alert('Bitte einen Studenten auswaehlen');
}
+22 -1
View File
@@ -8,7 +8,6 @@
<!ENTITY menu-file-close.label "Beenden">
<!ENTITY menu-file-close.accesskey "B">
<!ENTITY menu-help.label "Hilfe">
<!ENTITY menu-help.accesskey "H">
@@ -36,3 +35,25 @@
<!ENTITY menu-prefs-stpltable-stundenplandev.key "d">
<!ENTITY menu-prefs-stpltable-stundenplandev.label "stundenplandev">
<!ENTITY menu-prefs-stpltable-stundenplandev.accesskey "d">
<!ENTITY menu-statistic.label "Statistik">
<!ENTITY menu-statistic.accesskey "S">
<!ENTITY menu-statistic-koordinatorstunden.key "K">
<!ENTITY menu-statistic-koordinatorstunden.label "Koordinatorstunden">
<!ENTITY menu-statistic-koordinatorstunden.accesskey "K">
<!ENTITY menu-statistic-lehrauftraege.key "L">
<!ENTITY menu-statistic-lehrauftraege.label "Lehrauftraege">
<!ENTITY menu-statistic-lehrauftraege.accesskey "L">
<!ENTITY menu-statistic-lvplanung.key "V">
<!ENTITY menu-statistic-lvplanung.label "LV-Planung">
<!ENTITY menu-statistic-lvplanung.accesskey "V">
<!ENTITY menu-dokumente.label "Dokumente">
<!ENTITY menu-dokumente.accesskey "D">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.key "I">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.label "Inskriptionsbestaetigung">
<!ENTITY menu-dokumente-inskriptionsbestaetigung.accesskey "I">
+174 -150
View File
@@ -38,11 +38,16 @@ header("Pragma: no-cache");
// content type setzen
header("Content-type: application/xhtml+xml");
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
//Parameter holen
if(isset($_GET['uid']))
$uid = $_GET['uid'];
else
die('Fehlerhafte Parameteruebergabe');
$uid=null;
if(isset($_GET['stg_kz']))
$studiengang_kz = $_GET['stg_kz'];
else
@@ -52,11 +57,6 @@ if(isset($_GET['ss']))
else
die('Fehlerhafte Parameteruebergabe');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
//String der laenger als limit ist wird
//abgeschnitten und '...' angehaengt
function CutString($strVal, $limit)
@@ -68,162 +68,186 @@ function CutString($strVal, $limit)
}
// GENERATE XML
$xml = '<?xml version="1.0" encoding="ISO-8859-15" ?>
<lehrauftrag>
<studiengang>FH-';
//Studiengang
$studiengang = new studiengang($conn, $studiengang_kz);
$xml = '<?xml version="1.0" encoding="ISO-8859-15" ?><lehrauftraege>';
if($studiengang->typ=='d')
$xml.= 'Diplom-';
elseif($studiengang->typ=='m')
$xml.= 'Master-';
elseif($studiengang->typ=='b')
$xml.= 'Bachelor-';
$xml.= 'Studiengang '.$studiengang->bezeichnung.'</studiengang>';
//Studiensemester
if(substr($ss,0,2)=='WS')
$studiensemester = 'Wintersemester '.substr($ss,2);
else
$studiensemester = 'Sommersemester '.substr($ss,2);
$xml.="
<studiensemester>$studiensemester</studiensemester>";
//Lektor
$qry = "SELECT * FROM campus.vw_mitarbeiter LEFT JOIN public.tbl_adresse USING(person_id) WHERE uid='".addslashes($uid)."' ORDER BY zustelladresse LIMIT 1";
if($result = pg_query($conn, $qry))
if($uid==null)
{
if($row = pg_fetch_object($result))
$qry = "SELECT distinct tbl_lehreinheitmitarbeiter.mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung WHERE
tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_lehrveranstaltung.studiengang_kz='".addslashes($studiengang_kz)."' AND
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($ss)."'";
if($result = pg_query($conn, $qry))
{
$xml.='
<mitarbeiter>
<titelpre>'.$row->titelpre.'</titelpre>
<vorname>'.$row->vorname.'</vorname>
<familienname>'.$row->nachname.'</familienname>
<titelpost>'.$row->titelpost.'</titelpost>
<anschrift>'.$row->strasse.'</anschrift>
<plz>'.$row->plz.'</plz>
<ort>'.$row->ort.'</ort>
<svnr>'.$row->svnr.'</svnr>
<personalnummer>'.$row->personalnummer.'</personalnummer>
</mitarbeiter>';
}
}
//Lehreinheiten
$fb_arr = array();
$fachbereich_obj = new fachbereich($conn);
$fachbereich_obj->getAll();
foreach ($fachbereich_obj->result as $fb)
$fb_arr[$fb->fachbereich_kurzbz] = $fb->bezeichnung;
$lehreinheit = new lehreinheit($conn);
$qry = "SELECT * FROM campus.vw_lehreinheit WHERE lv_studiengang_kz='".addslashes($studiengang_kz)."' AND mitarbeiter_uid='".addslashes($uid)."' AND studiensemester_kurzbz='$ss' ORDER BY lehreinheit_id";
if($result = pg_query($conn, $qry))
{
$last_le='';
$gesamtkosten = 0;
$gesamtstunden = 0;
$gruppen = array();
$grp='';
while($row = pg_fetch_object($result))
{
if($last_le!=$row->lehreinheit_id && $last_le!='')
while($row = pg_fetch_object($result))
{
array_unique($gruppen);
foreach ($gruppen as $gruppe)
$grp.=$gruppe.' ';
$xml.='
<lehreinheit>
<lehreinheit_id>'.$lehreinheit_id.'</lehreinheit_id>
<lehrveranstaltung>'.$lehrveranstaltung.'</lehrveranstaltung>
<fachbereich>'.$fb_arr[$fachbereich].'</fachbereich>
<gruppe>'.trim($grp).'</gruppe>
<stunden>'.$stunden.'</stunden>
<satz>'.$satz.'</satz>
<faktor>'.$faktor.'</faktor>
<brutto>'.number_format($brutto,2,',','.').'</brutto>
</lehreinheit>';
$gesamtkosten = $gesamtkosten + $brutto;
$gesamtstunden = $gesamtstunden + $stunden;
$lehreinheit_id='';
$lehrveranstaltung = '';
$fachbereich = '';
$gruppen= array();
$stunden = '';
$satz = '';
$faktor = '';
$brutto = '';
$grp='';
drawLehrauftrag($row->mitarbeiter_uid);
}
$lehreinheit_id=$row->lehreinheit_id;
$lehrveranstaltung = CutString($row->lv_bezeichnung,30).' '.$row->lehrform_kurzbz.' '.$row->semester.'. Semester';
$fachbereich = $row->fachbereich_kurzbz;
if($row->gruppe_kurzbz!='')
$gruppen[] = $row->gruppe_kurzbz;
else
$gruppen[] = $row->semester.$row->verband.$row->gruppe.' ';
$stunden = $row->semesterstunden;
$satz = $row->stundensatz;
$faktor = $row->faktor;
$brutto = $row->semesterstunden*$row->stundensatz*$row->faktor;
$last_le=$row->lehreinheit_id;
}
array_unique($gruppen);
foreach ($gruppen as $gruppe)
$grp.=$gruppe.' ';
$xml.='
<lehreinheit>
<lehreinheit_id>'.(isset($lehreinheit_id)?$lehreinheit_id:'').'</lehreinheit_id>
<lehrveranstaltung>'.(isset($lehrveranstaltung)?$lehrveranstaltung:'').'</lehrveranstaltung>
<fachbereich>'.(isset($fachbereich)?$fb_arr[$fachbereich]:'').'</fachbereich>
<gruppe>'.trim($grp).'</gruppe>
<stunden>'.(isset($stunden)?$stunden:'').'</stunden>
<satz>'.(isset($satz)?$satz:'').'</satz>
<faktor>'.(isset($faktor)?$faktor:'').'</faktor>
<brutto>'.(isset($brutto)?number_format($brutto,2,',','.'):'').'</brutto>
</lehreinheit>';
if(isset($brutto))
$gesamtkosten = $gesamtkosten + $brutto;
if(isset($stunden))
$gesamtstunden = $gesamtstunden + $stunden;
}
// Gesamtstunden und Gesamtkosten
$xml.="
<gesamtstunden>$gesamtstunden</gesamtstunden>
<gesamtbetrag>".number_format($gesamtkosten,2,',','.')."</gesamtbetrag>";
//Studiengangsleiter
$qry = "SELECT titelpre, vorname, nachname, titelpost FROM public.tbl_benutzerfunktion, public.tbl_person, public.tbl_benutzer WHERE
funktion_kurzbz='stgl' AND studiengang_kz='".addslashes($studiengang_kz)."'
AND tbl_benutzerfunktion.uid=tbl_benutzer.uid AND tbl_benutzer.person_id=tbl_person.person_id";
if($result = pg_query($conn, $qry))
else
drawLehrauftrag($uid);
function drawLehrauftrag($uid)
{
if($row = pg_fetch_object($result))
global $studiengang_kz, $ss, $xml, $conn;
$xml.='<lehrauftrag>
<studiengang>FH-';
//Studiengang
$studiengang = new studiengang($conn, $studiengang_kz);
if($studiengang->typ=='d')
$xml.= 'Diplom-';
elseif($studiengang->typ=='m')
$xml.= 'Master-';
elseif($studiengang->typ=='b')
$xml.= 'Bachelor-';
$xml.= 'Studiengang '.$studiengang->bezeichnung.'</studiengang>';
//Studiensemester
if(substr($ss,0,2)=='WS')
$studiensemester = 'Wintersemester '.substr($ss,2);
else
$studiensemester = 'Sommersemester '.substr($ss,2);
$xml.="
<studiensemester>$studiensemester</studiensemester>";
//Lektor
$qry = "SELECT * FROM campus.vw_mitarbeiter LEFT JOIN public.tbl_adresse USING(person_id) WHERE uid='".addslashes($uid)."' ORDER BY zustelladresse LIMIT 1";
if($result = pg_query($conn, $qry))
{
$stgl = trim($row->titelpost.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost);
$xml.="
<studiengangsleiter>$stgl</studiengangsleiter>";
if($row = pg_fetch_object($result))
{
$xml.='
<mitarbeiter>
<titelpre>'.$row->titelpre.'</titelpre>
<vorname>'.$row->vorname.'</vorname>
<familienname>'.$row->nachname.'</familienname>
<titelpost>'.$row->titelpost.'</titelpost>
<anschrift>'.$row->strasse.'</anschrift>
<plz>'.$row->plz.'</plz>
<ort>'.$row->ort.'</ort>
<svnr>'.$row->svnr.'</svnr>
<personalnummer>'.$row->personalnummer.'</personalnummer>
</mitarbeiter>';
}
}
//Lehreinheiten
$fb_arr = array();
$fachbereich_obj = new fachbereich($conn);
$fachbereich_obj->getAll();
foreach ($fachbereich_obj->result as $fb)
$fb_arr[$fb->fachbereich_kurzbz] = $fb->bezeichnung;
$lehreinheit = new lehreinheit($conn);
$qry = "SELECT * FROM campus.vw_lehreinheit WHERE lv_studiengang_kz='".addslashes($studiengang_kz)."' AND mitarbeiter_uid='".addslashes($uid)."' AND studiensemester_kurzbz='$ss' ORDER BY lehreinheit_id";
if($result = pg_query($conn, $qry))
{
$last_le='';
$gesamtkosten = 0;
$gesamtstunden = 0;
$gruppen = array();
$grp='';
while($row = pg_fetch_object($result))
{
if($last_le!=$row->lehreinheit_id && $last_le!='')
{
array_unique($gruppen);
foreach ($gruppen as $gruppe)
$grp.=$gruppe.' ';
$xml.='
<lehreinheit>
<lehreinheit_id>'.$lehreinheit_id.'</lehreinheit_id>
<lehrveranstaltung><![CDATA['.$lehrveranstaltung.']]></lehrveranstaltung>
<fachbereich>'.$fb_arr[$fachbereich].'</fachbereich>
<gruppe>'.trim($grp).'</gruppe>
<stunden>'.$stunden.'</stunden>
<satz>'.$satz.'</satz>
<faktor>'.$faktor.'</faktor>
<brutto>'.number_format($brutto,2,',','.').'</brutto>
</lehreinheit>';
$gesamtkosten = $gesamtkosten + $brutto;
$gesamtstunden = $gesamtstunden + $stunden;
$lehreinheit_id='';
$lehrveranstaltung = '';
$fachbereich = '';
$gruppen= array();
$stunden = '';
$satz = '';
$faktor = '';
$brutto = '';
$grp='';
}
$lehreinheit_id=$row->lehreinheit_id;
$lehrveranstaltung = CutString($row->lv_bezeichnung,30).' '.$row->lehrform_kurzbz.' '.$row->semester.'. Semester';
$fachbereich = $row->fachbereich_kurzbz;
if($row->gruppe_kurzbz!='')
$gruppen[] = $row->gruppe_kurzbz;
else
$gruppen[] = $row->semester.$row->verband.$row->gruppe.' ';
$stunden = $row->semesterstunden;
$satz = $row->stundensatz;
$faktor = $row->faktor;
$brutto = $row->semesterstunden*$row->stundensatz*$row->faktor;
$last_le=$row->lehreinheit_id;
}
array_unique($gruppen);
foreach ($gruppen as $gruppe)
$grp.=$gruppe.' ';
$xml.='
<lehreinheit>
<lehreinheit_id>'.(isset($lehreinheit_id)?$lehreinheit_id:'').'</lehreinheit_id>
<lehrveranstaltung><![CDATA['.(isset($lehrveranstaltung)?$lehrveranstaltung:'').']]></lehrveranstaltung>
<fachbereich>'.(isset($fachbereich)?$fb_arr[$fachbereich]:'').'</fachbereich>
<gruppe>'.trim($grp).'</gruppe>
<stunden>'.(isset($stunden)?$stunden:'').'</stunden>
<satz>'.(isset($satz)?$satz:'').'</satz>
<faktor>'.(isset($faktor)?$faktor:'').'</faktor>
<brutto>'.(isset($brutto)?number_format($brutto,2,',','.'):'').'</brutto>
</lehreinheit>';
if(isset($brutto))
$gesamtkosten = $gesamtkosten + $brutto;
if(isset($stunden))
$gesamtstunden = $gesamtstunden + $stunden;
}
// Gesamtstunden und Gesamtkosten
$xml.="
<gesamtstunden>$gesamtstunden</gesamtstunden>
<gesamtbetrag>".number_format($gesamtkosten,2,',','.')."</gesamtbetrag>";
//Studiengangsleiter
$qry = "SELECT titelpre, vorname, nachname, titelpost FROM public.tbl_benutzerfunktion, public.tbl_person, public.tbl_benutzer WHERE
funktion_kurzbz='stgl' AND studiengang_kz='".addslashes($studiengang_kz)."'
AND tbl_benutzerfunktion.uid=tbl_benutzer.uid AND tbl_benutzer.person_id=tbl_person.person_id";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
$stgl = trim($row->titelpost.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost);
$xml.="
<studiengangsleiter>$stgl</studiengangsleiter>";
}
}
$xml.= '
<datum>'.date('d.m.Y').'</datum>
</lehrauftrag>
';
}
$xml.= '
<datum>'.date('d.m.Y').'</datum>
</lehrauftrag>
';
// END GENERATE XML
echo $xml;
echo $xml.'</lehrauftraege>';
?>
+4 -2
View File
@@ -1,6 +1,8 @@
AuthName "Technikum-Wien"
AuthType Basic
AuthLDAPURL ldap://bdc1.technikum-wien.at/ou=People,dc=technikum-wien,dc=at?uid?one?objectClass=posixAccount
AuthType Basic
AuthLDAPURL ldap://ldap.technikum-wien.at/ou=People,dc=technikum-wien,dc=at?uid?one?objectclass=posixAccount
AuthLDAPGroupAttributeIsDN Off
AuthLDAPGroupAttribute memberuid
require group cn=fhadmin,ou=Group,dc=technikum-wien,dc=at
require user trob
require user wahl