proseminar/admin/detailansicht.php
2023-10-13 11:08:59 +02:00

134 lines
4.0 KiB
PHP
Executable File

<?php
include("kurs/datenbankanbindung.php"); // f&uuml;gt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php
require_once '../htmlpurifier-4.10.0/library/HTMLPurifier.auto.php';
$config = HTMLPurifier_Config::createDefault();
$purifier = new HTMLPurifier($config);
$id = $_GET['id'];
$db = dbconnect();
$res = $db->query("SELECT FPRNr, Bezeichnung, Ansprechpart, TN_min, TN_max, Jahr, gruppen, beschreibung, termine, termin_ausserhalb, bemerkung, zweig
FROM pros_proseminar
WHERE id='$id'");
$row = $res->fetch_array();
$gruppen = $row['gruppen'];
$termine = $row['termine'];
$query = "SELECT concat(doz_titel,' ', doz_vorname,' ', doz_name,' (', doz_mail ,')') dozent
FROM pros_doz a,doz b
WHERE a.doz_nr = b.doz_nr
AND id = $id";
$result4 = $db->query ($query)
or die ("Cannot execute query");
while ($row1 = $result4->fetch_array()){
$dozent .= $row1['dozent']."<br>";
}
if($row['Ansprechpart']!=''){
$ansprechpartner = $row['Ansprechpart'];
$partner ="AprechpartnerIn: $ansprechpartner";
}
if($row['termin_ausserhalb'] != ''){
$auserhalb = "Die Veranstaltungstermine werden möglicherweise außerhalb<br>der Hochschule Ludwigsburg stattfinden.";
$term_ausser ="<tr>
<td>
Hinweis:
</td>
<td>
$auserhalb
</td>
</tr>";
}
if(strpos($row['zweig'], 'I') === false){
$semester_anz = "Proseminar für den Bachelor-Studiengang (1. und 2. Semester)";
}else{
$semester_anz = "Proseminar für den Bachelor-Studiengang (2. und 3. Semester)";
}
$header = "<table width='607' border='0' cellpadding='0' cellspacing='0' border ='1' style='background-color:#CCCCCC;'>
<tr>
<td align='center' width='607'>
$semester_anz
</td>
</tr>
<tr>
<td align='center' width='607'>
- $row[FPRNr] -\n$row[Bezeichnung]
</td>
</tr>
</table>
<br>
<table width='607' border='0' cellpadding='0' cellspacing='0' border ='0'>
<tr>
<td width='150'>
DozentIn:
</td>
<td width='457'>
$dozent
$partner
</td>
</tr>
<tr>
<td width='150'>
Termine:
</td>
<td width='457'>
$termine
</td>
</tr>
$term_ausser
<tr>
<td width='150'>
Anzahl der Gruppen:
</td>
<td width='457'>
$gruppen
</td>
</tr>
</table>
";
$beschreibung = str_replace (array("<ul>", chr(10)), array("</div><div align='justify'><ul type='square'>",""), $row['beschreibung']);
$beschreibung = str_replace (array("<ul>", chr(10), "<ol>"), array("</div><div align='justify'><ul type='square'>","", "</div><div align='justify'><ol>"), $beschreibung);
$beschreibung = str_replace (array("&auml;", "&Auml;", "&uuml;", "&Uuml;", "&ouml;", "&Ouml;", "&szlig;")
, array("ä", "Ä", "ü", "Ü", "ö", "Ö", "ß")
, $beschreibung
);
# Span muss entfernt werden, da sonst font-family:Times kommt, die Schrift findet html2pdf nicht.
$beschreibung = preg_replace("(</?span[^>]*\>)i", "", $beschreibung);
# Colgroup muss entfernt werden, das gibt es nicht
$beschreibung = preg_replace("(</?colgroup[^>]*\>)i", "", $beschreibung);
$beschreibung = $purifier->purify($beschreibung);
require_once('../html2pdf_v4.03/html2pdf.class.php');
$inhalt_fin = '<page backtop="0mm" backbottom="10mm" style="font-size: 11pt" style="font-family: freeserif">'.nl2br($inhalt_fin).'</page>';
#echo $header.$beschreibung;
#exit;
try
{
// seitenränder (in mm)
$oben=15; //mT
$unten=15; //mB
$links=15; //mL
$rechts=15; //mR
$html2pdf = new HTML2PDF('P', 'A4', 'de', true, 'UTF-8', array($links, $oben, $rechts, $unten));
$html2pdf->pdf->SetDisplayMode('real');
$html2pdf->writeHTML($header.$beschreibung, isset($_GET['vuehtml']));
$html2pdf->Output("PS_$row[FPRNr].pdf",'D');
}
catch(HTML2PDF_exception $e) {
echo $e;
}
?>