diff --git a/rdf/konto.rdf.php b/rdf/konto.rdf.php
index 527518efa..5bf85e21f 100644
--- a/rdf/konto.rdf.php
+++ b/rdf/konto.rdf.php
@@ -37,32 +37,37 @@ echo '';
// DAO
require_once('../vilesci/config.inc.php');
require_once('../include/konto.class.php');
-require_once('../include/functions.inc.php');
+//require_once('../include/functions.inc.php');
// Datenbank Verbindung
-if (!$conn = @pg_pconnect(CONN_STRING))
+if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
-$user = get_uid();
-
$hier='';
+if(isset($_GET['xmlformat']))
+{
+ $xmlformat=$_GET['xmlformat'];
+}
+else
+ $xmlformat='rdf';
+
if(isset($_GET['person_id']) && is_numeric($_GET['person_id']))
{
$person_id=$_GET['person_id'];
}
-else
+else
$person_id='';
if(isset($_GET['filter']))
$filter=$_GET['filter'];
-else
+else
$filter='alle';
if(isset($_GET['buchungsnr']) && is_numeric($_GET['buchungsnr']))
{
$buchungsnr = $_GET['buchungsnr'];
}
-else
+else
$buchungsnr = '';
$konto = new konto($conn, null, true);
@@ -76,11 +81,13 @@ elseif($buchungsnr!='')
if(!$konto->load($buchungsnr))
die($konto->errormsg);
}
-else
+else
die('Falsche Parameteruebergabe');
+// ----------------------------------- RDF --------------------------------------
$rdf_url='http://www.technikum-wien.at/konto';
-
+if ($xmlformat=='rdf')
+{
?>
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.="
buchungsnr.'" />';
}
}
}
- $hier.="
+ $hier.="
";
-
+
}
}
-else
+else
{
$hier.="buchungsnr.'" />';
drawrow($konto);
@@ -155,6 +162,55 @@ else
echo $hier;
?>
-
-
+\n";
+ function drawrow_xml($row)
+ {
+ echo "
+
+ buchungsnr."]]>
+ person_id."]]>
+ studiengang_kz."]]>
+ studiensemester_kurzbz."]]>
+ buchungsnr_verweis."]]>
+ betrag."]]>
+ buchungsdatum."]]>
+ buchungstext."]]>
+ mahnspanne."]]>
+ buchungstyp_kurzbz."]]>
+ updateamum."]]>
+ updatevon."]]>
+ insertamum."]]>
+ ";
+ }
+ function drawperson_xml($row)
+ {
+ echo "
+
+ person_id."]]>
+ anrede."]]>
+ titelpost."]]>
+ titelpre."]]>
+ nachname."]]>
+ vorname."]]>
+ vornamen."]]>
+ ";
+ }
+
+ if($person_id!='')
+ foreach ($konto->result as $buchung)
+ drawrow_xml($buchung);
+ else
+ {
+ drawperson_xml($konto);
+ drawrow_xml($konto);
+ }
+
+ echo "\n";
+}
+?>
\ No newline at end of file
diff --git a/rdf/lehrauftrag.xml.php b/rdf/lehrauftrag.xml.php
new file mode 100644
index 000000000..170b72c19
--- /dev/null
+++ b/rdf/lehrauftrag.xml.php
@@ -0,0 +1,229 @@
+,
+ * Andreas Oesterreicher and
+ * Rudolf Hangl .
+ */
+/* Erstellt einen Lehrauftrag im PDF Format
+ *
+ * Erstellt ein XML File fuer den Lehrauftrag
+ */
+require_once('../vilesci/config.inc.php');
+require_once('../include/functions.inc.php');
+require_once('../include/benutzerberechtigung.class.php');
+require_once('../include/studiengang.class.php');
+require_once('../include/lehreinheit.class.php');
+require_once('../include/fachbereich.class.php');
+
+// 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");
+
+//Parameter holen
+if(isset($_GET['uid']))
+ $uid = $_GET['uid'];
+else
+ die('Fehlerhafte Parameteruebergabe');
+if(isset($_GET['stg_kz']))
+ $studiengang_kz = $_GET['stg_kz'];
+else
+ die('Fehlerhafte Parameteruebergabe');
+if(isset($_GET['ss']))
+ $ss = $_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)
+{
+ if(strlen($strVal) > $limit+3)
+ return substr($strVal, 0, $limit) . "...";
+ else
+ return $strVal;
+}
+
+// GENERATE XML
+$xml = '
+
+ 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.'';
+
+//Studiensemester
+if(substr($ss,0,2)=='WS')
+ $studiensemester = 'Wintersemester '.substr($ss,2);
+else
+ $studiensemester = 'Sommersemester '.substr($ss,2);
+$xml.="
+ $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($row = pg_fetch_object($result))
+ {
+ $xml.='
+
+ '.$row->titelpre.'
+ '.$row->vorname.'
+ '.$row->nachname.'
+ '.$row->titelpost.'
+ '.$row->strasse.'
+ '.$row->plz.'
+ '.$row->ort.'
+ '.$row->svnr.'
+ '.$row->personalnummer.'
+ ';
+ }
+}
+
+//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_id.'
+ '.$lehrveranstaltung.'
+ '.$fb_arr[$fachbereich].'
+ '.trim($grp).'
+ '.$stunden.'
+ '.$satz.'
+ '.$faktor.'
+ '.number_format($brutto,2,',','.').'
+ ';
+
+ $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.='
+
+ '.(isset($lehreinheit_id)?$lehreinheit_id:'').'
+ '.(isset($lehrveranstaltung)?$lehrveranstaltung:'').'
+ '.(isset($fachbereich)?$fb_arr[$fachbereich]:'').'
+ '.trim($grp).'
+ '.(isset($stunden)?$stunden:'').'
+ '.(isset($satz)?$satz:'').'
+ '.(isset($faktor)?$faktor:'').'
+ '.(isset($brutto)?number_format($brutto,2,',','.'):'').'
+ ';
+
+ if(isset($brutto))
+ $gesamtkosten = $gesamtkosten + $brutto;
+ if(isset($stunden))
+ $gesamtstunden = $gesamtstunden + $stunden;
+}
+
+// Gesamtstunden und Gesamtkosten
+$xml.="
+ $gesamtstunden
+ ".number_format($gesamtkosten,2,',','.')."";
+
+//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.="
+ $stgl";
+ }
+}
+
+$xml.= '
+ '.date('d.m.Y').'
+
+';
+
+// END GENERATE XML
+echo $xml;
+
+?>
\ No newline at end of file