mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
- Weiterbildung aktualisiert
- Kontoverwaltung Erstversion
This commit is contained in:
@@ -36,6 +36,138 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
|
||||
>
|
||||
<!-- Zeugnis Overlay -->
|
||||
<vbox id="student-konto" style="margin:0px;" flex="1">
|
||||
|
||||
<popupset>
|
||||
<popup id="student-konto-tree-popup">
|
||||
<menuitem label="Entfernen" oncommand="StudentKontoDel();" id="student-konto-tree-popup-kontodel" hidden="false"/>
|
||||
</popup>
|
||||
</popupset>
|
||||
<hbox flex="1">
|
||||
<grid id="student-konto-grid-detail" style="overflow:auto;margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="1"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-konto-button-filter" label="offene" disabled="true"/>
|
||||
</hbox>
|
||||
<spacer />
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<tree id="student-konto-tree" seltype="single" hidecolumnpicker="false" flex="1"
|
||||
datasources="rdf:null" ref="http://www.technikum-wien.at/konto/liste"
|
||||
style="margin-left:10px;margin-right:10px;margin-bottom:5px;margin-top: 10px;" height="100px" enableColumnDrag="true"
|
||||
onclick="StudentKontoAuswahl()"
|
||||
context="student-konto-tree-popup"
|
||||
>
|
||||
|
||||
<treecols>
|
||||
<treecol id="student-konto-tree-buchungsdatum" label="Buchungsdatum" flex="2" hidden="false" primary="true"
|
||||
class="sortDirectionIndicator"
|
||||
sortActive="true"
|
||||
sortDirection="ascending"
|
||||
sort="rdf:http://www.technikum-wien.at/konto/rdf#buchungsdatum"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-konto-tree-buchungstext" label="Buchungstext" flex="5" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/konto/rdf#buchungstext"/>
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-konto-tree-betrag" label="Betrag" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/konto/rdf#betrag" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-konto-tree-studiensemester_kurzbz" label="StSem" flex="2" hidden="false"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/konto/rdf#studiensemester_kurzbz" />
|
||||
<splitter class="tree-splitter"/>
|
||||
<treecol id="student-konto-tree-buchungsnr" label="buchungs_nr" flex="2" hidden="true"
|
||||
class="sortDirectionIndicator"
|
||||
sort="rdf:http://www.technikum-wien.at/konto/rdf#buchungsnr" />
|
||||
<splitter class="tree-splitter"/>
|
||||
</treecols>
|
||||
|
||||
<template>
|
||||
<treechildren flex="1" >
|
||||
<treeitem uri="rdf:*">
|
||||
<treerow>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/konto/rdf#buchungsdatum"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/konto/rdf#buchungstext"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/konto/rdf#betrag"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/konto/rdf#studiensemester_kurzbz"/>
|
||||
<treecell label="rdf:http://www.technikum-wien.at/konto/rdf#buchungsnr"/>
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
</template>
|
||||
</tree>
|
||||
<vbox>
|
||||
<hbox>
|
||||
<button id="student-konto-button-neu" label="Neu" disabled="true"/>
|
||||
<button id="student-konto-button-gegenbuchung" label="Gegenbuchung" disabled="true"/>
|
||||
<button id="student-konto-button-loeschen" label="Loeschen" disabled="true"/>
|
||||
</hbox>
|
||||
<groupbox id="student-konto-groupbox" flex="1">
|
||||
<caption label="Details"/>
|
||||
<grid id="student-konto-grid-detail" style="overflow:auto;margin:4px;" flex="1">
|
||||
<columns >
|
||||
<column flex="1"/>
|
||||
<column flex="5"/>
|
||||
</columns>
|
||||
<rows>
|
||||
<row>
|
||||
<label value="Betrag" control="student-konto-textbox-betrag"/>
|
||||
<hbox>
|
||||
<textbox id="student-konto-textbox-betrag" disabled="true" maxlength="9" size="9"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Buchungsdatum" control="student-konto-textbox-buchungsdatum"/>
|
||||
<hbox>
|
||||
<textbox id="student-konto-textbox-buchungsdatum" disabled="true" maxlength="10" size="10"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Buchungstext" control="student-konto-textbox-buchungstext"/>
|
||||
<textbox id="student-konto-textbox-buchungstext" disabled="true" maxlength="256"/>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Mahnspanne" control="student-konto-textbox-mahnspanne"/>
|
||||
<hbox>
|
||||
<textbox id="student-konto-textbox-mahnspanne" disabled="true" maxlength="4" size="4"/>
|
||||
<spacer flex="1" />
|
||||
</hbox>
|
||||
</row>
|
||||
<row>
|
||||
<label value="Typ" control="student-konto-menulist-buchungstyp"/>
|
||||
<menulist id="student-konto-menulist-buchungstyp" disabled="true"
|
||||
datasources="<?php echo APP_ROOT ?>rdf/buchungstyp.rdf.php" flex="1"
|
||||
ref="http://www.technikum-wien.at/buchungstyp/liste" >
|
||||
<template>
|
||||
<menupopup>
|
||||
<menuitem value="rdf:http://www.technikum-wien.at/buchungstyp/rdf#buchungstyp_kurzbz"
|
||||
label="rdf:http://www.technikum-wien.at/buchungstyp/rdf#beschreibung"
|
||||
uri="rdf:*"/>
|
||||
</menupopup>
|
||||
</template>
|
||||
</menulist>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
<hbox>
|
||||
<spacer flex="1" />
|
||||
<button id="student-konto-button-speichern" label="Speichern" disabled="true"/>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</row>
|
||||
</rows>
|
||||
</grid>
|
||||
</hbox>
|
||||
<spacer flex="1" />
|
||||
</vbox>
|
||||
</overlay>
|
||||
@@ -636,6 +636,23 @@ function StudentAuswahl()
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
var datasource = rdfService.GetDataSource(url);
|
||||
rollentree.database.AddDataSource(datasource);
|
||||
|
||||
//Zeugnis
|
||||
kontotree = document.getElementById('student-konto-tree');
|
||||
url='<?php echo APP_ROOT;?>rdf/konto.rdf.php?person_id='+person_id+"&"+gettimestamp();
|
||||
|
||||
//Alte DS entfernen
|
||||
var oldDatasources = kontotree.database.GetDataSources();
|
||||
while(oldDatasources.hasMoreElements())
|
||||
{
|
||||
kontotree.database.RemoveDataSource(oldDatasources.getNext());
|
||||
}
|
||||
//Refresh damit die entfernten DS auch wirklich entfernt werden
|
||||
kontotree.builder.rebuild();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
|
||||
var datasource = rdfService.GetDataSource(url);
|
||||
kontotree.database.AddDataSource(datasource);
|
||||
|
||||
//Zeugnis
|
||||
zeugnistree = document.getElementById('student-zeugnis-tree');
|
||||
@@ -851,4 +868,55 @@ function StudentAkteDel()
|
||||
|
||||
StudentTreeRefresh();
|
||||
}
|
||||
}
|
||||
|
||||
// ****
|
||||
// * Wenn eine buchung Ausgewaehlt wird, dann werden
|
||||
// * die Details geladen und angezeigt
|
||||
// ****
|
||||
function StudentKontoAuswahl()
|
||||
{
|
||||
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||
var tree = document.getElementById('student-konto-tree');
|
||||
|
||||
if (tree.currentIndex==-1) return;
|
||||
|
||||
//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);
|
||||
|
||||
//Daten holen
|
||||
var url = '<?php echo APP_ROOT ?>rdf/konto.rdf.php?buchungsnr='+buchungsnr+'&'+gettimestamp();
|
||||
|
||||
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
|
||||
getService(Components.interfaces.nsIRDFService);
|
||||
|
||||
var dsource = rdfService.GetDataSourceBlocking(url);
|
||||
|
||||
var subject = rdfService.GetResource("http://www.technikum-wien.at/konto/" + buchungsnr);
|
||||
|
||||
var predicateNS = "http://www.technikum-wien.at/konto/rdf";
|
||||
|
||||
//Daten holen
|
||||
|
||||
person_id = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#person_id" ));
|
||||
studiengang_kz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiengang_kz" ));
|
||||
studiensemester_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#studiensemester_kurzbz" ));
|
||||
buchungsnr_verweis = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#buchungsnr_verweis" ));
|
||||
betrag = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#betrag" ));
|
||||
buchungsdatum = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#buchungsdatum" ));
|
||||
buchungstext = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#buchungstext" ));
|
||||
mahnspanne = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#mahnspanne" ));
|
||||
buchungstyp_kurzbz = getTargetHelper(dsource,subject,rdfService.GetResource( predicateNS + "#buchungstyp_kurzbz" ));
|
||||
|
||||
document.getElementById('student-konto-textbox-betrag').value=betrag;
|
||||
document.getElementById('student-konto-textbox-buchungsdatum').value=buchungsdatum;
|
||||
document.getElementById('student-konto-textbox-buchungstext').value=buchungstext;
|
||||
document.getElementById('student-konto-textbox-mahnspanne').value=mahnspanne;
|
||||
document.getElementById('student-konto-menulist-buchungstyp').value=buchungstyp_kurzbz;
|
||||
}
|
||||
|
||||
function StudentKontoDisableFields(val)
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,372 @@
|
||||
<?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>.
|
||||
*/
|
||||
/**
|
||||
* Klasse Konto
|
||||
* @create 2007-05-14
|
||||
*/
|
||||
|
||||
class konto
|
||||
{
|
||||
var $conn; // @var resource DB-Handle
|
||||
var $new; // @var boolean
|
||||
var $errormsg; // @var string
|
||||
var $result = array(); // @var adresse Objekt
|
||||
|
||||
//Tabellenspalten
|
||||
var $buchungsnr;
|
||||
var $person_id;
|
||||
var $studiengang_kz;
|
||||
var $studiensemester_kurzbz;
|
||||
var $buchungsnr_verweis;
|
||||
var $betrag;
|
||||
var $buchungsdatum;
|
||||
var $buchungstext;
|
||||
var $mahnspanne;
|
||||
var $buchungstyp_kurzbz;
|
||||
var $updateamum;
|
||||
var $updatevon;
|
||||
var $insertamum;
|
||||
var $insertvon;
|
||||
var $ext_id;
|
||||
|
||||
var $beschreibung;
|
||||
|
||||
// **************************************************************************
|
||||
// * Konstruktor
|
||||
// * @param $conn Connection
|
||||
// * $buchungsnr ID der Adresse die geladen werden soll (Default=null)
|
||||
// **************************************************************************
|
||||
function konto($conn, $buchungsnr=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($buchungsnr!=null)
|
||||
$this->load($buchungsnr);
|
||||
}
|
||||
|
||||
// ************************************************
|
||||
// * Laedt die Funktion mit der ID $buchungsnr
|
||||
// * @param $buchungsnr ID der zu ladenden Email
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// ************************************************
|
||||
function load($buchungsnr)
|
||||
{
|
||||
if(!is_numeric($buchungsnr))
|
||||
{
|
||||
$this->errormsg = 'Buchungsnr muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT * FROM public.tbl_konto WHERE buchungsnr='$buchungsnr'";
|
||||
|
||||
if($result = pg_query($this->conn, $qry))
|
||||
{
|
||||
if($row = pg_fetch_object($result))
|
||||
{
|
||||
$this->buchungsnr = $row->buchungsnr;
|
||||
$this->person_id = $row->person_id;
|
||||
$this->studiengang_kz = $row->studiengang_kz;
|
||||
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$this->buchungsnr_verweis = $row->buchungsnr_verweis;
|
||||
$this->betrag = $row->betrag;
|
||||
$this->buchungsdatum = $row->buchungsdatum;
|
||||
$this->buchungstext = $row->buchungstext;
|
||||
$this->mahnspanne = $row->mahnspanne;
|
||||
$this->buchungstyp_kurzbz = $row->buchungstyp_kurzbz;
|
||||
$this->updatamum = $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 = 'Datensatz wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// *******************************************
|
||||
// * Prueft die Variablen auf gueltigkeit
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// *******************************************
|
||||
function checkvars()
|
||||
{
|
||||
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 in die Datenbank
|
||||
// * Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
|
||||
// * andernfalls wird der Datensatz mit der ID in $kontakt_id aktualisiert
|
||||
// * @param $new true wenn insert false wenn update
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// ***********************************************************************
|
||||
function save($new=null)
|
||||
{
|
||||
//Variablen pruefen
|
||||
if(!$this->checkvars())
|
||||
return false;
|
||||
|
||||
if($new==null)
|
||||
$new = $this->new;
|
||||
|
||||
if($new)
|
||||
{
|
||||
//Neuen Datensatz einfuegen
|
||||
|
||||
$qry='BEGIN;INSERT INTO public.tbl_konto (person_id, studiengang_kz, studiensemester_kurzbz, buchungsnr_verweis, betrag, buchungsdatum, buchungstext, mahnspanne, buchungstyp_kurzbz, updateamum, updatevon, insertamum, insertvon, ext_id) VALUES('.
|
||||
$this->addslashes($this->person_id).', '.
|
||||
$this->addslashes($this->studiengang_kz).', '.
|
||||
$this->addslashes($this->studiensemester_kurzbz).', '.
|
||||
$this->addslashes($this->buchungsnr_verweis).', '.
|
||||
$this->addslashes($this->betrag).', '.
|
||||
$this->addslashes($this->buchungsdatum).', '.
|
||||
$this->addslashes($this->buchungstext).', '.
|
||||
$this->addslashes($this->mahnspanne).', '.
|
||||
$this->addslashes($this->buchungstyp_kurzbz).', '.
|
||||
$this->addslashes($this->updateamum).', '.
|
||||
$this->addslashes($this->updatevon).', '.
|
||||
$this->addslashes($this->insertamum).', '.
|
||||
$this->addslashes($this->insertvon).', '.
|
||||
$this->addslashes($this->ext_id).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
//Updaten des bestehenden Datensatzes
|
||||
$qry = 'UPDATE public.tbl_konto SET '.
|
||||
' person_id='.$this->addslashes($this->person_id).','.
|
||||
' studiengang_kz='.$this->addslashes($this->studiengang_kz).','.
|
||||
' studiensemester_kurzbz='.$this->addslashes($this->studiensemester_kurzbz).','.
|
||||
' buchungsnr_verweis='.$this->addslashes($this->buchungsnr_verweis).','.
|
||||
' betrag='.$this->addslashes($this->betrag).','.
|
||||
' buchungsdatum='.$this->addslashes($this->buchungsdatum).','.
|
||||
' buchungstext='.$this->addslashes($this->buchungstext).','.
|
||||
' mahnspanne='.$this->addslashes($this->mahnspanne).','.
|
||||
' buchungstyp_kurzbz='.$this->addslashes($this->buchungstyp_kurzbz).','.
|
||||
' 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).';';
|
||||
|
||||
}
|
||||
//echo $qry;
|
||||
|
||||
if(pg_query($this->conn, $qry))
|
||||
{
|
||||
if($new)
|
||||
{
|
||||
$qry = "SELECT currval('public.tbl_konto_buchungsnr_seq') as id";
|
||||
if($result = pg_query($this->conn, $qry))
|
||||
{
|
||||
if($row = pg_fetch_object($result))
|
||||
{
|
||||
$this->buchungsnr = $row->id;
|
||||
pg_query($this->conn, 'COMMIT;');
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der Daten';
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Loescht den Datenensatz mit der ID die uebergeben wird
|
||||
* @param buchungsnr ID die geloescht werden soll
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
function delete($buchungsnr)
|
||||
{
|
||||
//Pruefen ob Verweise auf diese Buchung Vorhanden sind
|
||||
$qry = "SELECT count(*) as anzahl FROM public.tbl_konto WHERE buchungsnr_verweis='".addslashes($buchungsnr)."'";
|
||||
if($result = pg_query($this->conn, $qry))
|
||||
{
|
||||
if($row = pg_fetch_object($this->conn, $qry))
|
||||
{
|
||||
if($row->anzahl>0)
|
||||
{
|
||||
$this->errormsg = 'Bitte zuerst die zugeordneten Buchungen loeschen';
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Wenn keine Verweise Vorhanden sind, dann die Buchung loeschen
|
||||
$qry = "DELETE FROM public.tbl_konto WHERE buchungsnr_verweis='".addslashes($buchungsnr)."'";
|
||||
if(pg_query($this->conn, $qry))
|
||||
return true;
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Loeschen der Buchung';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Ermitteln der Verweise';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Ermitteln der Verweise';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// ******************************************
|
||||
// * Laedt alle Buchungen einer Person
|
||||
// * und legt diese geordnet in ein Array
|
||||
// * @param person_id
|
||||
// * @return true wenn ok, false wenn fehler
|
||||
// ******************************************
|
||||
function getBuchungen($person_id)
|
||||
{
|
||||
if(!is_numeric($person_id))
|
||||
{
|
||||
$this->errormsg = 'Person_id muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT * FROM public.tbl_konto WHERE person_id='".$person_id."' ORDER BY buchungsdatum";
|
||||
|
||||
if($result = pg_query($this->conn, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
$buchung = new konto($this->conn, null, null);
|
||||
|
||||
$buchung->buchungsnr = $row->buchungsnr;
|
||||
$buchung->person_id = $row->person_id;
|
||||
$buchung->studiengang_kz = $row->studiengang_kz;
|
||||
$buchung->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$buchung->buchungsnr_verweis = $row->buchungsnr_verweis;
|
||||
$buchung->betrag = $row->betrag;
|
||||
$buchung->buchungsdatum = $row->buchungsdatum;
|
||||
$buchung->buchungstext = $row->buchungstext;
|
||||
$buchung->mahnspanne = $row->mahnspanne;
|
||||
$buchung->buchungstyp_kurzbz = $row->buchungstyp_kurzbz;
|
||||
$buchung->updatamum = $row->updateamum;
|
||||
$buchung->updatevon = $row->updatevon;
|
||||
$buchung->insertamum = $row->insertamum;
|
||||
$buchung->insertvon = $row->insertvon;
|
||||
$buchung->ext_id = $row->ext_id;
|
||||
|
||||
if($buchung->buchungsnr_verweis!='')
|
||||
{
|
||||
$this->result[$buchung->buchungsnr_verweis]['childs'][] = $buchung;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->result[$buchung->buchungsnr]['parent'] = $buchung;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// ******************************************
|
||||
// * Liefert alle Buchungstypen
|
||||
// * @return true wenn ok, false wenn Fehler
|
||||
// ******************************************
|
||||
function getBuchungstyp()
|
||||
{
|
||||
$qry = "SELECT * FROM public.tbl_buchungstyp ORDER BY beschreibung";
|
||||
|
||||
if($result = pg_query($this->conn, $qry))
|
||||
{
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
$typ = new konto($this->conn, null, null);
|
||||
|
||||
$typ->buchungstyp_kurzbz = $row->buchungstyp_kurzbz;
|
||||
$typ->beschreibung = $row->beschreibung;
|
||||
|
||||
$this->result[] = $typ;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,67 @@
|
||||
<?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/konto.class.php');
|
||||
|
||||
// Datenbank Verbindung
|
||||
if (!$conn = @pg_pconnect(CONN_STRING))
|
||||
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
|
||||
|
||||
// studiensemester holen
|
||||
$typ = new konto($conn,null, true);
|
||||
$typ->getBuchungstyp();
|
||||
|
||||
$rdf_url='http://www.technikum-wien.at/buchungstyp';
|
||||
|
||||
?>
|
||||
|
||||
<RDF:RDF
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:TYP="<?php echo $rdf_url; ?>/rdf#"
|
||||
>
|
||||
<RDF:Seq about="<?php echo $rdf_url ?>/liste">
|
||||
<?php
|
||||
foreach ($typ->result as $row)
|
||||
{
|
||||
?>
|
||||
<RDF:li>
|
||||
<RDF:Description id="<?php echo $row->buchungstyp_kurzbz; ?>" about="<?php echo $rdf_url.'/'.$row->buchungstyp_kurzbz; ?>" >
|
||||
<TYP:buchungstyp_kurzbz><![CDATA[<?php echo $row->buchungstyp_kurzbz ?>]]></TYP:buchungstyp_kurzbz>
|
||||
<TYP:beschreibung><![CDATA[<?php echo $row->beschreibung ?>]]></TYP:beschreibung>
|
||||
</RDF:Description>
|
||||
</RDF:li>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</RDF:Seq>
|
||||
</RDF:RDF>
|
||||
@@ -0,0 +1,155 @@
|
||||
<?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>.
|
||||
*/
|
||||
/*
|
||||
* Created on 02.12.2004
|
||||
*
|
||||
* To change the template for this generated file go to
|
||||
* Window - Preferences - PHPeclipse - PHP - Code Templates
|
||||
*/
|
||||
// header fuer no cache
|
||||
header("Cache-Control: no-cache, must-revalidate");
|
||||
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/konto.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
|
||||
// Datenbank Verbindung
|
||||
if (!$conn = @pg_pconnect(CONN_STRING))
|
||||
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$hier='';
|
||||
if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
|
||||
{
|
||||
$person_id=$_GET['person_id'];
|
||||
}
|
||||
else
|
||||
$person_id='';
|
||||
|
||||
if(isset($_GET['buchungsnr']) && is_numeric($_GET['buchungsnr']))
|
||||
{
|
||||
$buchungsnr = $_GET['buchungsnr'];
|
||||
}
|
||||
else
|
||||
$buchungsnr = '';
|
||||
|
||||
$konto = new konto($conn, null, true);
|
||||
|
||||
if($person_id!='')
|
||||
{
|
||||
$konto->getBuchungen($person_id);
|
||||
}
|
||||
elseif($buchungsnr!='')
|
||||
{
|
||||
if(!$konto->load($buchungsnr))
|
||||
die($konto->errormsg);
|
||||
}
|
||||
else
|
||||
die('Falsche Parameteruebergabe');
|
||||
|
||||
$rdf_url='http://www.technikum-wien.at/konto';
|
||||
|
||||
?>
|
||||
|
||||
<RDF:RDF
|
||||
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:KONTO="<?php echo $rdf_url; ?>/rdf#"
|
||||
>
|
||||
|
||||
<?php
|
||||
function drawrow($row)
|
||||
{
|
||||
global $rdf_url;
|
||||
echo "
|
||||
<RDF:Description id=\"".$row->buchungsnr."\" about=\"".$rdf_url.'/'.$row->buchungsnr."\" >
|
||||
<KONTO:buchungsnr><![CDATA[".$row->buchungsnr."]]></KONTO:buchungsnr>
|
||||
<KONTO:person_id><![CDATA[".$row->person_id."]]></KONTO:person_id>
|
||||
<KONTO:studiengang_kz><![CDATA[".$row->studiengang_kz."]]></KONTO:studiengang_kz>
|
||||
<KONTO:studiensemester_kurzbz><![CDATA[".$row->studiensemester_kurzbz."]]></KONTO:studiensemester_kurzbz>
|
||||
<KONTO:buchungsnr_verweis><![CDATA[".$row->buchungsnr_verweis."]]></KONTO:buchungsnr_verweis>
|
||||
<KONTO:betrag><![CDATA[".$row->betrag."]]></KONTO:betrag>
|
||||
<KONTO:buchungsdatum><![CDATA[".$row->buchungsdatum."]]></KONTO:buchungsdatum>
|
||||
<KONTO:buchungstext><![CDATA[".$row->buchungstext."]]></KONTO:buchungstext>
|
||||
<KONTO:mahnspanne><![CDATA[".$row->mahnspanne."]]></KONTO:mahnspanne>
|
||||
<KONTO:buchungstyp_kurzbz><![CDATA[".$row->buchungstyp_kurzbz."]]></KONTO:buchungstyp_kurzbz>
|
||||
<KONTO:updateamum><![CDATA[".$row->updateamum."]]></KONTO:updateamum>
|
||||
<KONTO:updatevon><![CDATA[".$row->updatevon."]]></KONTO:updatevon>
|
||||
<KONTO:insertamum><![CDATA[".$row->insertamum."]]></KONTO:insertamum>
|
||||
<KONTO:insertvon><![CDATA[".$row->insertvon."]]></KONTO:insertvon>
|
||||
</RDF:Description>";
|
||||
}
|
||||
|
||||
if($person_id!='')
|
||||
{
|
||||
foreach ($konto->result as $buchung)
|
||||
{
|
||||
$buchung = $buchung['parent'];
|
||||
//1. Ebene
|
||||
drawrow($buchung);
|
||||
|
||||
$hier.="
|
||||
<RDF:li>
|
||||
<RDF:Seq about=\"".$rdf_url.'/'.$buchung->buchungsnr."\" >";
|
||||
|
||||
if(isset($konto->result[$buchung->buchungsnr]['childs']))
|
||||
{
|
||||
//2. Ebene
|
||||
foreach ($konto->result[$buchung->buchungsnr]['childs'] as $row)
|
||||
{
|
||||
if(is_object($row))
|
||||
{
|
||||
drawrow($row);
|
||||
|
||||
$hier.="
|
||||
<RDF:li resource=\"".$rdf_url.'/'.$row->buchungsnr.'" />';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$hier.="
|
||||
</RDF:Seq>
|
||||
</RDF:li>";
|
||||
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$hier.="<RDF:li resource=\"".$rdf_url.'/'.$konto->buchungsnr.'" />';
|
||||
drawrow($konto);
|
||||
}
|
||||
$hier="
|
||||
<RDF:Seq about=\"".$rdf_url."/liste\">".$hier."
|
||||
</RDF:Seq>";
|
||||
|
||||
echo $hier;
|
||||
?>
|
||||
|
||||
|
||||
</RDF:RDF>
|
||||
Reference in New Issue
Block a user