From 87d02ce13e921e7ccc8c0b7a2e1286676c5595d5 Mon Sep 17 00:00:00 2001 From: oesi Date: Mon, 9 Jan 2017 16:21:42 +0100 Subject: [PATCH] =?UTF-8?q?Wenn=20ein=20Studierender=20keinen=20Status=20i?= =?UTF-8?q?n=20dem=20Semester=20hat=20f=C3=BCr=20das=20ein=20Zeugnis=20ers?= =?UTF-8?q?tellt=20werden=20soll,=20dann=20wird=20nun=20ein=20leeres=20Zeu?= =?UTF-8?q?gnis=20angezeigt=20anstatt=20einer=20kryptischen=20PHP=20Fehler?= =?UTF-8?q?meldung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rdf/zeugnis.rdf.php | 624 +++++++++++++++++++++++--------------------- 1 file changed, 320 insertions(+), 304 deletions(-) diff --git a/rdf/zeugnis.rdf.php b/rdf/zeugnis.rdf.php index efc8a36d8..e7e5da698 100644 --- a/rdf/zeugnis.rdf.php +++ b/rdf/zeugnis.rdf.php @@ -48,7 +48,7 @@ function breaktext($text, $zeichen) $arr = explode(' ',$text); $ret = ''; $teilstring=''; - + foreach($arr as $elem) { if(strlen($teilstring.$elem)>$zeichen) @@ -56,7 +56,7 @@ function breaktext($text, $zeichen) $ret.=' '.$teilstring.'\n'; $teilstring=$elem; } - else + else $teilstring .=' '.$elem; } $ret.=$teilstring; @@ -68,9 +68,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] == "") @@ -78,339 +78,355 @@ 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(); foreach ($note->result as $n) $note_arr[$n->note] = $n->anmerkung; - + if(isset($_GET['ss'])) $studiensemester_kurzbz = $_GET['ss']; - else + else $studiensemester_kurzbz = $semester_aktuell; - + //Daten holen - + $xml = ""; $xml .= ""; - + for ($i = 0; $i < sizeof($uid_arr); $i++) - { + { $anzahl_fussnoten=0; $studiengang_typ=''; $xml_fussnote=''; $projektarbeit=array(); - - $query = "SELECT tbl_student.matrikelnr, tbl_student.studiengang_kz, tbl_studiengang.typ, tbl_studiengang.projektarbeit_note_anzeige, - tbl_studiengang.bezeichnung, tbl_studiengang.english, tbl_studentlehrverband.semester, - tbl_person.vorname, tbl_person.vornamen, tbl_person.nachname,tbl_person.gebdatum,tbl_person.titelpre, - tbl_person.titelpost, tbl_person.anrede, tbl_studiensemester.bezeichnung as sembezeichnung, - tbl_studiensemester.studiensemester_kurzbz as stsem, tbl_student.prestudent_id, tbl_studiengang.max_semester - FROM tbl_person, tbl_student, tbl_studiengang, tbl_benutzer, tbl_studentlehrverband, tbl_studiensemester - 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 = '".addslashes($uid_arr[$i])."' - AND tbl_studentlehrverband.student_uid=tbl_student.student_uid - AND tbl_studiensemester.studiensemester_kurzbz = tbl_studentlehrverband.studiensemester_kurzbz - AND tbl_studentlehrverband.studiensemester_kurzbz = '".addslashes($studiensemester_kurzbz)."'"; - + + $query = "SELECT tbl_student.matrikelnr, tbl_student.studiengang_kz, tbl_studiengang.typ, tbl_studiengang.projektarbeit_note_anzeige, + tbl_studiengang.bezeichnung, tbl_studiengang.english, tbl_studentlehrverband.semester, + tbl_person.vorname, tbl_person.vornamen, tbl_person.nachname,tbl_person.gebdatum,tbl_person.titelpre, + tbl_person.titelpost, tbl_person.anrede, tbl_studiensemester.bezeichnung as sembezeichnung, + tbl_studiensemester.studiensemester_kurzbz as stsem, tbl_student.prestudent_id, tbl_studiengang.max_semester + FROM tbl_person, tbl_student, tbl_studiengang, tbl_benutzer, tbl_studentlehrverband, tbl_studiensemester + 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 = ".$db->db_add_param($uid_arr[$i])." + AND tbl_studentlehrverband.student_uid=tbl_student.student_uid + AND tbl_studiensemester.studiensemester_kurzbz = tbl_studentlehrverband.studiensemester_kurzbz + AND tbl_studentlehrverband.studiensemester_kurzbz = ".$db->db_add_param($studiensemester_kurzbz); + if($result = $db->db_query($query)) { - if(!$row = $db->db_fetch_object($result)) - die('Student not found'); - } - else - die('Student not found'); - - $studiengang = new studiengang(); - $stgleiter = $studiengang->getLeitung($row->studiengang_kz); - $stgl=''; - foreach ($stgleiter as $stgleiter_uid) - { - $stgl_ma = new mitarbeiter($stgleiter_uid); - $stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost); - } - - //Wenn das Semester 0 ist, dann wird das Semester aus der Rolle geholt. (Ausnahme: Incoming) - //damit bei Outgoing Studenten die im 0. Semester angelegt sind das richtige Semester aufscheint - $qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus - WHERE - prestudent_id='".addslashes($row->prestudent_id)."' AND - studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND - status_kurzbz not in('Incoming','Aufgenommener','Bewerber','Wartender', 'Interessent') - ORDER BY DATUM DESC LIMIT 1"; - if($result_sem = $db->db_query($qry)) - { - if($row_sem = $db->db_fetch_object($result_sem)) + $xml .= "\n "; + if($row = $db->db_fetch_object($result)) { - $row->semester = $row_sem->semester; - $bezeichnung = $row_sem->semester.'. Semester'; - } - else - $bezeichnung = ''; - } - else - $bezeichnung = ''; - - $xml .= "\n "; - $xml .= " ".$row->sembezeichnung.""; - $xml .= " ".$row->stsem.""; - $xml .= " ".$row->semester.""; - $xml .= " ".$bezeichnung.""; - $xml .= " ".$row->bezeichnung.""; - $xml .= " ".$row->english.""; - if($row->typ=='b') - $bezeichnung='Bachelor'; - elseif($row->typ=='m') - $bezeichnung='Master'; - elseif($row->typ=='d') - $bezeichnung='Diplom'; - else - $bezeichnung=''; - $studiengang_typ=$row->typ; - $semester = $row->semester; - - //Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen - if ($row->studiengang_kz<0) - { - $stg = new studiengang(); - $stg->load($row->studiengang_kz); - - $studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($row->studiengang_kz)); - } - else - $studiengang_kz = sprintf("%04s", abs($row->studiengang_kz)); - - $xml .= " ".$bezeichnung.""; - $xml .= " ".$studiengang_kz.""; - $xml .= "\n ".$row->anrede.""; - $xml .= "\n ".$row->vorname.""; - $xml .= " ".$row->nachname.""; - $xml .= " ".trim($row->titelpre.' '.trim($row->vorname.' '.$row->vornamen).' '.$row->nachname.($row->titelpost!=''?', '.$row->titelpost:'')).""; - $gebdatum = date('d.m.Y',strtotime($row->gebdatum)); - $xml .= " ".$gebdatum.""; - $xml .= " ".trim($row->matrikelnr).""; - $xml .= " ".$stgl.""; - $datum_aktuell = date('d.m.Y'); - $xml .= " ".$datum_aktuell.""; - $xml .= " ".($row->projektarbeit_note_anzeige=='t'?'true':'false').""; - - $qry_proj = "SELECT lehrveranstaltung_id, titel, themenbereich, note, titel_english, tbl_projekttyp.bezeichnung, projekttyp_kurzbz FROM lehre.tbl_projektarbeit JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz) WHERE student_uid='".addslashes($uid_arr[$i])."' AND studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND projekttyp_kurzbz in('Bachelor', 'Diplom') ORDER BY beginn ASC, projektarbeit_id ASC"; - if($result_proj = $db->db_query($qry_proj)) - { - while($row_proj = $db->db_fetch_object($result_proj)) - { - $projektarbeit[$row_proj->lehrveranstaltung_id]['titel']=$row_proj->titel; - $projektarbeit[$row_proj->lehrveranstaltung_id]['titel_en']=$row_proj->titel_english; - $projektarbeit[$row_proj->lehrveranstaltung_id]['themenbereich']=$row_proj->themenbereich; - $projektarbeit[$row_proj->lehrveranstaltung_id]['note']=$row_proj->note; - $projektarbeit[$row_proj->lehrveranstaltung_id]['projekttyp_bezeichnung']=$row_proj->bezeichnung; - $projektarbeit[$row_proj->lehrveranstaltung_id]['projekttyp_kurzbz']=$row_proj->projekttyp_kurzbz; - } - } - - // Wenn es das letzte Semesterzeugnis ist, wird zusaetzlich die Abschlusspruefung geliefert - if($row->semester==$row->max_semester) - { - - $qry_abschlusspruefung = "SELECT - tbl_abschlusspruefung.datum, - tbl_abschlusspruefung.pruefungstyp_kurzbz, - tbl_abschlussbeurteilung.bezeichnung, - tbl_abschlussbeurteilung.bezeichnung_english - FROM - lehre.tbl_abschlusspruefung - LEFT JOIN lehre.tbl_abschlussbeurteilung USING(abschlussbeurteilung_kurzbz) - WHERE - tbl_abschlusspruefung.student_uid=".$db->db_add_param($uid_arr[$i])." - ORDER BY datum DESC LIMIT 1"; - if($result_abschlusspruefung = $db->db_query($qry_abschlusspruefung)) - { - if($row_abschlusspruefung = $db->db_fetch_object($result_abschlusspruefung)) + $studiengang = new studiengang(); + $stgleiter = $studiengang->getLeitung($row->studiengang_kz); + $stgl=''; + foreach ($stgleiter as $stgleiter_uid) { - $xml .= " ".$row_abschlusspruefung->pruefungstyp_kurzbz.""; - $xml .= " ".$datum->formatDatum($row_abschlusspruefung->datum,'d.m.Y').""; - $xml .= " ".$row_abschlusspruefung->bezeichnung.""; - $xml .= " ".$row_abschlusspruefung->bezeichnung_english.""; + $stgl_ma = new mitarbeiter($stgleiter_uid); + $stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost); } - } - } - - $obj = new zeugnisnote(); - - $obj->getZeugnisnoten($lehrveranstaltung_id=null, $uid_arr[$i], $studiensemester_kurzbz); - $ects_gesamt = 0; - $prestudent_id = $row->prestudent_id; - foreach ($obj->result as $row) - { - if($row->zeugnis) - { - if (trim($row->note)!=='') - $note = $note_arr[$row->note]; - else - $note = ""; - $note2=$note; - - //Firma fuer Berufspraktikum - $qry = "SELECT tbl_firma.name - FROM - lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, public.tbl_firma - WHERE - tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND - tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND - tbl_projektarbeit.firma_id = tbl_firma.firma_id AND - tbl_projektarbeit.student_uid='".addslashes($uid_arr[$i])."' AND - tbl_lehreinheit.studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND - tbl_lehrveranstaltung.lehrveranstaltung_id='".addslashes($row->lehrveranstaltung_id)."'"; - - $firma = ''; - $firma_eng = ''; - if($result_firma = $db->db_query($qry)) + //Wenn das Semester 0 ist, dann wird das Semester aus der Rolle geholt. (Ausnahme: Incoming) + //damit bei Outgoing Studenten die im 0. Semester angelegt sind das richtige Semester aufscheint + $qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus + WHERE + prestudent_id=".$db->db_add_param($row->prestudent_id)." AND + studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND + status_kurzbz not in('Incoming','Aufgenommener','Bewerber','Wartender', 'Interessent') + ORDER BY DATUM DESC LIMIT 1"; + if($result_sem = $db->db_query($qry)) { - if($row_firma = $db->db_fetch_object($result_firma)) + if($row_sem = $db->db_fetch_object($result_sem)) { - if($row_firma->name!='') + $row->semester = $row_sem->semester; + $bezeichnung = $row_sem->semester.'. Semester'; + } + else + $bezeichnung = ''; + } + else + $bezeichnung = ''; + + + $xml .= " ".$row->sembezeichnung.""; + $xml .= " ".$row->stsem.""; + $xml .= " ".$row->semester.""; + $xml .= " ".$bezeichnung.""; + $xml .= " ".$row->bezeichnung.""; + $xml .= " ".$row->english.""; + if($row->typ=='b') + $bezeichnung='Bachelor'; + elseif($row->typ=='m') + $bezeichnung='Master'; + elseif($row->typ=='d') + $bezeichnung='Diplom'; + else + $bezeichnung=''; + $studiengang_typ=$row->typ; + $semester = $row->semester; + + //Wenn Lehrgang, dann Erhalter-KZ vor die Studiengangs-Kz hängen + if ($row->studiengang_kz<0) + { + $stg = new studiengang(); + $stg->load($row->studiengang_kz); + + $studiengang_kz = sprintf("%03s", $stg->erhalter_kz).sprintf("%04s", abs($row->studiengang_kz)); + } + else + $studiengang_kz = sprintf("%04s", abs($row->studiengang_kz)); + + $xml .= " ".$bezeichnung.""; + $xml .= " ".$studiengang_kz.""; + $xml .= "\n ".$row->anrede.""; + $xml .= "\n ".$row->vorname.""; + $xml .= " ".$row->nachname.""; + $xml .= " ".trim($row->titelpre.' '.trim($row->vorname.' '.$row->vornamen).' '.$row->nachname.($row->titelpost!=''?', '.$row->titelpost:'')).""; + $gebdatum = date('d.m.Y',strtotime($row->gebdatum)); + $xml .= " ".$gebdatum.""; + $xml .= " ".trim($row->matrikelnr).""; + $xml .= " ".$stgl.""; + $datum_aktuell = date('d.m.Y'); + $xml .= " ".$datum_aktuell.""; + $xml .= " ".($row->projektarbeit_note_anzeige=='t'?'true':'false').""; + + $qry_proj = " + SELECT + lehrveranstaltung_id, titel, themenbereich, note, titel_english, + tbl_projekttyp.bezeichnung, projekttyp_kurzbz + FROM + lehre.tbl_projektarbeit + JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) + JOIN lehre.tbl_projekttyp USING (projekttyp_kurzbz) + WHERE + student_uid=".$db->db_add_param($uid_arr[$i])." + AND studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." + AND projekttyp_kurzbz in('Bachelor', 'Diplom') + ORDER BY beginn ASC, projektarbeit_id ASC"; + + if($result_proj = $db->db_query($qry_proj)) + { + while($row_proj = $db->db_fetch_object($result_proj)) + { + $projektarbeit[$row_proj->lehrveranstaltung_id]['titel']=$row_proj->titel; + $projektarbeit[$row_proj->lehrveranstaltung_id]['titel_en']=$row_proj->titel_english; + $projektarbeit[$row_proj->lehrveranstaltung_id]['themenbereich']=$row_proj->themenbereich; + $projektarbeit[$row_proj->lehrveranstaltung_id]['note']=$row_proj->note; + $projektarbeit[$row_proj->lehrveranstaltung_id]['projekttyp_bezeichnung']=$row_proj->bezeichnung; + $projektarbeit[$row_proj->lehrveranstaltung_id]['projekttyp_kurzbz']=$row_proj->projekttyp_kurzbz; + } + } + + // Wenn es das letzte Semesterzeugnis ist, wird zusaetzlich die Abschlusspruefung geliefert + if($row->semester==$row->max_semester) + { + + $qry_abschlusspruefung = "SELECT + tbl_abschlusspruefung.datum, + tbl_abschlusspruefung.pruefungstyp_kurzbz, + tbl_abschlussbeurteilung.bezeichnung, + tbl_abschlussbeurteilung.bezeichnung_english + FROM + lehre.tbl_abschlusspruefung + LEFT JOIN lehre.tbl_abschlussbeurteilung USING(abschlussbeurteilung_kurzbz) + WHERE + tbl_abschlusspruefung.student_uid=".$db->db_add_param($uid_arr[$i])." + ORDER BY datum DESC LIMIT 1"; + if($result_abschlusspruefung = $db->db_query($qry_abschlusspruefung)) + { + if($row_abschlusspruefung = $db->db_fetch_object($result_abschlusspruefung)) { - $firma = " bei Firma: $row_firma->name"; - $firma_eng = " at: $row_firma->name"; + $xml .= " ".$row_abschlusspruefung->pruefungstyp_kurzbz.""; + $xml .= " ".$datum->formatDatum($row_abschlusspruefung->datum,'d.m.Y').""; + $xml .= " ".$row_abschlusspruefung->bezeichnung.""; + $xml .= " ".$row_abschlusspruefung->bezeichnung_english.""; } } } - - //Bakk/Dipl Fussnoten - if(array_key_exists($row->lehrveranstaltung_id, $projektarbeit)) - { - $bezeichnung = $row->lehrveranstaltung_bezeichnung.$firma.' '.$fussnotenzeichen[$anzahl_fussnoten]; - $bezeichnung_englisch = $row->lehrveranstaltung_bezeichnung_english.$firma_eng.' '.$fussnotenzeichen[$anzahl_fussnoten]; - $xml_fussnote .="\n "; - $xml_fussnote .=" ".$fussnotenzeichen[$anzahl_fussnoten].""; - - //$projektarbeit[$row->lehrveranstaltung_id]['titel'] = breaktext($projektarbeit[$row->lehrveranstaltung_id]['titel'], 40); - - $anzahl_nl = substr_count($projektarbeit[$row->lehrveranstaltung_id]['titel'],'\n'); - $nl2=''; - if($projektarbeit[$row->lehrveranstaltung_id]['themenbereich']!='') - { - //$xml_fussnote .=" Themenbereich: "; - $xml_fussnote .=" lehrveranstaltung_id]['themenbereich'].']]>'; - $anzahl_nl++; - $nl2='\n'; - } - - /*if($studiengang_typ=='b') - $typ = 'Bachelorarbeit:'; - else - $typ = 'Master Thesis:';*/ - - $nl=''; - $nl2=''; - $xml_fussnote .=" lehrveranstaltung_id]['projekttyp_bezeichnung']."]]>"; - $xml_fussnote .=" lehrveranstaltung_id]['projekttyp_kurzbz']."]]>"; - $xml_fussnote .=" lehrveranstaltung_id]['titel'].$nl2."]]>"; - $xml_fussnote .=" lehrveranstaltung_id]['titel_en'].$nl2."]]>"; - //$note = $note_arr[$projektarbeit[$row->lehrveranstaltung_id]['note']]; - $note = $projektarbeit[$row->lehrveranstaltung_id]['note']; - //$nl = str_repeat('\n',($anzahl_nl)); - $xml_fussnote .=' '.(isset($note_arr[$note])?$note_arr[$note]:$note).$nl.''; - $xml_fussnote .=' '.$nl.''; - $xml_fussnote .=' '.$nl.''; - $xml_fussnote .=' '.$nl.''; - - - - $xml_fussnote .=" "; - - $anzahl_fussnoten++; - } - else - { - $bezeichnung = $row->lehrveranstaltung_bezeichnung.$firma; - $bezeichnung_englisch = $row->lehrveranstaltung_bezeichnung_english.$firma_eng; - } - - - $bisio_von = ''; - $bisio_bis = ''; - $bisio_ort = ''; - $bisio_universitaet = ''; - $auslandssemester=false; - - $qry = "SELECT tbl_bisio.* FROM bis.tbl_bisio JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) - WHERE tbl_lehreinheit.lehrveranstaltung_id='$row->lehrveranstaltung_id' - AND student_uid='".addslashes($uid_arr[$i])."'"; - if($result_bisio = $db->db_query($qry)) - { - if($row_bisio = $db->db_fetch_object($result_bisio)) - { - $bisio_von = $row_bisio->von; - $bisio_bis = $row_bisio->bis; - $bisio_ort = $row_bisio->ort; - $bisio_universitaet = $row_bisio->universitaet; - $auslandssemester=true; - $note2 = 'ar'; - } - } - - $qry = "SELECT wochen FROM public.tbl_semesterwochen - WHERE (studiengang_kz, semester) in (SELECT studiengang_kz, semester - FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=$row->lehrveranstaltung_id)"; - $wochen = 15; - if($result_wochen = $db->db_query($qry)) - { - if($row_wochen = $db->db_fetch_object($result_wochen)) - { - $wochen = $row_wochen->wochen; - } - } - $xml .= "\n "; - $xml .= " "; - $xml .= " "; - $xml .= " ".$note2.""; - $xml .= " ".($row->semesterstunden==0?'':number_format(sprintf('%.1F',$row->semesterstunden/$wochen),1)).""; - $ectspunkte=''; - - - $anrechnung = new anrechnung(); - $anrechnung->getAnrechnungPrestudent($prestudent_id, null, $row->lehrveranstaltung_id); - if($anrechnung->result != null) - { - $lv = new lehrveranstaltung($anrechnung->result[0]->lehrveranstaltung_id); - if(($lv->ects !== $row->ects) && ($lv->ects != "") && ($lv->ects != null)) - { - $row->ects = $lv->ects; - } - } - - if($row->ects==0 || $row->ects=='') - $ectspunkte=''; - else + $obj = new zeugnisnote(); + + $obj->getZeugnisnoten($lehrveranstaltung_id=null, $uid_arr[$i], $studiensemester_kurzbz); + + $ects_gesamt = 0; + $prestudent_id = $row->prestudent_id; + foreach ($obj->result as $row) { - //Bei 2 Nachkommastellen beide anzeigen, sonst nur 1 - if(number_format($row->ects,1)==number_format($row->ects,2)) - $ectspunkte=number_format($row->ects,1); - else - $ectspunkte=number_format($row->ects,2); + if($row->zeugnis) + { + if (trim($row->note)!=='') + $note = $note_arr[$row->note]; + else + $note = ""; + $note2=$note; + + //Firma fuer Berufspraktikum + $qry = "SELECT tbl_firma.name + FROM + lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, public.tbl_firma + WHERE + tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND + tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND + tbl_projektarbeit.firma_id = tbl_firma.firma_id AND + tbl_projektarbeit.student_uid=".$db->db_add_param($uid_arr[$i])." AND + tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($studiensemester_kurzbz)." AND + tbl_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($row->lehrveranstaltung_id); + + $firma = ''; + $firma_eng = ''; + if($result_firma = $db->db_query($qry)) + { + if($row_firma = $db->db_fetch_object($result_firma)) + { + if($row_firma->name!='') + { + $firma = " bei Firma: $row_firma->name"; + $firma_eng = " at: $row_firma->name"; + } + } + } + + //Bakk/Dipl Fussnoten + if(array_key_exists($row->lehrveranstaltung_id, $projektarbeit)) + { + $bezeichnung = $row->lehrveranstaltung_bezeichnung.$firma.' '.$fussnotenzeichen[$anzahl_fussnoten]; + $bezeichnung_englisch = $row->lehrveranstaltung_bezeichnung_english.$firma_eng.' '.$fussnotenzeichen[$anzahl_fussnoten]; + $xml_fussnote .="\n "; + $xml_fussnote .=" ".$fussnotenzeichen[$anzahl_fussnoten].""; + + //$projektarbeit[$row->lehrveranstaltung_id]['titel'] = breaktext($projektarbeit[$row->lehrveranstaltung_id]['titel'], 40); + + $anzahl_nl = substr_count($projektarbeit[$row->lehrveranstaltung_id]['titel'],'\n'); + $nl2=''; + if($projektarbeit[$row->lehrveranstaltung_id]['themenbereich']!='') + { + //$xml_fussnote .=" Themenbereich: "; + $xml_fussnote .=" lehrveranstaltung_id]['themenbereich'].']]>'; + $anzahl_nl++; + $nl2='\n'; + } + + /*if($studiengang_typ=='b') + $typ = 'Bachelorarbeit:'; + else + $typ = 'Master Thesis:';*/ + + $nl=''; + $nl2=''; + $xml_fussnote .=" lehrveranstaltung_id]['projekttyp_bezeichnung']."]]>"; + $xml_fussnote .=" lehrveranstaltung_id]['projekttyp_kurzbz']."]]>"; + $xml_fussnote .=" lehrveranstaltung_id]['titel'].$nl2."]]>"; + $xml_fussnote .=" lehrveranstaltung_id]['titel_en'].$nl2."]]>"; + //$note = $note_arr[$projektarbeit[$row->lehrveranstaltung_id]['note']]; + $note = $projektarbeit[$row->lehrveranstaltung_id]['note']; + //$nl = str_repeat('\n',($anzahl_nl)); + $xml_fussnote .=' '.(isset($note_arr[$note])?$note_arr[$note]:$note).$nl.''; + $xml_fussnote .=' '.$nl.''; + $xml_fussnote .=' '.$nl.''; + $xml_fussnote .=' '.$nl.''; + + + + $xml_fussnote .=" "; + + $anzahl_fussnoten++; + } + else + { + $bezeichnung = $row->lehrveranstaltung_bezeichnung.$firma; + $bezeichnung_englisch = $row->lehrveranstaltung_bezeichnung_english.$firma_eng; + } + + + $bisio_von = ''; + $bisio_bis = ''; + $bisio_ort = ''; + $bisio_universitaet = ''; + $auslandssemester=false; + + $qry = "SELECT tbl_bisio.* FROM bis.tbl_bisio JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) + WHERE tbl_lehreinheit.lehrveranstaltung_id='$row->lehrveranstaltung_id' + AND student_uid=".$db->db_add_param($uid_arr[$i]); + if($result_bisio = $db->db_query($qry)) + { + if($row_bisio = $db->db_fetch_object($result_bisio)) + { + $bisio_von = $row_bisio->von; + $bisio_bis = $row_bisio->bis; + $bisio_ort = $row_bisio->ort; + $bisio_universitaet = $row_bisio->universitaet; + $auslandssemester=true; + $note2 = 'ar'; + } + } + + $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($row->lehrveranstaltung_id).")"; + $wochen = 15; + if($result_wochen = $db->db_query($qry)) + { + if($row_wochen = $db->db_fetch_object($result_wochen)) + { + $wochen = $row_wochen->wochen; + } + } + $xml .= "\n "; + $xml .= " "; + $xml .= " "; + $xml .= " ".$note2.""; + $xml .= " ".($row->semesterstunden==0?'':number_format(sprintf('%.1F',$row->semesterstunden/$wochen),1)).""; + $ectspunkte=''; + + $anrechnung = new anrechnung(); + $anrechnung->getAnrechnungPrestudent($prestudent_id, null, $row->lehrveranstaltung_id); + + if($anrechnung->result != null) + { + $lv = new lehrveranstaltung($anrechnung->result[0]->lehrveranstaltung_id); + if(($lv->ects !== $row->ects) && ($lv->ects != "") && ($lv->ects != null)) + { + $row->ects = $lv->ects; + } + } + + if($row->ects==0 || $row->ects=='') + $ectspunkte=''; + else + { + //Bei 2 Nachkommastellen beide anzeigen, sonst nur 1 + if(number_format($row->ects,1)==number_format($row->ects,2)) + $ectspunkte=number_format($row->ects,1); + else + $ectspunkte=number_format($row->ects,2); + } + $ects_gesamt+=$ectspunkte; + + $xml .= " ".$ectspunkte.""; + $xml .= " ".$row->lv_lehrform_kurzbz.""; + if($auslandssemester) + { + $xml .= " ".date('d.m.Y', $datum->mktime_fromdate($bisio_von)).""; + $xml .= " ".date('d.m.Y', $datum->mktime_fromdate($bisio_bis)).""; + $xml .= " $bisio_ort"; + $xml .= " $bisio_universitaet"; + } + $xml .= " "; + } } - $ects_gesamt+=$ectspunkte; - - $xml .= " ".$ectspunkte.""; - $xml .= " ".$row->lv_lehrform_kurzbz.""; - if($auslandssemester) - { - $xml .= " ".date('d.m.Y', $datum->mktime_fromdate($bisio_von)).""; - $xml .= " ".date('d.m.Y', $datum->mktime_fromdate($bisio_bis)).""; - $xml .= " $bisio_ort"; - $xml .= " $bisio_universitaet"; - } - $xml .= " "; + $xml .= "".$ects_gesamt.""; + $xml .= $xml_fussnote; + } + else + { + $xml .="PERSON NICHT GEFUNDEN / KEIN STATUS"; + } + $xml .= " "; } - $xml .= "".$ects_gesamt.""; - $xml .= $xml_fussnote; - $xml .= " "; } $xml .= ""; echo $xml;