mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
427 lines
16 KiB
PHP
427 lines
16 KiB
PHP
<?php
|
|
/* Copyright (C) 2006 Technikum-Wien
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation; either version 2 of the
|
|
* License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
|
*
|
|
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
|
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
|
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
|
*/
|
|
require_once('../../config.inc.php');
|
|
require_once('../../../include/functions.inc.php');
|
|
require_once('../../../include/funktion.class.php');
|
|
require_once('../../../include/studiengang.class.php');
|
|
require_once('../../../include/person.class.php');
|
|
require_once('../../../include/benutzer.class.php');
|
|
require_once('../../../include/student.class.php');
|
|
|
|
//Connection Herstellen
|
|
if(!$conn = pg_pconnect(CONN_STRING))
|
|
die("Fehler beim öffnen der Datenbankverbindung");
|
|
|
|
if(isset($_POST['cmbChoice']))
|
|
$cmbChoice = $_POST['cmbChoice'];
|
|
else
|
|
$cmbChoice=null;
|
|
|
|
if(isset($_POST['txtSearchQuery']))
|
|
$txtSearchQuery = $_POST['txtSearchQuery'];
|
|
else
|
|
$txtSearchQuery=null;
|
|
|
|
if(isset($_POST['do_search']))
|
|
$do_search = $_POST['do_search'];
|
|
else
|
|
$do_search = null;
|
|
?>
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
|
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
|
</head>
|
|
|
|
<body onLoad="document.SearchFormular.txtSearchQuery.focus();">
|
|
<table class="tabcontent" id="inhalt">
|
|
<tr>
|
|
<td class="tdwidth10"> </td>
|
|
<td><table class="tabcontent">
|
|
<tr>
|
|
<td class="ContentHeader"><font class="ContentHeader"> Personensuche Technikum Wien</font></td>
|
|
</tr>
|
|
<tr>
|
|
<td> </td>
|
|
</tr>
|
|
<tr>
|
|
<form method="post" action="psearch.php" name="SearchFormular">
|
|
<td nowrap><input type="hidden" name="do_search">
|
|
Suche nach:
|
|
<input type="text" name="txtSearchQuery" size="45">
|
|
in Gruppe
|
|
<select name="cmbChoice">
|
|
<option value="all">Alle Kategorien</option>
|
|
<?php
|
|
$fkt_obj = new funktion($conn);
|
|
$fkt_obj->getAll();
|
|
|
|
//$qry = "SELECT DISTINCT funktion_kurzbz AS kurzbz, bezeichnung FROM public.tbl_funktion WHERE aktiv=TRUE ORDER BY bezeichnung";
|
|
|
|
//$result = pg_exec($sql_conn, $sql_query);
|
|
//$num_rows = pg_num_rows($result);
|
|
|
|
//for($i = 0; $i < $num_rows; $i++)
|
|
foreach ($fkt_obj->result as $row)
|
|
{
|
|
//$row = pg_fetch_object($result, $i);
|
|
|
|
if(isset($cmbChoice) && $cmbChoice == $row->funktion_kurzbz)
|
|
{
|
|
echo "<option value=\"$row->funktion_kurzbz\" selected>$row->beschreibung</option>";
|
|
}
|
|
else
|
|
{
|
|
echo "<option value=\"$row->funktion_kurzbz\">$row->beschreibung</option>";
|
|
}
|
|
}
|
|
?>
|
|
</select>
|
|
<input type="submit" name="btnSearch" value="Suchen">
|
|
</td>
|
|
</form>
|
|
</tr>
|
|
<tr>
|
|
<td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap>
|
|
<?php
|
|
if(isset($do_search))
|
|
{
|
|
if($txtSearchQuery == "" || $txtSearchQuery == "*" || $txtSearchQuery == "*.*")
|
|
{
|
|
if($cmbChoice == "all")
|
|
{
|
|
$sql_query = "SELECT uid, titelpre, titelpost, nachname, vorname, vornamen, standort_kurzbz, telefonklappe as teltw,(uid || '@".DOMAIN."') AS emailtw, foto,-1 AS studiengang_kz, -1 AS semester, ort_kurzbz as ort FROM campus.vw_mitarbeiter UNION SELECT DISTINCT uid, titelpre, titelpost, nachname, vorname, vornamen,(''::varchar) AS standort_kurzbz, (''::varchar) AS teltw, (uid || '@".DOMAIN."') AS emailtw, foto, studiengang_kz, semester, ''::varchar as ort FROM campus.vw_student WHERE semester<10 ORDER BY nachname, vorname";
|
|
}
|
|
else
|
|
{
|
|
$sql_query = "SELECT DISTINCT uid, titelpre, titelpost, nachname, vorname, vornamen, standort_kurzbz, telefonklappe AS teltw, (uid || '@".DOMAIN."') AS emailtw, foto, -1 AS studiengang_kz, -1 AS semester, ort_kurzbz as ort FROM campus.vw_mitarbeiter JOIN public.tbl_benutzerfunktion using(uid) WHERE funktion_kurzbz='$cmbChoice' AND aktiv UNION SELECT DISTINCT uid, titelpre,titelpost, nachname, vorname, vornamen,(''::varchar) AS standort_kurzbz, (''::varchar) AS teltw, (uid || '@".DOMAIN."') AS emailtw, foto, vw_student.studiengang_kz, semester, ''::varchar as ort FROM campus.vw_student JOIN public.tbl_benutzerfunktion using(uid) WHERE semester<10 AND funktion_kurzbz='$cmbChoice' AND aktiv ORDER BY nachname, vorname";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$txtSearchQuery = addslashes($txtSearchQuery);
|
|
if($cmbChoice == "all")
|
|
{
|
|
$sql_query = "SELECT DISTINCT uid, titelpre, titelpost, nachname, vorname, vornamen, standort_kurzbz, telefonklappe AS teltw, (uid || '@".DOMAIN."') AS emailtw, foto, -1 AS studiengang_kz, -1 AS semester, ort_kurzbz as ort FROM campus.vw_mitarbeiter WHERE (LOWER(nachname) LIKE LOWER('%$txtSearchQuery%') OR uid LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(nachname || ' ' || vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname || ' ' || nachname) LIKE LOWER('%$txtSearchQuery%')) AND aktiv=TRUE UNION SELECT DISTINCT uid, titelpre, titelpost, nachname, vorname, vornamen,(''::varchar) AS standort_kurzbz, (''::varchar) AS teltw, (uid || '@".DOMAIN."') AS emailtw, foto, studiengang_kz, semester, ''::varchar as ort FROM campus.vw_student WHERE semester<10 AND (LOWER(nachname) LIKE LOWER('%$txtSearchQuery%') OR uid LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(nachname || ' ' || vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname || ' ' || nachname) LIKE LOWER('%$txtSearchQuery%')) ORDER BY nachname, vorname";
|
|
}
|
|
else
|
|
{
|
|
$sql_query = "SELECT DISTINCT uid, titelpre, titelpost, nachname, vorname, vornamen, standort_kurzbz, telefonklappe AS teltw, (uid || '@".DOMAIN."') AS emailtw, foto, -1 AS studiengang_kz, -1 AS semester, ort_kurzbz as ort FROM campus.vw_mitarbeiter JOIN public.tbl_benutzerfunktion USING(uid) WHERE ((LOWER(nachname) LIKE LOWER('%$txtSearchQuery%') OR uid LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(nachname || ' ' || vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname || ' ' || nachname) LIKE LOWER('%$txtSearchQuery%')) AND funktion_kurzbz='$cmbChoice') AND aktiv=TRUE UNION SELECT DISTINCT uid, titelpre, titelpost, nachname, vorname, vornamen,(''::varchar) AS standort_kurzbz, (''::varchar) AS teltw, (uid || '@".DOMAIN."') AS emailtw, foto, vw_student.studiengang_kz, semester, ''::varchar as ort FROM campus.vw_student JOIN public.tbl_benutzerfunktion USING(uid) WHERE semester <10 AND ((LOWER(nachname) LIKE LOWER('%$txtSearchQuery%') OR uid LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(nachname || ' ' || vorname) LIKE LOWER('%$txtSearchQuery%') OR LOWER(vorname || ' ' || nachname) LIKE LOWER('%$txtSearchQuery%')) AND funktion_kurzbz='$cmbChoice') AND aktiv=TRUE ORDER BY nachname, vorname";
|
|
}
|
|
}
|
|
|
|
$result = pg_query($conn, $sql_query);
|
|
$num_rows = pg_num_rows($result);
|
|
|
|
if($num_rows > 0)
|
|
{
|
|
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"1\" width=\"100%\">";
|
|
|
|
echo "<tr>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Titel</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Vorname</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Nachname</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Telefonnummer</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> E-Mail Adresse</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Raum</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Studiengang</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Semester</font></td>
|
|
<td align=\"left\" class=\"ContentHeader\" class='tdwrap'><font class=\"ContentHeader\"> Hauptverteiler</font></td>";
|
|
|
|
|
|
echo "</tr>
|
|
<tr>
|
|
<td class='tdwrap'> </td>
|
|
</tr>";
|
|
|
|
for($i = 0; $i < $num_rows; $i++)
|
|
{
|
|
$row = pg_fetch_object($result, $i);
|
|
|
|
echo "<tr>";
|
|
|
|
if($row->titelpre != "")
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> $row->titelpre</td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> $row->titelpre</td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
if($row->vorname != "")
|
|
{
|
|
$vorname=$row->vorname;
|
|
if($row->vornamen != "")
|
|
$vorname.=' '.substr($row->vornamen,0,1).'.';
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> $vorname</td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> $vorname</td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
if($row->nachname != "")
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> <a class='Item' href='../profile/index.php?uid=$row->uid' title='Profil anzeigen'>$row->nachname $row->titelpost</a></td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> <a class='Item' href='../profile/index.php?uid=$row->uid' title='Profil anzeigen'>$row->nachname $row->titelpost</a></td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
if($row->teltw != "")
|
|
{
|
|
$vorwahl = '';
|
|
if($row->standort_kurzbz!='')
|
|
{
|
|
$qry = "SELECT telefon FROM public.tbl_standort, public.tbl_adresse, public.tbl_firma WHERE tbl_standort.standort_kurzbz='$row->standort_kurzbz' AND tbl_standort.adresse_id=tbl_adresse.adresse_id AND tbl_adresse.firma_id=tbl_firma.firma_id";
|
|
if($result_tel = pg_query($conn, $qry))
|
|
if($row_tel = pg_fetch_object($result_tel))
|
|
$vorwahl = $row_tel->telefon;
|
|
}
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> $vorwahl - $row->teltw</td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> $vorwahl - $row->teltw</td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
if($row->emailtw != "")
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> <a href=\"mailto:$row->emailtw\" class=\"Item\">$row->emailtw</a></td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> <a class='Item' href=\"mailto:$row->emailtw\" class=\"Item\">$row->emailtw</a></td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
if($row->ort != "")
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> $row->ort</td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> $row->ort</td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
$kurzbz='';
|
|
if($row->studiengang_kz != -1)
|
|
{
|
|
$stg_obj = new studiengang($conn, $row->studiengang_kz);
|
|
|
|
if($i % 2 == 0)
|
|
{
|
|
echo "<td align=\"left\" class='tdwrap'> $stg_obj->kuerzel</td>";
|
|
$kurzbz=$stg_obj->kuerzel;
|
|
}
|
|
else
|
|
{
|
|
echo "<td align=\"left\" class =\"MarkLine\" class='tdwrap'> $stg_obj->kuerzel</td>";
|
|
$kurzbz=$stg_obj->kuerzel;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"left\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"left\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
if($row->semester != -1)
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"center\" class='tdwrap'> $row->semester</td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"center\" class=\"MarkLine\" class='tdwrap'> $row->semester</td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"center\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"center\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
if($row->studiengang_kz != -1)
|
|
{
|
|
$std_obj = new student($conn, $row->uid);
|
|
|
|
$verband=$std_obj->verband;
|
|
$gruppe=$std_obj->gruppe;
|
|
|
|
$kurzbz=strtolower($kurzbz);
|
|
$verband=strtolower($verband);
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"center\" class='tdwrap'> <a class='Item' href='mailto:$kurzbz$row->semester$verband$gruppe@".DOMAIN."'>$kurzbz$row->semester$verband$gruppe@".DOMAIN."</td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"center\" class=\"MarkLine\" class='tdwrap'> <a class='Item' href='mailto:$kurzbz$row->semester$verband$gruppe@".DOMAIN."'>$kurzbz$row->semester$verband$gruppe@".DOMAIN."</td>";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if($i % 2 == 0)
|
|
{
|
|
echo " <td align=\"center\" class='tdwrap'> </td>";
|
|
}
|
|
else
|
|
{
|
|
echo " <td align=\"center\" class=\"MarkLine\" class='tdwrap'> </td>";
|
|
}
|
|
}
|
|
|
|
|
|
echo "</tr>";
|
|
}
|
|
|
|
echo "<tr>
|
|
<td class='tdwrap'> </td>
|
|
</tr>";
|
|
|
|
echo "</table>";
|
|
}
|
|
|
|
if($num_rows > 0)
|
|
{
|
|
echo "Es wurden $num_rows Einträge gefunden.";
|
|
}
|
|
else
|
|
{
|
|
echo "Es wurden keine Einträge gefunden.";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo "<br>Bitte geben Sie einen Suchbegriff ein, nach dem gesucht werden soll.";
|
|
}
|
|
?>
|
|
</td>
|
|
</tr>
|
|
</table></td>
|
|
<td class="tdwidth30"> </td>
|
|
</tr>
|
|
</table>
|
|
</body>
|
|
</html>
|