This commit is contained in:
Gerald Raab
2007-07-03 07:45:57 +00:00
parent 66e8bbc598
commit 3bbe6801d9
2 changed files with 70 additions and 6 deletions
+68 -5
View File
@@ -29,7 +29,7 @@ require_once('../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/akte.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
@@ -105,9 +105,72 @@ $buffer = '<?xml version="1.0" encoding="ISO-8859-15" ?>'.substr($buffer, strpos
//Pdf erstellen
$fo2pdf = new XslFo2Pdf();
if (!$fo2pdf->generatePdf($buffer, 'filename', "D"))
{
echo('Failed to generate PDF');
}
if (!isset($_REQUEST["archive"]))
{
if (!$fo2pdf->generatePdf($buffer, 'filename', "D"))
{
echo('Failed to generate PDF');
}
}
else
{
$filename = $_SERVER['REMOTE_USER'];
if (!$fo2pdf->generatePdf($buffer, $filename, 'F'))
{
echo('Failed to generate PDF');
}
$file = "/tmp/".$filename.".pdf";
$handle = fopen($file, "rb");
$string = fread($handle, filesize($file));
fclose($handle);
unlink($file);
$hex="";
for ($i=0;$i<strlen($string);$i++)
$hex.=(strlen(dechex(ord($string[$i])))<2)? "0".dechex(ord($string[$i])): dechex(ord($string[$i]));
$uid = $_REQUEST["uid"];
$ss = $_REQUEST["ss"];
$heute = date('Y-m-d');
$query = "SELECT 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."'";
if($result = pg_query($conn, $query))
{
if($row = pg_fetch_object($result))
{
$person_id = $row->person_id;
$titel = "Zeugnis_".$row->typ.$row->kurzbz."_".$row->semester;
}
else
{
$echo = 'Datensatz wurde nicht gefunden';
}
}
$akte = new akte($conn);
$akte->person_id = $person_id;
$akte->dokument_kurzbz = "Zeugnis";
$akte->inhalt = $hex;
$akte->mimetype = "Content-Type: application/octet-stream";
$akte->erstelltam = $heute;
$akte->gedruckt = true;
$akte->titel = $titel;
$akte->bezeichnung = "";
$akte->updateamum = "";
$akte->updatevon = "";
$akte->insertamum = date('Y-m-d h:m:s');
$akte->insertvon = $_SERVER['REMOTE_USER'];
$akte->ext_id = "";
$akte->uid = $_REQUEST["uid"];
$akte->new = true;
if (!$akte->save('new'))
return true;
else
return false;
}
?>
+2 -1
View File
@@ -1043,7 +1043,8 @@ if(!class_exists('FPDF'))
break;
case 'F':
//Save to local file
$f=fopen($name,'wb');
$name = "/tmp/".$name;
$f=fopen($name,'wb');
if(!$f)
$this->Error('Unable to create output file: '.$name);
fwrite($f,$this->buffer,strlen($this->buffer));