diff --git a/rdf/student.rdf.php b/rdf/student.rdf.php index 1c96759df..79656b34c 100644 --- a/rdf/student.rdf.php +++ b/rdf/student.rdf.php @@ -101,20 +101,65 @@ if($xmlformat=='rdf') return true; } - function draw_content($row) + function draw_content_liste($row) { global $rdf_url, $datum_obj, $conn; $status=''; $mail_privat = ''; - $qry_mail = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp='email' AND person_id='$row->person_id' AND zustellung=true ORDER BY kontakt_id DESC LIMIT 1"; + /*$qry_mail = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp='email' AND person_id='$row->person_id' AND zustellung=true ORDER BY kontakt_id DESC LIMIT 1"; if($result_mail = pg_query($conn, $qry_mail)) { if($row_mail = pg_fetch_object($result_mail)) { $mail_privat = $row_mail->kontakt; } - } + }*/ + + $prestudent = new prestudent($conn, null, null); + $prestudent->getLastStatus($row->prestudent_id); + $status = $prestudent->rolle_kurzbz; + + echo ' + + + person_id.']]> + prestudent_id.']]> + uid)?$row->uid:'').']]> + titelpre.']]> + titelpost.']]> + vornamen.']]> + vorname.']]> + nachname.']]> + svnr.']]> + convertISODate($row->gebdatum).']]> + semester)?$row->semester:'').']]> + verband)?$row->verband:'').']]> + gruppe)?$row->gruppe:'').']]> + studiengang_kz:'').']]> + matrikelnr)?$row->matrikelnr:'').']]> + + uid)?$row->uid.'@'.DOMAIN:'').']]> + + anmerkungen.']]> + + '; + } + + function draw_content($row) + { + global $rdf_url, $datum_obj, $conn; + $status=''; + + $mail_privat = ''; + /*$qry_mail = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp='email' AND person_id='$row->person_id' AND zustellung=true ORDER BY kontakt_id DESC LIMIT 1"; + if($result_mail = pg_query($conn, $qry_mail)) + { + if($row_mail = pg_fetch_object($result_mail)) + { + $mail_privat = $row_mail->kontakt; + } + }*/ if($row->prestudent_id!='') { @@ -194,33 +239,53 @@ if($xmlformat=='rdf') } } + if(isset($uid)) + { + $student=new student($conn,null,true); + $student->load($uid, $studiensemester_kurzbz); + $prestd = new prestudent($conn, null, true); + + draw_content($student); + $prestd->load($student->prestudent_id); + draw_prestudent($prestd); + } if($typ=='student') { // Studenten holen - $student=new student($conn,null,true); - if (isset($uid)) - $student->load($uid, $studiensemester_kurzbz); - else - $studenten=$student->getStudents($studiengang_kz,$semester,$verband,$gruppe,$gruppe_kurzbz, $studiensemester_kurzbz); - $prestd = new prestudent($conn, null, true); - if(isset($uid)) + $where = ''; + if ($gruppe_kurzbz!=null) { - if(checkfilter($student, $filter2)) - { - draw_content($student); - $prestd->load($student->prestudent_id); - draw_prestudent($prestd); - } + $where=" gruppe_kurzbz='".$gruppe_kurzbz."' AND tbl_benutzer.uid=tbl_benutzergruppe.uid"; + if($stsem!=null) + $where.=" AND tbl_benutzergruppe.studiensemester_kurzbz='$studiensemester_kurzbz'"; } else - foreach ($studenten as $student) + { + $where.=" tbl_studentlehrverband.studiengang_kz=$studiengang_kz"; + if ($semester!=null) + $where.=" AND tbl_studentlehrverband.semester=$semester"; + if ($verband!=null) + $where.=" AND tbl_studentlehrverband.verband='".$verband."'"; + if ($gruppe!=null) + $where.=" AND tbl_studentlehrverband.gruppe='".$gruppe."'"; + } + + $where.=" AND tbl_studentlehrverband.studiensemester_kurzbz='$studiensemester_kurzbz'"; + + $sql_query = "SET CLIENT_ENCODING TO 'UNICODE'; SELECT tbl_person.person_id, tbl_student.prestudent_id, tbl_benutzer.uid, tbl_person.titelpre, + tbl_person.titelpost, tbl_person.vorname, tbl_person.vornamen, tbl_person.nachname, + tbl_person.gebdatum, tbl_person.anmerkungen, + tbl_person.svnr, tbl_student.matrikelnr, tbl_studentlehrverband.semester, + tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe, tbl_studentlehrverband.studiengang_kz + FROM public.tbl_person, public.tbl_student, public.tbl_benutzer, public.tbl_studentlehrverband"; + if($gruppe_kurzbz!=null) + $sql_query.= ",public.tbl_benutzergruppe"; + $sql_query.= " WHERE tbl_person.person_id=tbl_benutzer.person_id AND tbl_benutzer.uid = tbl_student.student_uid AND tbl_studentlehrverband.student_uid=tbl_student.student_uid AND $where ORDER BY nachname, vorname"; + if($result = pg_query($conn, $sql_query)) + while($row = pg_fetch_object($result)) { - if(checkfilter($student, $filter2)) - { - draw_content($student); - $prestd->load($student->prestudent_id); - draw_prestudent($prestd); - } + if(checkfilter($row, $filter2)) + draw_content_liste($row); } } elseif($typ=='incoming')