Escaping von LVs mit Sonderzeichen

This commit is contained in:
Andreas Österreicher
2023-10-16 11:08:34 +02:00
parent 60ee3ec8f0
commit 22d3b08a06
+66 -66
View File
@@ -52,7 +52,7 @@ function breaktext($text, $zeichen)
$arr = explode(' ',$text);
$ret = '';
$teilstring='';
foreach($arr as $elem)
{
if(strlen($teilstring.$elem)>$zeichen)
@@ -60,7 +60,7 @@ function breaktext($text, $zeichen)
$ret.=' '.$teilstring.'\n';
$teilstring=$elem;
}
else
else
$teilstring .=' '.$elem;
}
$ret.=$teilstring;
@@ -72,9 +72,9 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
if(isset($_GET['uid']))
$uid = $_GET['uid'];
else
else
$uid = null;
$uid_arr = explode(";",$uid);
if ($uid_arr[0] == "")
@@ -82,61 +82,61 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
unset($uid_arr[0]);
$uid_arr = array_values($uid_arr);
}
$note_arr = array();
$note = new note();
$note->getAll($offiziell = true);
foreach ($note->result as $n){
$note_arr[$n->note] = $n->anmerkung;
$note_bezeichnung_arr[$n->note] = $n->bezeichnung;
$note_bezeichnung_arr[$n->note] = $n->bezeichnung;
}
if(isset($_GET['ss']))
$studiensemester_kurzbz = $_GET['ss'];
else
else
die('Studiensemester muss uebergeben werden');
if(isset($_GET['lvid']))
$lehrveranstaltung_id = $_GET['lvid'];
else
else
$lehrveranstaltung_id = 0;
//Daten holen
$lqry = "SELECT
tbl_person.titelpre, tbl_person.vorname, tbl_person.nachname, tbl_person.titelpost
FROM
public.tbl_benutzer JOIN public.tbl_person using (person_id)
WHERE
tbl_benutzer.uid = (SELECT
tbl_lehreinheitmitarbeiter.mitarbeiter_uid
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehrfunktion USING(lehrfunktion_kurzbz),
lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
WHERE
$lqry = "SELECT
tbl_person.titelpre, tbl_person.vorname, tbl_person.nachname, tbl_person.titelpost
FROM
public.tbl_benutzer JOIN public.tbl_person using (person_id)
WHERE
tbl_benutzer.uid = (SELECT
tbl_lehreinheitmitarbeiter.mitarbeiter_uid
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehrfunktion USING(lehrfunktion_kurzbz),
lehre.tbl_lehreinheit JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
WHERE
tbl_lehreinheitmitarbeiter.lehreinheit_id = tbl_lehreinheit.lehreinheit_id AND
tbl_lehrveranstaltung.lehrveranstaltung_id = ".$db->db_add_param($lehrveranstaltung_id)." AND
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)."
ORDER BY tbl_lehrfunktion.standardfaktor desc limit 1)";
$leiter_titel = '';
$leiter_vorname = '';
$leiter_nachname = '';
$leiter_titelpost = '';
if($db->db_query($lqry))
{
if ($lrow = $db->db_fetch_object())
{
$leiter_titel = $lrow->titelpre;
$leiter_titel = $lrow->titelpre;
$leiter_vorname = $lrow->vorname;
$leiter_nachname = $lrow->nachname;
$leiter_titelpost = $lrow->titelpost;
}
$leiter_nachname = $lrow->nachname;
$leiter_titelpost = $lrow->titelpost;
}
}
$qry = "SELECT wochen FROM public.tbl_semesterwochen
WHERE (studiengang_kz, semester) in (SELECT studiengang_kz, semester
$qry = "SELECT wochen FROM public.tbl_semesterwochen
WHERE (studiengang_kz, semester) in (SELECT studiengang_kz, semester
FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER).")";
$wochen = 15;
if($result_wochen = $db->db_query($qry))
@@ -146,7 +146,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$wochen = $row_wochen->wochen;
}
}
$lehrveranstaltung=new lehrveranstaltung();
$lehrveranstaltung->load($lehrveranstaltung_id);
$sws=$lehrveranstaltung->semesterstunden/$wochen;
@@ -157,7 +157,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$lehrform = new lehrform($lehrform_kurzbz);
$lehrform_bezeichnung = $lehrform->bezeichnung;
$organisationseinheit = new organisationseinheit($lehrveranstaltung->oe_kurzbz);
$lehreinheit=new lehreinheit();
$lehreinheit->load_lehreinheiten($lehrveranstaltung_id, $studiensemester_kurzbz);
if(count($lehreinheit->lehreinheiten)>=1)
@@ -169,11 +169,11 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$lehrfach_id='';
die('keine Lehreinheiten gefunden!');
}
$lv_lehrfach=new lehrveranstaltung();
$lv_lehrfach->load($lehrfach_id);
$lehrfach_bezeichnung=$lv_lehrfach->bezeichnung;
/* $lvqry = "SELECT * from lehre.tbl_lehrveranstaltung where lehrveranstaltung_id = ".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER);
if($db->db_query($lvqry))
{
@@ -182,43 +182,43 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$sws = $lvrow->semesterstunden/$wochen;
$ects = $lvrow->ects;
$lvbezeichnung = $lvrow->bezeichnung;
$lvstg = $lvrow->studiengang_kz;
}
$lvstg = $lvrow->studiengang_kz;
}
} */
$lehrinhalte = '';
$infoqry = "SELECT * FROM campus.tbl_lvinfo WHERE sprache='German' AND lehrveranstaltung_id = ".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER);
if($db->db_query($infoqry))
{
if ($inforow = $db->db_fetch_object())
{
$lehrinhalte_arr = explode("<br>",$inforow->lehrinhalte);
$lehrinhalte_arr = explode("<br>",$inforow->lehrinhalte);
for ($i = 0; $i < sizeof($lehrinhalte_arr); $i++)
{
$lehrinhalte .= $lehrinhalte_arr[$i].'\n';
$lehrinhalte .= $lehrinhalte_arr[$i].'\n';
}
}
}
}
}
$xml = "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>";
$xml .= "<zertifikate>";
$studiensemester = new studiensemester();
$studiensemester->load($studiensemester_kurzbz);
for ($i = 0; $i < sizeof($uid_arr); $i++)
{
$anzahl_fussnoten=0;
$studiengang_typ='';
$xml_fussnote='';
$query = "SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheit as le
JOIN lehre.tbl_pruefung as p USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung as lv USING(lehrveranstaltung_id)
WHERE p.student_uid = ".$db->db_add_param($uid_arr[$i])."
AND le.studiensemester_kurzbz = ".$db->db_add_param($studiensemester_kurzbz)."
AND lv.lehrveranstaltung_id = ".$db->db_add_param($lehrveranstaltung_id, FHC_INTEGER);
$pruefer_uid='';
$pruefer_name='';
if($db->db_query($query))
@@ -231,7 +231,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
if($pruefer_uid!='')
{
$pruefer = new mitarbeiter($pruefer_uid);
$pruefer_name = trim($pruefer->titelpre.' '.$pruefer->vorname.' '.$pruefer->nachname.' '.$pruefer->titelpost);
$pruefer_name = trim($pruefer->titelpre.' '.$pruefer->vorname.' '.$pruefer->nachname.' '.$pruefer->titelpost);
}
$query = "SELECT tbl_student.matrikelnr, tbl_student.studiengang_kz, tbl_studiengang.typ, tbl_studiengang.bezeichnung, tbl_person.vorname, tbl_person.nachname,tbl_person.gebdatum,tbl_person.titelpre, tbl_person.titelpost, tbl_person.geschlecht, tbl_person.matr_nr FROM tbl_person, tbl_student, tbl_studiengang, tbl_benutzer WHERE tbl_student.studiengang_kz = tbl_studiengang.studiengang_kz and tbl_student.student_uid = tbl_benutzer.uid and tbl_benutzer.person_id = tbl_person.person_id and tbl_student.student_uid = '".$uid_arr[$i]."'";
@@ -251,7 +251,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$stgl_ma = new mitarbeiter($stgleiter_uid);
$stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost);
}
$student=new student();
$student->load($uid_arr[$i]);
$prestudent=new prestudent();
@@ -261,11 +261,11 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
{
if($status->studienplan_bezeichnung != '')
$studienplan_bezeichnung=$status->studienplan_bezeichnung;
if($status->studienplan_id != NULL)
$studienplan_id = $status->studienplan_id;
}
$xml .= "\n <zertifikat>";
$xml .= "\n <studiensemester>".$studiensemester_kurzbz."</studiensemester>";
$xml .= "\n <vorname>".$row->vorname."</vorname>";
@@ -279,8 +279,8 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$xml .= "\n <studiengangsleiter>".$stgl."</studiengangsleiter>";
$datum_aktuell = date('d.m.Y');
$xml .= "\n <ort_datum>Wien, am ".$datum_aktuell."</ort_datum>";
$obj = new zeugnisnote();
$obj->load($lehrveranstaltung_id, $uid_arr[$i], $studiensemester_kurzbz);
@@ -298,10 +298,10 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$uebernahmedatum = "";
$benotungsdatum = "";
}
$stg = new studiengang();
$stg->load($lvstg);
$xml .= " <stg_studiengang_bezeichnung>".$stg_oe_obj->bezeichnung."</stg_studiengang_bezeichnung>";
$xml .= " <lv_studiengang_bezeichnung>".$stg->bezeichnung."</lv_studiengang_bezeichnung>";
$xml .= " <lv_studiengang_typ>".$stg->typ."</lv_studiengang_typ>";
@@ -318,20 +318,20 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$xml .= " <lehrform_kurzbz>".$lehrform_kurzbz."</lehrform_kurzbz>";
$xml .= " <lehrform_bezeichnung>".$lehrform_bezeichnung."</lehrform_bezeichnung>";
$xml .= " <sws>".($sws==0?'':number_format(sprintf('%.1F',$sws),1))."</sws>";
$xml .= " <lvleiter>".$leiter_titel." ".$leiter_vorname." ".$leiter_nachname.($leiter_titelpost!=''?', '.$leiter_titelpost:'')."</lvleiter>";
$xml .= " <lehrinhalte><![CDATA[".clearHtmlTags($lehrinhalte)."]]></lehrinhalte>";
$xml .= " <kompatible_lvs>";
$lehrveranstaltung->getLVkompatibel($lehrveranstaltung_id);
foreach($lehrveranstaltung->lehrveranstaltungen as $lv_kompatibel)
{
$xml .= "<lv>".$lv_kompatibel->bezeichnung."</lv>";
$xml .= "<lv><![CDATA[".$lv_kompatibel->bezeichnung."]]></lv>";
}
$xml .= " </kompatible_lvs>";
$anrechnung = new anrechnung();
$anrechnung->getAnrechnungPrestudent($student->prestudent_id, null, $lehrveranstaltung_id);
@@ -343,7 +343,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$xml .= $anrechnung->result[0]->lehrveranstaltung_bez;
}
$xml .= "</studienverpflichtung>";
if($lehrveranstaltung_id_kompatibel != "")
{
$lv = new lehrveranstaltung($lehrveranstaltung_id_kompatibel);
@@ -352,11 +352,11 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$ects = $lv->ects;
}
}
$xml .= " <ects>".number_format($ects,1)."</ects>";
$lehrveranstaltung->loadLehrveranstaltungStudienplan($studienplan_id);
$studienplan_lehrveranstaltung_id = "";
foreach($lehrveranstaltung->lehrveranstaltungen as $lv)
{
@@ -366,7 +366,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
break;
}
}
$studienplan = new studienplan();
if($studienplan_lehrveranstaltung_id != "")
{
@@ -384,11 +384,11 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
{
$lehrveranstaltung->lehrveranstaltungen = array();
}
// $return = $lehrveranstaltung->getLVFromStudienplanByLehrtyp($studienplan_id, "modul");
$xml .= " <module>";
//Variable wird zur korrekten Darstellung im Dokument benötigt
$count=0;
foreach($lehrveranstaltung->lehrveranstaltungen as $modul)
@@ -411,4 +411,4 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
$xml .= "</zertifikate>";
echo $xml;
}
?>
?>