- Anpassung FAS und Tempus an Datenbankklasse

- Entfernung des alten FAS-Prototypen-Moduls
This commit is contained in:
Andreas Österreicher
2009-06-19 11:39:09 +00:00
parent 6241258141
commit 17ba3bab8d
97 changed files with 595 additions and 9487 deletions
+54 -55
View File
@@ -25,39 +25,37 @@
* Hilfe der XSL-FO Vorlage aus der DB und generiert
* daraus ein PDF (xslfo2pdf)
*/
require_once('../vilesci/config.inc.php');
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/xslfo2pdf/xslfo2pdf.php');
require_once('../include/fop.class.php');
require_once('../include/akte.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$user = get_uid();
loadVariables($conn, $user);
$db = new basis_db();
loadVariables($user);
function clean_string($string)
{
$trans = array("ä" => "ae",
"Ä" => "Ae",
"ö" => "oe",
"Ö" => "Oe",
"ü" => "ue",
"Ü" => "Ue",
"á" => "a",
"à" => "a",
"é" => "e",
"è" => "e",
"ó" => "o",
"ò" => "o",
"í" => "i",
"ì" => "i",
"ù" => "u",
"ú" => "u",
"ß" => "ss");
$trans = array("ä" => "ae",
"Ä" => "Ae",
"ö" => "oe",
"Ö" => "Oe",
"ü" => "ue",
"Ü" => "Ue",
"á" => "a",
"à" => "a",
"é" => "e",
"è" => "e",
"ó" => "o",
"ò" => "o",
"í" => "i",
"ì" => "i",
"ù" => "u",
"ú" => "u",
"ß" => "ss");
$string = strtr($string, $trans);
return ereg_replace("[^a-zA-Z0-9]", "", $string);
//[:space:]
@@ -87,11 +85,11 @@ else
else
$uids = $_GET['uid'];
//var_dump($uids);
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE student_uid='".$uids[1]."'";
if($result_std = pg_query($conn, $qry))
if(pg_num_rows($result_std)==1)
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE student_uid='".addslashes($uids[1])."'";
if($result_std = $db->db_query($qry))
if($db->db_num_rows($result_std)==1)
{
$row_std = pg_fetch_object($result_std);
$row_std = $db->db_fetch_object($result_std);
$xsl_stg_kz=$row_std->studiengang_kz;
}
}
@@ -123,17 +121,17 @@ if(isset($_GET["lvid"]))
if($xsl=='AccountInfo')
{
$isberechtigt = false;
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$uids = explode(';',$_GET['uid']);
foreach ($uids as $uid)
{
//Berechtigung fuer das Drucken des Accountinfoblattes pruefen
$qry = "SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid='".$uid."'";
if($result_ma = pg_query($conn, $qry))
$qry = "SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid='".addslashes($uid)."'";
if($result_ma = $db->db_query($qry))
{
if(pg_num_rows($result_ma)==1)
if($db->db_num_rows($result_ma)==1)
{
//Mitarbeiterrechte erforderlich
if($rechte->isBerechtigt('admin', 0, 'suid') || $rechte->isBerechtigt('mitarbeiter', 0, 'suid'))
@@ -143,12 +141,12 @@ if($xsl=='AccountInfo')
}
}
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE student_uid='".$uid."'";
if($result_std = pg_query($conn, $qry))
$qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE student_uid='".addslashes($uid)."'";
if($result_std = $db->db_query($qry))
{
if(pg_num_rows($result_std)==1)
if($db->db_num_rows($result_std)==1)
{
$row_std = pg_fetch_object($result_std);
$row_std = $db->db_fetch_object($result_std);
//Rechte pruefen
if($rechte->isBerechtigt('admin', $row_std->studiengang_kz, 'suid') ||
$rechte->isBerechtigt('admin', 0, 'suid') ||
@@ -170,12 +168,9 @@ if($xsl=='AccountInfo')
}
//Berechtigung pruefen
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
//if(!$rechte->isBerechtigt('admin',$stg_kz))
// die("Keine Berechtigung");
$xml_url=XML_ROOT.$xml.$params;
// Load the XML source
@@ -183,7 +178,6 @@ $xml_doc = new DOMDocument;
if(!$xml_doc->load($xml_url))
die('unable to load xml');
//echo 'XML:'.$xml_doc->saveXML().':';
//XSL aus der DB holen
$qry = "SELECT text FROM public.tbl_vorlagestudiengang WHERE (studiengang_kz=0";
@@ -191,9 +185,9 @@ if($xsl_stg_kz!='')
$qry.=" OR studiengang_kz='".addslashes($xsl_stg_kz)."'";
$qry.=") AND vorlage_kurzbz='$xsl' ORDER BY studiengang_kz DESC, version DESC LIMIT 1";
//echo $qry;
if(!$result = pg_query($conn, $qry))
die('Fehler beim Laden der Vorlage'.pg_errormessage($conn));
if(!$row = pg_fetch_object($result))
if(!$result = $db->db_query($qry))
die('Fehler beim Laden der Vorlage'.$db->db_last_error());
if(!$row = $db->db_fetch_object($result))
die('Vorlage wurde nicht gefunden'.$qry);
$xsl_content = $row->text;
@@ -207,9 +201,9 @@ if(isset($_GET['uid']) && $_GET['uid']!='')
$uid = str_replace(';','',$_GET['uid']);
$qry = "SELECT nachname FROM campus.vw_benutzer WHERE uid='".addslashes($uid)."'";
if($result = pg_query($conn, $qry))
if($result = $db->db_query($qry))
{
if($row = pg_fetch_object($result))
if($row = $db->db_fetch_object($result))
{
$nachname = '_'.clean_string($row->nachname);
}
@@ -255,11 +249,20 @@ else
$uid = $_REQUEST["uid"];
$ss = $_REQUEST["ss"];
$heute = date('Y-m-d');
$query = "SELECT tbl_studiengang.studiengang_kz, tbl_studentlehrverband.semester, tbl_studiengang.typ, tbl_studiengang.kurzbz, tbl_person.person_id FROM tbl_person, tbl_benutzer, tbl_studentlehrverband, tbl_studiengang where tbl_studentlehrverband.student_uid = tbl_benutzer.uid and tbl_benutzer.person_id = tbl_person.person_id and tbl_studentlehrverband.studiengang_kz = tbl_studiengang.studiengang_kz and tbl_studentlehrverband.student_uid = '".$uid."' and tbl_studentlehrverband.studiensemester_kurzbz = '".$ss."'";
$query = "SELECT
tbl_studiengang.studiengang_kz, tbl_studentlehrverband.semester, tbl_studiengang.typ,
tbl_studiengang.kurzbz, tbl_person.person_id FROM tbl_person, tbl_benutzer,
tbl_studentlehrverband, tbl_studiengang
WHERE
tbl_studentlehrverband.student_uid = tbl_benutzer.uid
AND tbl_benutzer.person_id = tbl_person.person_id
AND tbl_studentlehrverband.studiengang_kz = tbl_studiengang.studiengang_kz
AND tbl_studentlehrverband.student_uid = '".addslashes($uid)."'
AND tbl_studentlehrverband.studiensemester_kurzbz = '".addslashes($ss)."'";
if($result = pg_query($conn, $query))
if($result = $db->db_query($query))
{
if($row = pg_fetch_object($result))
if($row = $db->db_fetch_object($result))
{
$person_id = $row->person_id;
$titel = "Zeugnis_".strtoupper($row->typ).strtoupper($row->kurzbz)."_".$row->semester;
@@ -269,14 +272,11 @@ else
else
{
$echo = 'Datensatz wurde nicht gefunden';
}
}
if($rechte->isBerechtigt('admin', $studiengang_kz, 'suid') || $rechte->isBerechtigt('assistenz', $studiengang_kz, 'suid'))
{
if(PDF_CREATE_FUNCTION=='FOP')
{
$fop = new fop();
@@ -289,11 +289,10 @@ else
// Load the XSL source
$xsl_doc = new DOMDocument;
//if(!$xsl_doc->load('../../../../xsl/collection.xsl'))
if(!$xsl_doc->loadXML($xsl_content))
die('unable to load xsl');
//echo 'XSL:'.$xsl_doc->saveXML().':';
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl_doc); // attach the xsl rules
@@ -314,7 +313,7 @@ else
for ($i=0;$i<strlen($string);$i++)
$hex.=(strlen(dechex(ord($string[$i])))<2)? "0".dechex(ord($string[$i])): dechex(ord($string[$i]));
$akte = new akte($conn);
$akte = new akte();
$akte->person_id = $person_id;
$akte->dokument_kurzbz = "Zeugnis";
$akte->inhalt = $hex;