This commit is contained in:
Gerald Simane
2009-06-18 11:34:30 +00:00
parent 09e9a22c32
commit 8d8fe96614
35 changed files with 10018 additions and 10018 deletions
+1 -1
View File
@@ -36,7 +36,7 @@ if(!$conn=pg_pconnect(CONN_STRING))
$user=get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
?>
+1 -1
View File
@@ -50,7 +50,7 @@ else
if(!is_numeric($stg_kz) && $stg_kz!='')
$stg_kz='0';
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($getuid);
if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', null, 'suid', $fachbereich_kurzbz))
+1 -1
View File
@@ -68,7 +68,7 @@ $user = get_uid();
$datum_obj = new datum();
$stg_arr = array();
$error = false;
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$htmlstr='';
@@ -64,7 +64,7 @@ $error='';
$neu = (isset($_GET['neu'])?true:false);
$stg_arr = array();
$error = false;
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
//echo $irgendwas."<br>";
+1 -1
View File
@@ -87,7 +87,7 @@ $error='';
$neu = (isset($_GET['neu'])?true:false);
$stg_arr = array();
$error = false;
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$htmlstr='';
+1 -1
View File
@@ -40,7 +40,7 @@ if (isset($_GET['stg_kz']) || isset($_POST['stg_kz']))
else
$stg_kz=0;
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('lehre',0))
die('Sie haben keine Berechtigung für diese Seite');
+1 -1
View File
@@ -35,7 +35,7 @@ if(!$conn=pg_pconnect(CONN_STRING))
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('lehre',0))
@@ -35,7 +35,7 @@ if(!$conn=pg_pconnect(CONN_STRING))
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('lehre',0))
+1 -1
View File
@@ -39,7 +39,7 @@ $studiengang=$s->result;
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if (isset($_GET['filter_stg_kz']) || isset($_POST['filter_stg_kz']))
+489 -489
View File
@@ -1,490 +1,490 @@
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/fachbereich.class.php');
require_once('../../include/lvinfo.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$s=new studiengang($conn);
$s->getAll('typ, kurzbz', false);
$studiengang=$s->result;
$user = get_uid();
if (isset($_GET['stg_kz']) || isset($_POST['stg_kz']))
$stg_kz=(isset($_GET['stg_kz'])?$_GET['stg_kz']:$_POST['stg_kz']);
else
$stg_kz='';
if (isset($_GET['semester']) || isset($_POST['semester']))
$semester=(isset($_GET['semester'])?$_GET['semester']:$_POST['semester']);
else
$semester=0;
if (isset($_GET['isaktiv']) || isset($_POST['isaktiv']))
$isaktiv=(isset($_GET['isaktiv'])?$_GET['isaktiv']:$_POST['isaktiv']);
else
$isaktiv='';
if(!is_numeric($stg_kz) && $stg_kz!='')
$stg_kz='';
if(!is_numeric($semester))
$semester=0;
$fachbereich_kurzbz = (isset($_REQUEST['fachbereich_kurzbz'])?$_REQUEST['fachbereich_kurzbz']:'');
//Wenn kein Fachbereich und kein Studiengang gewaehlt wurde
//dann wird der Studiengang auf 0 gesetzt da sonst die zu ladende liste zu lang wird
if($fachbereich_kurzbz=='' && $stg_kz=='')
$stg_kz='0';
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', null, 'suid', $fachbereich_kurzbz))
die('Sie haben keine Berechtigung für diesen Studiengang');
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
{
if($rechte->isBerechtigt('admin', $stg_kz, 'suid'))
{
//Lehrevz Speichern
if(isset($_POST['lehrevz']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET lehreverzeichnis='".addslashes($_POST['lehrevz'])."' WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
//Aktiv Feld setzen
if(isset($_GET['aktiv']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET aktiv=".($_GET['aktiv']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
//Organisationsform Speichern
if(isset($_POST['orgform']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET orgform_kurzbz=".($_POST['orgform']==''?'null':"'".addslashes($_POST['orgform'])."'")." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
}
//LVInfo kopieren
if(isset($_POST['source_id']))
{
$lvinfo = new lvinfo($conn);
if(!$lvinfo->copy($_POST['source_id'], $_GET['lvid']))
echo 'Fehler beim Kopieren';
else
echo 'Erfolgreich gespeichert';
}
//Lehre Feld setzen
if(isset($_GET['lehre']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET lehre=".($_GET['lehre']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
//Zeugnis Feld setzen
if(isset($_GET['zeugnis']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET zeugnis=".($_GET['zeugnis']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
//Sort Speichern
if(isset($_POST['sort']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET sort='".addslashes($_POST['sort'])."' WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
//FBK Speichern
if(isset($_POST['fbk']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET koordinator=".($_POST['fbk']==''?'null':"'".addslashes($_POST['fbk'])."'")." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
//Projektarbeit Feld setzen
if(isset($_GET['projektarbeit']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET projektarbeit=".($_GET['projektarbeit']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
//echo $qry;
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
}
//Fachbereichskoordinatoren holen
if($stg_kz!='')
{
$where = "studiengang_kz='$stg_kz'";
$where2=$where;
$tables='lehre.tbl_lehrveranstaltung';
}
else
{
$where = "fachbereich_kurzbz='$fachbereich_kurzbz'";
$where2 = $where." AND
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id";
$tables='lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach';
}
$qry = "
SELECT
distinct
vorname,
nachname,
uid
FROM
campus.vw_mitarbeiter JOIN
(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='fbk' AND $where
UNION
SELECT koordinator as uid from $tables WHERE $where2) as a USING(uid) ORDER BY nachname, vorname";
$fbk = array();
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$fbk[$row->uid]['vorname']=$row->vorname;
$fbk[$row->uid]['nachname']=$row->nachname;
}
}
//Lehrveranstaltungen holen
//Wenn nicht admin, dann nur die aktiven anzeigen
$aktiv='';
$isaktiv=trim($isaktiv);
if(!$rechte->isBerechtigt('admin'))
$aktiv = ' AND tbl_lehrveranstaltung.aktiv=true';
else
{
if($isaktiv=='aktiv')
{
$aktiv = ' AND tbl_lehrveranstaltung.aktiv=true';
}
elseif($isaktiv=='naktiv')
{
$aktiv = ' AND tbl_lehrveranstaltung.aktiv=false';
}
else
{
$aktiv='';
}
}
if($fachbereich_kurzbz !='')
$sql_query="SELECT distinct tbl_lehrveranstaltung.* FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND
tbl_lehrfach.fachbereich_kurzbz='".addslashes($fachbereich_kurzbz)."'";
else
$sql_query="SELECT * FROM lehre.tbl_lehrveranstaltung WHERE true";
if($stg_kz!='')
$sql_query.= " AND tbl_lehrveranstaltung.studiengang_kz='$stg_kz'";
$sql_query.=" AND tbl_lehrveranstaltung.semester='$semester' $aktiv ORDER BY tbl_lehrveranstaltung.bezeichnung";
if(!$result_lv = pg_query($conn, $sql_query))
die("Lehrveranstaltung not found!");
//Studiengang DropDown
$outp='';
$s=array();
$outp.="<form action='".$_SERVER['PHP_SELF']."' method='GET' onsubmit='return checksubmit();'>";
$outp.="Studiengang <SELECT name='stg_kz' id='select_stg_kz'>";
$outp.="<OPTION value='' ".($stg_kz==''?'selected':'').">-- Alle --</OPTION>";
foreach ($studiengang as $stg)
{
if($rechte->isBerechtigt('admin', $stg->studiengang_kz, 'suid') || $rechte->isBerechtigt('assistenz', $stg->studiengang_kz, 'suid'))
{
$outp.="<OPTION value='$stg->studiengang_kz' ".($stg->studiengang_kz==$stg_kz?'selected':'').">$stg->kuerzel - $stg->kurzbzlang</OPTION>";
}
$s[$stg->studiengang_kz]->max_sem=8; // $stg->max_semester;
$s[$stg->studiengang_kz]->kurzbz=$stg->kurzbzlang;
}
$s['']->max_sem=8;
$outp.='</SELECT>';
//Semester DropDown
$outp.= 'Semester <SELECT name="semester">';
for ($i=0;$i<=$s[$stg_kz]->max_sem;$i++)
$outp.="<OPTION value='$i' ".($i==$semester?'selected':'').">$i</OPTION>";
$outp.='</SELECT>';
//Fachbereich DropDown
$outp.= 'Fachbereich <SELECT name="fachbereich_kurzbz" id="select_fachbereich_kurzbz">';
$fachb = new fachbereich($conn);
$fachb->getAll();
$outp.= "<OPTION value='' ".($fachbereich_kurzbz==''?'selected':'').">-- Alle --</OPTION>";
foreach ($fachb->result as $fb)
{
if($fachbereich_kurzbz==$fb->fachbereich_kurzbz)
$selected = 'selected';
else
$selected = '';
if($rechte->isBerechtigt('admin', 0, 'suid') ||
$rechte->isBerechtigt('assistenz', null, 'suid', $fb->fachbereich_kurzbz) ||
$rechte->isBerechtigt('admin', null, 'suid', $fb->fachbereich_kurzbz))
$outp.= "<OPTION value='$fb->fachbereich_kurzbz' $selected>$fb->fachbereich_kurzbz</OPTION>";
}
$outp.= '</SELECT>';
if($rechte->isBerechtigt('admin'))
{
//Aktiv DropDown
$outp.= 'Aktiv <SELECT name="isaktiv" id="isaktiv">';
$outp.= "<OPTION value=''".($isaktiv==''?' selected':'').">-- Alle --</OPTION>";
$outp.= "<OPTION value='aktiv '".($isaktiv=='aktiv'?'selected':'').">-- Aktiv --</OPTION>";
$outp.= "<OPTION value='naktiv '".($isaktiv=='naktiv'?'selected':'').">-- Nicht aktiv --</OPTION>";
$outp.= '</SELECT>';
}
else
{
$isaktiv='aktiv';
}
$outp.= '<input type="submit" value="Anzeigen">';
$outp .="</form>";
echo "<H2>Lehrveranstaltung Verwaltung (".(isset($s[$stg_kz]->kurzbz)?$s[$stg_kz]->kurzbz:$fachbereich_kurzbz)." - ".$semester.")</H2>";
echo '<html>
<head>
<title>Lehrveranstaltung Verwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function checksubmit()
{
//alert(document.getElementById("select_stg_kz").value+" : "+document.getElementById("select_fachbereich_kurzbz").value);
//return false;
if(document.getElementById("select_stg_kz").value==\'\' && document.getElementById("select_fachbereich_kurzbz").value==\'\')
{
alert("Studiengang und Fachbereich dürfen nicht gleichzeitig auf \'Alle\' gesetzt sein");
return false;
}
else
return true;
}
</script>
</head>
<body class="Background_main">
';
echo '<table width="100%"><tr><td>';
echo $outp;
echo '</td><td>';
//Neu Button
if($rechte->isBerechtigt('admin'))
echo "<input type='button' onclick='parent.lv_detail.location=\"lehrveranstaltung_details.php?neu=true&stg_kz=$stg_kz&semester=$semester\"' value='Neu'/>";
echo '</td></tr></table>';
if ($result_lv!=0)
{
$num_rows=pg_num_rows($result_lv);
echo "<h3>&Uuml;bersicht - $num_rows LVAs</h3>
<table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>";
echo "<th class='table-sortable:default'>ID</th>
<th class='table-sortable:default'>Kurzbz</th>
<th class='table-sortable:default'>Bezeichnung</th>
<th class='table-sortable:default'>Lehrform</th>
<th class='table-sortable:default'>Stg</th>
<th class='table-sortable:default'>Organisationsform</th>
<th class='table-sortable:default'>SS</th>
<th class='table-sortable:default'>ECTS</th>
<th class='table-sortable:default'>Lehre</th>
<th class='table-sortable:default'>LehreVz</th>
<th class='table-sortable:default'>Aktiv</th>
<th class='table-sortable:numeric'>Sort</th>
<th class='table-sortable:default'>Zeugnis</th>
<th class='table-sortable:default'>BA/DA</th>
<th class='table-sortable:default'>FBK</th>
<th class='table-sortable:default'>LVInfo</th>\n";
echo "</tr></thead>";
echo "<tbody>";
for($i=0;$i<$num_rows;$i++)
{
$row=pg_fetch_object($result_lv);
echo "<tr>";
//ID
echo "<td align='right'>";
if($rechte->isBerechtigt('admin'))
echo "<a href='lehrveranstaltung_details.php?lv_id=$row->lehrveranstaltung_id' target='lv_detail'>$row->lehrveranstaltung_id</a>";
else
echo "$row->lehrveranstaltung_id";
echo "</td>";
//Kurzbz
echo "<td>$row->kurzbz</td>";
//Bezeichnung
echo "<td>";
if($rechte->isBerechtigt('admin'))
echo "<a href='lehrveranstaltung_details.php?lv_id=$row->lehrveranstaltung_id' target='lv_detail'>$row->bezeichnung</a>";
else
echo $row->bezeichnung;
echo "</td>";
echo "<td>".$row->lehrform_kurzbz."</td>";
echo "<td>".$s[$row->studiengang_kz]->kurzbz."</td>";
//Organisationsform
echo "<td style='white-space:nowrap;'>";
if($rechte->isBerechtigt('admin'))
{
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&fachbereich_kurzbz=$fachbereich_kurzbz' method='POST'>";
echo "<SELECT name='orgform'>";
echo "<option value=''>-- Keine Auswahl --</option>";
$qry_orgform = "SELECT * FROM bis.tbl_orgform WHERE orgform_kurzbz NOT IN ('VBB', 'ZGS') ORDER BY orgform_kurzbz";
if($result_orgform = pg_query($conn, $qry_orgform))
{
while($row_orgform = pg_fetch_object($result_orgform))
{
if($row_orgform->orgform_kurzbz==$row->orgform_kurzbz)
$selected='selected';
else
$selected='';
echo "<option value='$row_orgform->orgform_kurzbz' $selected>$row_orgform->bezeichnung</option>";
}
}
echo "</SELECT><input type='submit' value='ok' name='submitorg'></form>";
}
else
{
echo $row->orgform_kurzbz;
}
echo "</td>";
//Semesterstunden
echo "<td>$row->semesterstunden</td>";
//ECTS
echo "<td>$row->ects</td>";
//Lehre
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&lehre=$row->lehre'><img src='../../skin/images/".($row->lehre=='t'?'true.gif':'false.gif')."'></a></td>";
//LehreVz
echo "<td style='white-space:nowrap;'>";
if($rechte->isBerechtigt('admin'))
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester' method='POST'><input type='text' value='$row->lehreverzeichnis' size='4' name='lehrevz'><input type='submit' value='ok'></form>";
else
echo $row->lehreverzeichnis;
echo "</td>";
//Aktiv
echo "<td align='center' style='white-space:nowrap;'>";
if($rechte->isBerechtigt('admin'))
echo "<a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&aktiv=$row->aktiv'><img src='../../skin/images/".($row->aktiv=='t'?'true.gif':'false.gif')."'></a>";
else
echo ($row->aktiv?'Ja':'Nein');
echo "</td>";
//Sort
echo "<td style='white-space:nowrap;'>";
echo "<div style='display: none'>$row->sort</div>";
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester' method='POST'><input type='text' value='$row->sort' size='4' name='sort'><input type='submit' value='ok'></form>";
echo "</td>";
//Zeugnis
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&zeugnis=$row->zeugnis'><img src='../../skin/images/".($row->zeugnis=='t'?'true.gif':'false.gif')."'></a></td>";
//Projektarbeit
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&projektarbeit=$row->projektarbeit'><img src='../../skin/images/".($row->projektarbeit=='t'?'true.gif':'false.gif')."'></a></td>";
//FBK
echo "<td style='white-space:nowrap;'>";
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&fachbereich_kurzbz=$fachbereich_kurzbz&isaktiv=$isaktiv' method='POST'><SELECT name='fbk'>";
echo "<option value=''>-- Keine Auswahl --</option>";
foreach ($fbk as $fb_uid=>$fb_k)
{
if($fb_uid==$row->koordinator)
$selected='selected';
else
$selected='';
echo "<option value='$fb_uid' $selected>".$fb_k['nachname']." ".$fb_k['vorname']."</option>";
}
echo "</SELECT><input type='submit' value='ok' name='submitfbk'></form>";
echo "</td>";
echo '<td nowrap>';
//LVInfo
$lvinfo = new lvinfo($conn);
if(!$lvinfo->exists($row->lehrveranstaltung_id))
{
echo '
<form action="'.$_SERVER['PHP_SELF'].'?lvid='.$row->lehrveranstaltung_id.'&stg_kz='.$stg_kz.'&semester='.$semester.'&fachbereich_kurzbz='.$fachbereich_kurzbz.'&isaktiv='.$isaktiv.'" method="POST">
kopieren von id: <input type="text" size="3" name="source_id" value="" />
<input type="submit" name="submitlvinfo" value="ok">
</form>';
}
else
echo 'vorhanden';
echo '</td>';
echo "</tr>\n";
}
}
else
echo "Kein Eintrag gefunden!";
?>
</tbody>
</table>
<br>
</body>
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/fachbereich.class.php');
require_once('../../include/lvinfo.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$s=new studiengang($conn);
$s->getAll('typ, kurzbz', false);
$studiengang=$s->result;
$user = get_uid();
if (isset($_GET['stg_kz']) || isset($_POST['stg_kz']))
$stg_kz=(isset($_GET['stg_kz'])?$_GET['stg_kz']:$_POST['stg_kz']);
else
$stg_kz='';
if (isset($_GET['semester']) || isset($_POST['semester']))
$semester=(isset($_GET['semester'])?$_GET['semester']:$_POST['semester']);
else
$semester=0;
if (isset($_GET['isaktiv']) || isset($_POST['isaktiv']))
$isaktiv=(isset($_GET['isaktiv'])?$_GET['isaktiv']:$_POST['isaktiv']);
else
$isaktiv='';
if(!is_numeric($stg_kz) && $stg_kz!='')
$stg_kz='';
if(!is_numeric($semester))
$semester=0;
$fachbereich_kurzbz = (isset($_REQUEST['fachbereich_kurzbz'])?$_REQUEST['fachbereich_kurzbz']:'');
//Wenn kein Fachbereich und kein Studiengang gewaehlt wurde
//dann wird der Studiengang auf 0 gesetzt da sonst die zu ladende liste zu lang wird
if($fachbereich_kurzbz=='' && $stg_kz=='')
$stg_kz='0';
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', null, 'suid', $fachbereich_kurzbz))
die('Sie haben keine Berechtigung für diesen Studiengang');
if(isset($_GET['lvid']) && is_numeric($_GET['lvid']))
{
if($rechte->isBerechtigt('admin', $stg_kz, 'suid'))
{
//Lehrevz Speichern
if(isset($_POST['lehrevz']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET lehreverzeichnis='".addslashes($_POST['lehrevz'])."' WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
//Aktiv Feld setzen
if(isset($_GET['aktiv']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET aktiv=".($_GET['aktiv']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
//Organisationsform Speichern
if(isset($_POST['orgform']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET orgform_kurzbz=".($_POST['orgform']==''?'null':"'".addslashes($_POST['orgform'])."'")." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
}
//LVInfo kopieren
if(isset($_POST['source_id']))
{
$lvinfo = new lvinfo($conn);
if(!$lvinfo->copy($_POST['source_id'], $_GET['lvid']))
echo 'Fehler beim Kopieren';
else
echo 'Erfolgreich gespeichert';
}
//Lehre Feld setzen
if(isset($_GET['lehre']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET lehre=".($_GET['lehre']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
//Zeugnis Feld setzen
if(isset($_GET['zeugnis']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET zeugnis=".($_GET['zeugnis']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
//Sort Speichern
if(isset($_POST['sort']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET sort='".addslashes($_POST['sort'])."' WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
//FBK Speichern
if(isset($_POST['fbk']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET koordinator=".($_POST['fbk']==''?'null':"'".addslashes($_POST['fbk'])."'")." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
if(!pg_query($conn, $qry))
echo "Fehler beim Speichern!";
else
echo "Erfolgreich gespeichert";
}
//Projektarbeit Feld setzen
if(isset($_GET['projektarbeit']))
{
$qry = "UPDATE lehre.tbl_lehrveranstaltung SET projektarbeit=".($_GET['projektarbeit']=='t'?'false':'true')." WHERE lehrveranstaltung_id='".$_GET['lvid']."'";
//echo $qry;
if(!pg_query($conn, $qry))
echo "Fehler beim Speichen!";
else
echo "Erfolgreich gespeichert";
}
}
//Fachbereichskoordinatoren holen
if($stg_kz!='')
{
$where = "studiengang_kz='$stg_kz'";
$where2=$where;
$tables='lehre.tbl_lehrveranstaltung';
}
else
{
$where = "fachbereich_kurzbz='$fachbereich_kurzbz'";
$where2 = $where." AND
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id";
$tables='lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach';
}
$qry = "
SELECT
distinct
vorname,
nachname,
uid
FROM
campus.vw_mitarbeiter JOIN
(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='fbk' AND $where
UNION
SELECT koordinator as uid from $tables WHERE $where2) as a USING(uid) ORDER BY nachname, vorname";
$fbk = array();
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$fbk[$row->uid]['vorname']=$row->vorname;
$fbk[$row->uid]['nachname']=$row->nachname;
}
}
//Lehrveranstaltungen holen
//Wenn nicht admin, dann nur die aktiven anzeigen
$aktiv='';
$isaktiv=trim($isaktiv);
if(!$rechte->isBerechtigt('admin'))
$aktiv = ' AND tbl_lehrveranstaltung.aktiv=true';
else
{
if($isaktiv=='aktiv')
{
$aktiv = ' AND tbl_lehrveranstaltung.aktiv=true';
}
elseif($isaktiv=='naktiv')
{
$aktiv = ' AND tbl_lehrveranstaltung.aktiv=false';
}
else
{
$aktiv='';
}
}
if($fachbereich_kurzbz !='')
$sql_query="SELECT distinct tbl_lehrveranstaltung.* FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND
tbl_lehrfach.fachbereich_kurzbz='".addslashes($fachbereich_kurzbz)."'";
else
$sql_query="SELECT * FROM lehre.tbl_lehrveranstaltung WHERE true";
if($stg_kz!='')
$sql_query.= " AND tbl_lehrveranstaltung.studiengang_kz='$stg_kz'";
$sql_query.=" AND tbl_lehrveranstaltung.semester='$semester' $aktiv ORDER BY tbl_lehrveranstaltung.bezeichnung";
if(!$result_lv = pg_query($conn, $sql_query))
die("Lehrveranstaltung not found!");
//Studiengang DropDown
$outp='';
$s=array();
$outp.="<form action='".$_SERVER['PHP_SELF']."' method='GET' onsubmit='return checksubmit();'>";
$outp.="Studiengang <SELECT name='stg_kz' id='select_stg_kz'>";
$outp.="<OPTION value='' ".($stg_kz==''?'selected':'').">-- Alle --</OPTION>";
foreach ($studiengang as $stg)
{
if($rechte->isBerechtigt('admin', $stg->studiengang_kz, 'suid') || $rechte->isBerechtigt('assistenz', $stg->studiengang_kz, 'suid'))
{
$outp.="<OPTION value='$stg->studiengang_kz' ".($stg->studiengang_kz==$stg_kz?'selected':'').">$stg->kuerzel - $stg->kurzbzlang</OPTION>";
}
$s[$stg->studiengang_kz]->max_sem=8; // $stg->max_semester;
$s[$stg->studiengang_kz]->kurzbz=$stg->kurzbzlang;
}
$s['']->max_sem=8;
$outp.='</SELECT>';
//Semester DropDown
$outp.= 'Semester <SELECT name="semester">';
for ($i=0;$i<=$s[$stg_kz]->max_sem;$i++)
$outp.="<OPTION value='$i' ".($i==$semester?'selected':'').">$i</OPTION>";
$outp.='</SELECT>';
//Fachbereich DropDown
$outp.= 'Fachbereich <SELECT name="fachbereich_kurzbz" id="select_fachbereich_kurzbz">';
$fachb = new fachbereich($conn);
$fachb->getAll();
$outp.= "<OPTION value='' ".($fachbereich_kurzbz==''?'selected':'').">-- Alle --</OPTION>";
foreach ($fachb->result as $fb)
{
if($fachbereich_kurzbz==$fb->fachbereich_kurzbz)
$selected = 'selected';
else
$selected = '';
if($rechte->isBerechtigt('admin', 0, 'suid') ||
$rechte->isBerechtigt('assistenz', null, 'suid', $fb->fachbereich_kurzbz) ||
$rechte->isBerechtigt('admin', null, 'suid', $fb->fachbereich_kurzbz))
$outp.= "<OPTION value='$fb->fachbereich_kurzbz' $selected>$fb->fachbereich_kurzbz</OPTION>";
}
$outp.= '</SELECT>';
if($rechte->isBerechtigt('admin'))
{
//Aktiv DropDown
$outp.= 'Aktiv <SELECT name="isaktiv" id="isaktiv">';
$outp.= "<OPTION value=''".($isaktiv==''?' selected':'').">-- Alle --</OPTION>";
$outp.= "<OPTION value='aktiv '".($isaktiv=='aktiv'?'selected':'').">-- Aktiv --</OPTION>";
$outp.= "<OPTION value='naktiv '".($isaktiv=='naktiv'?'selected':'').">-- Nicht aktiv --</OPTION>";
$outp.= '</SELECT>';
}
else
{
$isaktiv='aktiv';
}
$outp.= '<input type="submit" value="Anzeigen">';
$outp .="</form>";
echo "<H2>Lehrveranstaltung Verwaltung (".(isset($s[$stg_kz]->kurzbz)?$s[$stg_kz]->kurzbz:$fachbereich_kurzbz)." - ".$semester.")</H2>";
echo '<html>
<head>
<title>Lehrveranstaltung Verwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function checksubmit()
{
//alert(document.getElementById("select_stg_kz").value+" : "+document.getElementById("select_fachbereich_kurzbz").value);
//return false;
if(document.getElementById("select_stg_kz").value==\'\' && document.getElementById("select_fachbereich_kurzbz").value==\'\')
{
alert("Studiengang und Fachbereich dürfen nicht gleichzeitig auf \'Alle\' gesetzt sein");
return false;
}
else
return true;
}
</script>
</head>
<body class="Background_main">
';
echo '<table width="100%"><tr><td>';
echo $outp;
echo '</td><td>';
//Neu Button
if($rechte->isBerechtigt('admin'))
echo "<input type='button' onclick='parent.lv_detail.location=\"lehrveranstaltung_details.php?neu=true&stg_kz=$stg_kz&semester=$semester\"' value='Neu'/>";
echo '</td></tr></table>';
if ($result_lv!=0)
{
$num_rows=pg_num_rows($result_lv);
echo "<h3>&Uuml;bersicht - $num_rows LVAs</h3>
<table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>";
echo "<th class='table-sortable:default'>ID</th>
<th class='table-sortable:default'>Kurzbz</th>
<th class='table-sortable:default'>Bezeichnung</th>
<th class='table-sortable:default'>Lehrform</th>
<th class='table-sortable:default'>Stg</th>
<th class='table-sortable:default'>Organisationsform</th>
<th class='table-sortable:default'>SS</th>
<th class='table-sortable:default'>ECTS</th>
<th class='table-sortable:default'>Lehre</th>
<th class='table-sortable:default'>LehreVz</th>
<th class='table-sortable:default'>Aktiv</th>
<th class='table-sortable:numeric'>Sort</th>
<th class='table-sortable:default'>Zeugnis</th>
<th class='table-sortable:default'>BA/DA</th>
<th class='table-sortable:default'>FBK</th>
<th class='table-sortable:default'>LVInfo</th>\n";
echo "</tr></thead>";
echo "<tbody>";
for($i=0;$i<$num_rows;$i++)
{
$row=pg_fetch_object($result_lv);
echo "<tr>";
//ID
echo "<td align='right'>";
if($rechte->isBerechtigt('admin'))
echo "<a href='lehrveranstaltung_details.php?lv_id=$row->lehrveranstaltung_id' target='lv_detail'>$row->lehrveranstaltung_id</a>";
else
echo "$row->lehrveranstaltung_id";
echo "</td>";
//Kurzbz
echo "<td>$row->kurzbz</td>";
//Bezeichnung
echo "<td>";
if($rechte->isBerechtigt('admin'))
echo "<a href='lehrveranstaltung_details.php?lv_id=$row->lehrveranstaltung_id' target='lv_detail'>$row->bezeichnung</a>";
else
echo $row->bezeichnung;
echo "</td>";
echo "<td>".$row->lehrform_kurzbz."</td>";
echo "<td>".$s[$row->studiengang_kz]->kurzbz."</td>";
//Organisationsform
echo "<td style='white-space:nowrap;'>";
if($rechte->isBerechtigt('admin'))
{
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&fachbereich_kurzbz=$fachbereich_kurzbz' method='POST'>";
echo "<SELECT name='orgform'>";
echo "<option value=''>-- Keine Auswahl --</option>";
$qry_orgform = "SELECT * FROM bis.tbl_orgform WHERE orgform_kurzbz NOT IN ('VBB', 'ZGS') ORDER BY orgform_kurzbz";
if($result_orgform = pg_query($conn, $qry_orgform))
{
while($row_orgform = pg_fetch_object($result_orgform))
{
if($row_orgform->orgform_kurzbz==$row->orgform_kurzbz)
$selected='selected';
else
$selected='';
echo "<option value='$row_orgform->orgform_kurzbz' $selected>$row_orgform->bezeichnung</option>";
}
}
echo "</SELECT><input type='submit' value='ok' name='submitorg'></form>";
}
else
{
echo $row->orgform_kurzbz;
}
echo "</td>";
//Semesterstunden
echo "<td>$row->semesterstunden</td>";
//ECTS
echo "<td>$row->ects</td>";
//Lehre
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&lehre=$row->lehre'><img src='../../skin/images/".($row->lehre=='t'?'true.gif':'false.gif')."'></a></td>";
//LehreVz
echo "<td style='white-space:nowrap;'>";
if($rechte->isBerechtigt('admin'))
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester' method='POST'><input type='text' value='$row->lehreverzeichnis' size='4' name='lehrevz'><input type='submit' value='ok'></form>";
else
echo $row->lehreverzeichnis;
echo "</td>";
//Aktiv
echo "<td align='center' style='white-space:nowrap;'>";
if($rechte->isBerechtigt('admin'))
echo "<a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&aktiv=$row->aktiv'><img src='../../skin/images/".($row->aktiv=='t'?'true.gif':'false.gif')."'></a>";
else
echo ($row->aktiv?'Ja':'Nein');
echo "</td>";
//Sort
echo "<td style='white-space:nowrap;'>";
echo "<div style='display: none'>$row->sort</div>";
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester' method='POST'><input type='text' value='$row->sort' size='4' name='sort'><input type='submit' value='ok'></form>";
echo "</td>";
//Zeugnis
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&zeugnis=$row->zeugnis'><img src='../../skin/images/".($row->zeugnis=='t'?'true.gif':'false.gif')."'></a></td>";
//Projektarbeit
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&projektarbeit=$row->projektarbeit'><img src='../../skin/images/".($row->projektarbeit=='t'?'true.gif':'false.gif')."'></a></td>";
//FBK
echo "<td style='white-space:nowrap;'>";
echo "<form action='".$_SERVER['PHP_SELF']."?lvid=$row->lehrveranstaltung_id&stg_kz=$stg_kz&semester=$semester&fachbereich_kurzbz=$fachbereich_kurzbz&isaktiv=$isaktiv' method='POST'><SELECT name='fbk'>";
echo "<option value=''>-- Keine Auswahl --</option>";
foreach ($fbk as $fb_uid=>$fb_k)
{
if($fb_uid==$row->koordinator)
$selected='selected';
else
$selected='';
echo "<option value='$fb_uid' $selected>".$fb_k['nachname']." ".$fb_k['vorname']."</option>";
}
echo "</SELECT><input type='submit' value='ok' name='submitfbk'></form>";
echo "</td>";
echo '<td nowrap>';
//LVInfo
$lvinfo = new lvinfo($conn);
if(!$lvinfo->exists($row->lehrveranstaltung_id))
{
echo '
<form action="'.$_SERVER['PHP_SELF'].'?lvid='.$row->lehrveranstaltung_id.'&stg_kz='.$stg_kz.'&semester='.$semester.'&fachbereich_kurzbz='.$fachbereich_kurzbz.'&isaktiv='.$isaktiv.'" method="POST">
kopieren von id: <input type="text" size="3" name="source_id" value="" />
<input type="submit" name="submitlvinfo" value="ok">
</form>';
}
else
echo 'vorhanden';
echo '</td>';
echo "</tr>\n";
}
}
else
echo "Kein Eintrag gefunden!";
?>
</tbody>
</table>
<br>
</body>
</html>
+234 -234
View File
@@ -1,235 +1,235 @@
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/projektarbeit.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/projektbetreuer.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/note.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$stg_kz = (isset($_REQUEST['stg_kz'])?$_REQUEST['stg_kz']:'');
$stsem = (isset($_REQUEST['stsem'])?$_REQUEST['stsem']:'');
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid'))
die('Sie haben keine Berechtigung für diesen Studiengang');
if($stsem=='')
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
}
if($stg_kz=='')
$stg_kz='0';
echo '<html>
<head>
<title>Lehrveranstaltung Verwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
</script>
</head>
<body class="Background_main">
<h2>Projektarbeit - Benotung</h2>
';
if(isset($_POST['savedata']))
{
$errormsg = '';
foreach($_POST as $key=>$data)
{
if(mb_strstr($key, 'note_'))
{
$id = mb_substr($key, 5);
$prj = new projektarbeit($conn);
if($prj->load($id))
{
if($prj->note!=$data)
{
$prj->note = $data;
$prj->updateamum = date('Y-m-d H:i:s');
$prj->updatevon = $user;
if(!$prj->save(false))
{
$errormsg .="Fehler beim Speichern von $prj->projektarbeit_id:".$prj->errormsg.'<br>';
}
}
}
}
}
if($errormsg!='')
{
echo $errormsg;
}
else
{
echo '<b>Daten wurden gespeichert</b><br><br>';
}
}
$noten = new note($conn);
$noten->getAll();
$stg_arr = array();
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
foreach ($stg_obj->result as $row)
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
echo '<form action="'.$_SERVER['PHP_SELF'].'" mehtod="GET">';
echo 'Studiengang: <SELECT name="stg_kz">';
if($rechte->isBerechtigt('admin', null, 'suid'))
{
foreach($stg_obj->result as $row)
$stgs[] = $row->studiengang_kz;
}
else
$stgs = $rechte->getStgKz();
foreach ($stgs as $kz)
{
if($stg_kz == $kz)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$kz.'" '.$selected.'>'.$stg_arr[$kz].'</option>';
}
echo '</SELECT>';
echo ' Studiensemester: <SELECT name="stsem">';
$stsem_obj = new studiensemester($conn);
$stsem_obj->getAll();
foreach ($stsem_obj->studiensemester as $row)
{
if($stsem == $row->studiensemester_kurzbz)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$row->studiensemester_kurzbz.'" '.$selected.'">'.$row->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>';
echo '<input type="submit" value="Anzeigen">';
echo '</form>';
echo '<br><br>';
$projekt = new projektarbeit($conn);
$projekt->getProjektarbeitStudiensemester($stg_kz, $stsem);
echo '<form action="'.$_SERVER['PHP_SELF'].'?stg_kz='.$stg_kz.'&stsem='.$stsem.'" method="POST" />';
echo "<table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'><thead><tr class='liste'>";
echo "<th class='table-sortable:default'>Student</th>
<th class='table-sortable:default'>Typ</th>
<th class='table-sortable:default'>Titel</th>
<th class='table-sortable:default'>Themenbereich</th>
<th class='table-sortable:default'>Betreuer</th>
<th class='table-sortable:default'>Beginn</th>
<th class='table-sortable:default'>Ende</th>
<th class='table-sortable:default'>Gesamtnote</th>";
echo "</tr></thead>";
echo "<tbody>";
foreach ($projekt->result as $row)
{
echo '<tr>';
$student = new student($conn);
$student->load($row->student_uid);
echo "<td nowrap>$student->nachname $student->vorname $student->titelpre $student->titelpost</td>";
echo "<td>$row->projekttyp_kurzbz</td>";
echo "<td>$row->titel".($row->titel_english!=''?'<br>'.$row->titel_english:'')."</td>";
echo "<td>$row->themenbereich</td>";
echo '<td nowrap>';
$qry = "SELECT distinct vorname, nachname, titelpre, titelpost, (SELECT uid FROM public.tbl_benutzer JOIN public.tbl_mitarbeiter on(uid=mitarbeiter_uid) WHERE person_id=tbl_person.person_id LIMIT 1) as uid, betreuerart_kurzbz FROM public.tbl_person JOIN lehre.tbl_projektbetreuer USING(person_id) WHERE projektarbeit_id='".$row->projektarbeit_id."'";
if($result_betreuer = pg_query($conn, $qry))
{
while($row_betreuer = pg_fetch_object($result_betreuer))
{
if($row_betreuer->uid!='')
echo "<a href='mailto:$row_betreuer->uid@".DOMAIN."' class='Item'>";
echo trim($row_betreuer->titelpre.' '.$row_betreuer->vorname.' '.$row_betreuer->nachname.' '.$row_betreuer->titelpost).' ('.$row_betreuer->betreuerart_kurzbz.')';
if($row_betreuer->uid!='')
echo '</a>';
echo '<br>';
}
}
echo "</td>";
echo "<td>$row->beginn</td>";
echo "<td>$row->ende</td>";
echo "<td>";
echo "<SELECT name='note_$row->projektarbeit_id'>";
echo "<OPTION value=''></OPTION>";
foreach ($noten->result as $note)
{
if($row->note==$note->note)
$selected='selected';
else
$selected='';
echo "<OPTION value='$note->note' $selected>$note->bezeichnung</OPTION>";
}
echo "</SELECT>";
echo "</td>";
echo "</tr>";
}
echo '</tbody></table>';
echo '<br><br><div align="right"><input type="submit" value="Speichern" name="savedata"/></div>';
echo '</form>';
?>
<br>
</body>
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/projektarbeit.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/projektbetreuer.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/note.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$stg_kz = (isset($_REQUEST['stg_kz'])?$_REQUEST['stg_kz']:'');
$stsem = (isset($_REQUEST['stsem'])?$_REQUEST['stsem']:'');
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid'))
die('Sie haben keine Berechtigung für diesen Studiengang');
if($stsem=='')
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
}
if($stg_kz=='')
$stg_kz='0';
echo '<html>
<head>
<title>Lehrveranstaltung Verwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
</script>
</head>
<body class="Background_main">
<h2>Projektarbeit - Benotung</h2>
';
if(isset($_POST['savedata']))
{
$errormsg = '';
foreach($_POST as $key=>$data)
{
if(mb_strstr($key, 'note_'))
{
$id = mb_substr($key, 5);
$prj = new projektarbeit($conn);
if($prj->load($id))
{
if($prj->note!=$data)
{
$prj->note = $data;
$prj->updateamum = date('Y-m-d H:i:s');
$prj->updatevon = $user;
if(!$prj->save(false))
{
$errormsg .="Fehler beim Speichern von $prj->projektarbeit_id:".$prj->errormsg.'<br>';
}
}
}
}
}
if($errormsg!='')
{
echo $errormsg;
}
else
{
echo '<b>Daten wurden gespeichert</b><br><br>';
}
}
$noten = new note($conn);
$noten->getAll();
$stg_arr = array();
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
foreach ($stg_obj->result as $row)
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
echo '<form action="'.$_SERVER['PHP_SELF'].'" mehtod="GET">';
echo 'Studiengang: <SELECT name="stg_kz">';
if($rechte->isBerechtigt('admin', null, 'suid'))
{
foreach($stg_obj->result as $row)
$stgs[] = $row->studiengang_kz;
}
else
$stgs = $rechte->getStgKz();
foreach ($stgs as $kz)
{
if($stg_kz == $kz)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$kz.'" '.$selected.'>'.$stg_arr[$kz].'</option>';
}
echo '</SELECT>';
echo ' Studiensemester: <SELECT name="stsem">';
$stsem_obj = new studiensemester($conn);
$stsem_obj->getAll();
foreach ($stsem_obj->studiensemester as $row)
{
if($stsem == $row->studiensemester_kurzbz)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$row->studiensemester_kurzbz.'" '.$selected.'">'.$row->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>';
echo '<input type="submit" value="Anzeigen">';
echo '</form>';
echo '<br><br>';
$projekt = new projektarbeit($conn);
$projekt->getProjektarbeitStudiensemester($stg_kz, $stsem);
echo '<form action="'.$_SERVER['PHP_SELF'].'?stg_kz='.$stg_kz.'&stsem='.$stsem.'" method="POST" />';
echo "<table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'><thead><tr class='liste'>";
echo "<th class='table-sortable:default'>Student</th>
<th class='table-sortable:default'>Typ</th>
<th class='table-sortable:default'>Titel</th>
<th class='table-sortable:default'>Themenbereich</th>
<th class='table-sortable:default'>Betreuer</th>
<th class='table-sortable:default'>Beginn</th>
<th class='table-sortable:default'>Ende</th>
<th class='table-sortable:default'>Gesamtnote</th>";
echo "</tr></thead>";
echo "<tbody>";
foreach ($projekt->result as $row)
{
echo '<tr>';
$student = new student($conn);
$student->load($row->student_uid);
echo "<td nowrap>$student->nachname $student->vorname $student->titelpre $student->titelpost</td>";
echo "<td>$row->projekttyp_kurzbz</td>";
echo "<td>$row->titel".($row->titel_english!=''?'<br>'.$row->titel_english:'')."</td>";
echo "<td>$row->themenbereich</td>";
echo '<td nowrap>';
$qry = "SELECT distinct vorname, nachname, titelpre, titelpost, (SELECT uid FROM public.tbl_benutzer JOIN public.tbl_mitarbeiter on(uid=mitarbeiter_uid) WHERE person_id=tbl_person.person_id LIMIT 1) as uid, betreuerart_kurzbz FROM public.tbl_person JOIN lehre.tbl_projektbetreuer USING(person_id) WHERE projektarbeit_id='".$row->projektarbeit_id."'";
if($result_betreuer = pg_query($conn, $qry))
{
while($row_betreuer = pg_fetch_object($result_betreuer))
{
if($row_betreuer->uid!='')
echo "<a href='mailto:$row_betreuer->uid@".DOMAIN."' class='Item'>";
echo trim($row_betreuer->titelpre.' '.$row_betreuer->vorname.' '.$row_betreuer->nachname.' '.$row_betreuer->titelpost).' ('.$row_betreuer->betreuerart_kurzbz.')';
if($row_betreuer->uid!='')
echo '</a>';
echo '<br>';
}
}
echo "</td>";
echo "<td>$row->beginn</td>";
echo "<td>$row->ende</td>";
echo "<td>";
echo "<SELECT name='note_$row->projektarbeit_id'>";
echo "<OPTION value=''></OPTION>";
foreach ($noten->result as $note)
{
if($row->note==$note->note)
$selected='selected';
else
$selected='';
echo "<OPTION value='$note->note' $selected>$note->bezeichnung</OPTION>";
}
echo "</SELECT>";
echo "</td>";
echo "</tr>";
}
echo '</tbody></table>';
echo '<br><br><div align="right"><input type="submit" value="Speichern" name="savedata"/></div>';
echo '</form>';
?>
<br>
</body>
</html>
+179 -179
View File
@@ -1,180 +1,180 @@
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/betriebsmittelperson.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
//Berechtigung pruefen
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin',0) && !$rechte->isBerechtigt('support'))
die('Sie haben keine Berechtigung fuer diese Seite');
echo '<html>
<head>
<title>Betriebsmittel</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function confdel()
{
return confirm("Wollen Sie diesen Eintrag wirklich loeschen");
}
</script>
</head>
<body class="Background_main">
<h2>Betriebsmittel</h2>
';
$search = (isset($_REQUEST['search'])?$_REQUEST['search']:'');
//Loeschen eines Datensatzes
if(isset($_GET['type']) && $_GET['type']=='delete')
{
if(isset($_GET['betriebsmittel_id']) && is_numeric($_GET['betriebsmittel_id'])
&& isset($_GET['person_id']) && is_numeric($_GET['person_id']))
{
$bmp = new betriebsmittelperson($conn);
if($bmp->delete($_GET['betriebsmittel_id'], $_GET['person_id']))
echo '<b>Datensatz wurde geloescht</b>';
else
echo '<b>Fehler beim Loeschen des Datensatzes: '.$bmp->errormsg.'</b>';
}
else
{
die('Fehlerhafte Parameteruebergabe');
}
}
echo '<table width="100%"><tr><td>
<form method="POST" enctype="multipart/form-data" accept-charset="UTF-8" action="'. $_SERVER['PHP_SELF'].'">
Nummer/Uid: <input type="text" name="search" value="'.$search.'">&nbsp;
<input type="submit" value="Suchen" name="suche">
</form></td><td align="right"><a href="betriebsmitteldetail.php" target="detail">NEU</a></td></tr></table><br><br>';
if($search!='')
{
//Suche in Datenbank
$qry = "SELECT distinct tbl_betriebsmittelperson.*, tbl_betriebsmittel.*, tbl_person.*, tbl_betriebsmittelperson.updateamum as updateamum, tbl_betriebsmittelperson.updatevon as updatevon FROM
public.tbl_betriebsmittelperson
JOIN public.tbl_betriebsmittel USING(betriebsmittel_id)
JOIN public.tbl_person USING(person_id)
LEFT JOIN public.tbl_benutzer USING(person_id)
WHERE nummer='".addslashes($search)."' OR uid='".addslashes($search)."'";
if($result = pg_query($conn, $qry))
{
echo "<b>Datenbank Result</b><br><table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>";
echo "<th class='table-sortable:default'>Nummer</th>
<th class='table-sortable:default'>Typ</th>
<th class='table-sortable:default'>Kaution</th>
<th class='table-sortable:default'>Ausgegeben</th>
<th class='table-sortable:default'>Retour</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>UID</th>
<th class='table-sortable:default'>UpdateAmUm</th>
<th class='table-sortable:default'>UpdateVon</th>
<th class='table-sortable:default' colspan='2'>Aktion</th>";
echo '</tr></thead>';
echo '<tbody>';
while($row = pg_fetch_object($result))
{
echo "<tr>";
echo "<td>$row->nummer</td>";
echo "<td>$row->betriebsmitteltyp</td>";
echo "<td>$row->kaution</td>";
echo "<td>$row->ausgegebenam</td>";
echo "<td>$row->retouram</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->nachname</td>";
echo "<td>";
//Alle UIDs zu dieser Person suchen
$qry_uid = "SELECT uid FROM public.tbl_benutzer WHERE person_id='$row->person_id'";
if($result_uid = pg_query($conn, $qry_uid))
{
while($row_uid = pg_fetch_object($result_uid))
{
echo "<a href='personen_details.php?uid=$row_uid->uid' target='_top'>$row_uid->uid</a><br>";
}
}
echo "</td>";
echo "<td>$row->updateamum</td>";
echo "<td>$row->updatevon</td>";
echo "<td><a href='betriebsmitteldetail.php?betriebsmittel_id=$row->betriebsmittel_id&person_id=$row->person_id' target='detail'>edit</a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?search=$search&type=delete&betriebsmittel_id=$row->betriebsmittel_id&person_id=$row->person_id' onclick='return confdel()'>delete</a></td>";
echo "</tr>";
}
echo '</tbody>';
echo '</table>';
}
//Suche im LDAP
// LDAP Verbindung herstellen
$ds=ldap_connect(LDAP_SERVER);
if ($ds)
$r=ldap_bind($ds); // this is an "anonymous" bind, typically
else
echo "<h4>Unable to connect to LDAP server</h4>";
if(is_numeric($search))
$sr=ldap_search($ds, "ou=People, dc=technikum-wien, dc=at", "departmentNumber=".$search);
else
$sr=ldap_search($ds, "ou=People, dc=technikum-wien, dc=at", "uid=".$search);
$info = ldap_get_entries($ds, $sr);
echo "<br><b>LDAP Result</b><br><table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>";
echo "<th class='table-sortable:default'>Kartennummer</th>
<th class='table-sortable:default'>UID</th>
<th class='table-sortable:default'>Name</th>";
echo '</tr></thead>';
echo '<tbody>';
//Kartennummer
echo '<tr><td>'.(isset($info[0]['departmentnumber'][0])?$info[0]['departmentnumber'][0]:'').'</td>';
//UID
echo '<td>'.(isset($info[0]['uid'][0])?$info[0]['uid'][0]:'').'</td>';
//Gesamter Name
echo '<td>'.(isset($info[0]['cn'][0])?$info[0]['cn'][0]:'').'</td></tr>';
echo '</tbody></table>';
}
?>
</body>
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/betriebsmittelperson.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
//Berechtigung pruefen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin',0) && !$rechte->isBerechtigt('support'))
die('Sie haben keine Berechtigung fuer diese Seite');
echo '<html>
<head>
<title>Betriebsmittel</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function confdel()
{
return confirm("Wollen Sie diesen Eintrag wirklich loeschen");
}
</script>
</head>
<body class="Background_main">
<h2>Betriebsmittel</h2>
';
$search = (isset($_REQUEST['search'])?$_REQUEST['search']:'');
//Loeschen eines Datensatzes
if(isset($_GET['type']) && $_GET['type']=='delete')
{
if(isset($_GET['betriebsmittel_id']) && is_numeric($_GET['betriebsmittel_id'])
&& isset($_GET['person_id']) && is_numeric($_GET['person_id']))
{
$bmp = new betriebsmittelperson($conn);
if($bmp->delete($_GET['betriebsmittel_id'], $_GET['person_id']))
echo '<b>Datensatz wurde geloescht</b>';
else
echo '<b>Fehler beim Loeschen des Datensatzes: '.$bmp->errormsg.'</b>';
}
else
{
die('Fehlerhafte Parameteruebergabe');
}
}
echo '<table width="100%"><tr><td>
<form method="POST" enctype="multipart/form-data" accept-charset="UTF-8" action="'. $_SERVER['PHP_SELF'].'">
Nummer/Uid: <input type="text" name="search" value="'.$search.'">&nbsp;
<input type="submit" value="Suchen" name="suche">
</form></td><td align="right"><a href="betriebsmitteldetail.php" target="detail">NEU</a></td></tr></table><br><br>';
if($search!='')
{
//Suche in Datenbank
$qry = "SELECT distinct tbl_betriebsmittelperson.*, tbl_betriebsmittel.*, tbl_person.*, tbl_betriebsmittelperson.updateamum as updateamum, tbl_betriebsmittelperson.updatevon as updatevon FROM
public.tbl_betriebsmittelperson
JOIN public.tbl_betriebsmittel USING(betriebsmittel_id)
JOIN public.tbl_person USING(person_id)
LEFT JOIN public.tbl_benutzer USING(person_id)
WHERE nummer='".addslashes($search)."' OR uid='".addslashes($search)."'";
if($result = pg_query($conn, $qry))
{
echo "<b>Datenbank Result</b><br><table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>";
echo "<th class='table-sortable:default'>Nummer</th>
<th class='table-sortable:default'>Typ</th>
<th class='table-sortable:default'>Kaution</th>
<th class='table-sortable:default'>Ausgegeben</th>
<th class='table-sortable:default'>Retour</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>UID</th>
<th class='table-sortable:default'>UpdateAmUm</th>
<th class='table-sortable:default'>UpdateVon</th>
<th class='table-sortable:default' colspan='2'>Aktion</th>";
echo '</tr></thead>';
echo '<tbody>';
while($row = pg_fetch_object($result))
{
echo "<tr>";
echo "<td>$row->nummer</td>";
echo "<td>$row->betriebsmitteltyp</td>";
echo "<td>$row->kaution</td>";
echo "<td>$row->ausgegebenam</td>";
echo "<td>$row->retouram</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->nachname</td>";
echo "<td>";
//Alle UIDs zu dieser Person suchen
$qry_uid = "SELECT uid FROM public.tbl_benutzer WHERE person_id='$row->person_id'";
if($result_uid = pg_query($conn, $qry_uid))
{
while($row_uid = pg_fetch_object($result_uid))
{
echo "<a href='personen_details.php?uid=$row_uid->uid' target='_top'>$row_uid->uid</a><br>";
}
}
echo "</td>";
echo "<td>$row->updateamum</td>";
echo "<td>$row->updatevon</td>";
echo "<td><a href='betriebsmitteldetail.php?betriebsmittel_id=$row->betriebsmittel_id&person_id=$row->person_id' target='detail'>edit</a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?search=$search&type=delete&betriebsmittel_id=$row->betriebsmittel_id&person_id=$row->person_id' onclick='return confdel()'>delete</a></td>";
echo "</tr>";
}
echo '</tbody>';
echo '</table>';
}
//Suche im LDAP
// LDAP Verbindung herstellen
$ds=ldap_connect(LDAP_SERVER);
if ($ds)
$r=ldap_bind($ds); // this is an "anonymous" bind, typically
else
echo "<h4>Unable to connect to LDAP server</h4>";
if(is_numeric($search))
$sr=ldap_search($ds, "ou=People, dc=technikum-wien, dc=at", "departmentNumber=".$search);
else
$sr=ldap_search($ds, "ou=People, dc=technikum-wien, dc=at", "uid=".$search);
$info = ldap_get_entries($ds, $sr);
echo "<br><b>LDAP Result</b><br><table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>";
echo "<th class='table-sortable:default'>Kartennummer</th>
<th class='table-sortable:default'>UID</th>
<th class='table-sortable:default'>Name</th>";
echo '</tr></thead>';
echo '<tbody>';
//Kartennummer
echo '<tr><td>'.(isset($info[0]['departmentnumber'][0])?$info[0]['departmentnumber'][0]:'').'</td>';
//UID
echo '<td>'.(isset($info[0]['uid'][0])?$info[0]['uid'][0]:'').'</td>';
//Gesamter Name
echo '<td>'.(isset($info[0]['cn'][0])?$info[0]['cn'][0]:'').'</td></tr>';
echo '</tbody></table>';
}
?>
</body>
</html>
+253 -253
View File
@@ -1,254 +1,254 @@
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/betriebsmittelperson.class.php');
require_once('../../include/betriebsmittel.class.php');
require_once('../../include/datum.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
echo '<html>
<head>
<title>Betriebsmittel Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
</head>
<body class="Background_main">
<h2>Details</h2>
';
if(!$rechte->isBerechtigt('admin', 0, 'suid') && !$rechte->isBerechtigt('support', null, 'suid'))
die('Sie haben keine Berechtigung fuer diese Seite');
$betriebsmittel_id = (isset($_GET['betriebsmittel_id'])?$_GET['betriebsmittel_id']:'');
$person_id = (isset($_REQUEST['person_id'])?$_REQUEST['person_id']:'');
$error = false;
//Speichern der Daten
if(isset($_POST['save']))
{
$bm = new betriebsmittel($conn);
//Nachschauen ob dieses Betriebsmittel schon existiert
if($bm->getBetriebsmittel($_POST['betriebsmitteltyp'],$_POST['nummerold']))
{
if(count($bm->result)>0)
{
//Wenn ein Eintrag gefunden wurde, dann wird die Beschreibung aktualisiert
if($bm->load($bm->result[0]->betriebsmittel_id))
{
$bm->beschreibung = $_POST['beschreibung'];
$bm->nummer = $_POST['nummer'];
$bm->updatevon = $user;
$bm->updateamum = date('Y-m-d H:i:s');
if(!$bm->save(false))
{
$return = false;
$error = true;
echo 'Fehler beim Speichern des Betriebsmittels';
}
else
{
$betriebsmittel_id = $bm->betriebsmittel_id;
}
}
else
{
$return = false;
$error = true;
echo 'Gefundener Eintrag konnte nicht geladen werden!?!?';
}
}
else
{
//Wenn kein Eintrag gefunden wurde, dann wird ein neuer Eintrag angelegt
$bm->betriebsmitteltyp = $_POST['betriebsmitteltyp'];
$bm->nummer = $_POST['nummer'];
$bm->beschreibung = $_POST['beschreibung'];
$bm->reservieren = false;
$bm->ort_kurzbz = null;
$bm->insertamum = date('Y-m-d H:i:s');
$bm->insertvon = $user;
if($bm->save(true))
{
$betriebsmittel_id = $bm->betriebsmittel_id;
}
else
{
$error = true;
$return = false;
echo 'Fehler beim Anlegen des Betriebsmittels';
}
}
//Zuordnung Betriebsmittel-Person anlegen
$bmp = new betriebsmittelperson($conn);
if($_POST['new']=='true')
{
if($bmp->load($betriebsmittel_id, $_POST['person_id']))
{
$bmp->updateamum = date('Y-m-d H:i:s');
$bmp->updatevon = $user;
$bmp->new = false;
}
else
{
$error = true;
$return = false;
echo 'Fehler beim Laden der Betriebmittelperson Zuordnung';
}
}
else
{
$bmp->insertamum = date('Y-m-d H:i:s');
$bmp->insertvon = $user;
$bmp->new = true;
}
if(!$error)
{
$bmp->person_id = $_POST['person_id'];
$bmp->betriebsmittel_id=$betriebsmittel_id;
$bmp->anmerkung = $_POST['anmerkung'];
$bmp->kaution = trim(mb_eregi_replace(',','.',$_POST['kaution']));
$bmp->ausgegebenam = $_POST['ausgegebenam'];
$bmp->retouram = $_POST['retouram'];
if($bmp->save())
{
echo 'Daten wurden erfolgreich gespeichert';
}
else
{
echo $bmp->errormsg;
}
}
}
else
{
echo 'Fehler:'.$bm->errormsg;
}
}
$bm = new betriebsmittelperson($conn);
//Laden der Daten
$new = 'false';
if($betriebsmittel_id!='' && $person_id!='')
{
if(!$bm->load($betriebsmittel_id, $person_id))
die('betriebsmittel konnte nicht geladen werden');
else
$new ='true';
}
else
{
$bm->kaution = '0.0';
$bm->ausgegebenam = date('Y-m-d');
$bm->betriebsmitteltyp = 'Zutrittskarte';
}
$nummer = $bm->nummer;
$beschreibung = $bm->beschreibung;
$betriebsmitteltyp =$bm->betriebsmitteltyp;
$kaution = $bm->kaution;
$anmerkung = $bm->anmerkung;
$ausgegebenam = ($bm->ausgegebenam!=''?date('d.m.Y', $datum_obj->mktime_fromdate($bm->ausgegebenam)):'');
$retouram = ($bm->retouram!=''?date('d.m.Y', $datum_obj->mktime_fromdate($bm->retouram)):'');
//Formular
echo '<form accept-charset="UTF-8" method="POST" action="'.$_SERVER['PHP_SELF'].'?betriebsmittel_id='.$betriebsmittel_id.'&person_id='.$person_id.'">';
echo '<input type="hidden" name="new" value="'.$new.'">';
echo '<table><tr><td valign="top">';
echo '<table>';
//Person
echo '<tr><td>Person</td><td><SELECT name="person_id">';
$qry = "SELECT distinct tbl_person.* FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($person_id == $row->person_id)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$row->person_id.'" '.$selected.'>'.$row->nachname.' '.$row->vorname.' '.$row->titelpre.' '.$row->titelpost.'</option>';
}
}
echo '</SELECT></td></tr>';
//TYP
echo '<tr><td>Typ</td><td><SELECT name="betriebsmitteltyp">';
$qry = "SELECT * FROM public.tbl_betriebsmitteltyp ORDER BY betriebsmitteltyp";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($row->betriebsmitteltyp==$betriebsmitteltyp)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row->betriebsmitteltyp' $selected>$row->betriebsmitteltyp</option>";
}
}
echo '</SELECT></td></tr>';
//</table></td><td valign="top"><table>';
//Nummer
echo '<tr><td>Nummer</td><td><input type="text" name="nummer" value="'.$nummer.'"><input type="hidden" name="nummerold" value="'.$nummer.'"></td></tr>';
//Beschreibung
echo '<tr><td>Beschreibung</td><td><textarea name="beschreibung">'.$beschreibung.'</textarea></td></tr>';
echo '</table>';
echo '</td><td valign="top">';
//Kaution
echo '<table><tr><td>Kaution</td><td><input type="text" name="kaution" value="'.$kaution.'"></td></tr>';
//Anmerkung
echo '<tr><td>Anmerkung</td><td><textarea name="anmerkung">'.$anmerkung.'</textarea></td></tr>';
//echo '</table></td><td valign="top"><table>';
//Ausgegeben am
echo '<tr><td>Ausgegeben am</td><td><input type="text" name="ausgegebenam" value="'.$ausgegebenam.'"></td></tr>';
//Retour am
echo '<tr><td>Retour am</td><td><input type="text" name="retouram" value="'.$retouram.'"></td></tr>';
echo '</table>';
echo '</td></tr>';
echo '<tr><td></td><td></td><td></td><td align="right"><input type="submit" name="save" value="Speichern"></td></tr>';
echo '</table>';
echo '</form>';
?>
</body>
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/betriebsmittelperson.class.php');
require_once('../../include/betriebsmittel.class.php');
require_once('../../include/datum.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
echo '<html>
<head>
<title>Betriebsmittel Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
</head>
<body class="Background_main">
<h2>Details</h2>
';
if(!$rechte->isBerechtigt('admin', 0, 'suid') && !$rechte->isBerechtigt('support', null, 'suid'))
die('Sie haben keine Berechtigung fuer diese Seite');
$betriebsmittel_id = (isset($_GET['betriebsmittel_id'])?$_GET['betriebsmittel_id']:'');
$person_id = (isset($_REQUEST['person_id'])?$_REQUEST['person_id']:'');
$error = false;
//Speichern der Daten
if(isset($_POST['save']))
{
$bm = new betriebsmittel($conn);
//Nachschauen ob dieses Betriebsmittel schon existiert
if($bm->getBetriebsmittel($_POST['betriebsmitteltyp'],$_POST['nummerold']))
{
if(count($bm->result)>0)
{
//Wenn ein Eintrag gefunden wurde, dann wird die Beschreibung aktualisiert
if($bm->load($bm->result[0]->betriebsmittel_id))
{
$bm->beschreibung = $_POST['beschreibung'];
$bm->nummer = $_POST['nummer'];
$bm->updatevon = $user;
$bm->updateamum = date('Y-m-d H:i:s');
if(!$bm->save(false))
{
$return = false;
$error = true;
echo 'Fehler beim Speichern des Betriebsmittels';
}
else
{
$betriebsmittel_id = $bm->betriebsmittel_id;
}
}
else
{
$return = false;
$error = true;
echo 'Gefundener Eintrag konnte nicht geladen werden!?!?';
}
}
else
{
//Wenn kein Eintrag gefunden wurde, dann wird ein neuer Eintrag angelegt
$bm->betriebsmitteltyp = $_POST['betriebsmitteltyp'];
$bm->nummer = $_POST['nummer'];
$bm->beschreibung = $_POST['beschreibung'];
$bm->reservieren = false;
$bm->ort_kurzbz = null;
$bm->insertamum = date('Y-m-d H:i:s');
$bm->insertvon = $user;
if($bm->save(true))
{
$betriebsmittel_id = $bm->betriebsmittel_id;
}
else
{
$error = true;
$return = false;
echo 'Fehler beim Anlegen des Betriebsmittels';
}
}
//Zuordnung Betriebsmittel-Person anlegen
$bmp = new betriebsmittelperson($conn);
if($_POST['new']=='true')
{
if($bmp->load($betriebsmittel_id, $_POST['person_id']))
{
$bmp->updateamum = date('Y-m-d H:i:s');
$bmp->updatevon = $user;
$bmp->new = false;
}
else
{
$error = true;
$return = false;
echo 'Fehler beim Laden der Betriebmittelperson Zuordnung';
}
}
else
{
$bmp->insertamum = date('Y-m-d H:i:s');
$bmp->insertvon = $user;
$bmp->new = true;
}
if(!$error)
{
$bmp->person_id = $_POST['person_id'];
$bmp->betriebsmittel_id=$betriebsmittel_id;
$bmp->anmerkung = $_POST['anmerkung'];
$bmp->kaution = trim(mb_eregi_replace(',','.',$_POST['kaution']));
$bmp->ausgegebenam = $_POST['ausgegebenam'];
$bmp->retouram = $_POST['retouram'];
if($bmp->save())
{
echo 'Daten wurden erfolgreich gespeichert';
}
else
{
echo $bmp->errormsg;
}
}
}
else
{
echo 'Fehler:'.$bm->errormsg;
}
}
$bm = new betriebsmittelperson($conn);
//Laden der Daten
$new = 'false';
if($betriebsmittel_id!='' && $person_id!='')
{
if(!$bm->load($betriebsmittel_id, $person_id))
die('betriebsmittel konnte nicht geladen werden');
else
$new ='true';
}
else
{
$bm->kaution = '0.0';
$bm->ausgegebenam = date('Y-m-d');
$bm->betriebsmitteltyp = 'Zutrittskarte';
}
$nummer = $bm->nummer;
$beschreibung = $bm->beschreibung;
$betriebsmitteltyp =$bm->betriebsmitteltyp;
$kaution = $bm->kaution;
$anmerkung = $bm->anmerkung;
$ausgegebenam = ($bm->ausgegebenam!=''?date('d.m.Y', $datum_obj->mktime_fromdate($bm->ausgegebenam)):'');
$retouram = ($bm->retouram!=''?date('d.m.Y', $datum_obj->mktime_fromdate($bm->retouram)):'');
//Formular
echo '<form accept-charset="UTF-8" method="POST" action="'.$_SERVER['PHP_SELF'].'?betriebsmittel_id='.$betriebsmittel_id.'&person_id='.$person_id.'">';
echo '<input type="hidden" name="new" value="'.$new.'">';
echo '<table><tr><td valign="top">';
echo '<table>';
//Person
echo '<tr><td>Person</td><td><SELECT name="person_id">';
$qry = "SELECT distinct tbl_person.* FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($person_id == $row->person_id)
$selected = 'selected';
else
$selected = '';
echo '<option value="'.$row->person_id.'" '.$selected.'>'.$row->nachname.' '.$row->vorname.' '.$row->titelpre.' '.$row->titelpost.'</option>';
}
}
echo '</SELECT></td></tr>';
//TYP
echo '<tr><td>Typ</td><td><SELECT name="betriebsmitteltyp">';
$qry = "SELECT * FROM public.tbl_betriebsmitteltyp ORDER BY betriebsmitteltyp";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($row->betriebsmitteltyp==$betriebsmitteltyp)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row->betriebsmitteltyp' $selected>$row->betriebsmitteltyp</option>";
}
}
echo '</SELECT></td></tr>';
//</table></td><td valign="top"><table>';
//Nummer
echo '<tr><td>Nummer</td><td><input type="text" name="nummer" value="'.$nummer.'"><input type="hidden" name="nummerold" value="'.$nummer.'"></td></tr>';
//Beschreibung
echo '<tr><td>Beschreibung</td><td><textarea name="beschreibung">'.$beschreibung.'</textarea></td></tr>';
echo '</table>';
echo '</td><td valign="top">';
//Kaution
echo '<table><tr><td>Kaution</td><td><input type="text" name="kaution" value="'.$kaution.'"></td></tr>';
//Anmerkung
echo '<tr><td>Anmerkung</td><td><textarea name="anmerkung">'.$anmerkung.'</textarea></td></tr>';
//echo '</table></td><td valign="top"><table>';
//Ausgegeben am
echo '<tr><td>Ausgegeben am</td><td><input type="text" name="ausgegebenam" value="'.$ausgegebenam.'"></td></tr>';
//Retour am
echo '<tr><td>Retour am</td><td><input type="text" name="retouram" value="'.$retouram.'"></td></tr>';
echo '</table>';
echo '</td></tr>';
echo '<tr><td></td><td></td><td></td><td align="right"><input type="submit" name="save" value="Speichern"></td></tr>';
echo '</table>';
echo '</form>';
?>
</body>
</html>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+173 -173
View File
@@ -1,174 +1,174 @@
<?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('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/fachbereich.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
$fb_obj = new fachbereich($conn);
$fb_obj->getAll();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen(get_uid());
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Institutsliste</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
<h2>Liste der MitarbeiterInnen der Institute an der Fachhochschule Technikum Wien</h2>';
$stsem = new studiensemester($conn);
$ws = $stsem->getNearest(1);
$ss = $stsem->getNearest(2);
if($rechte->isBerechtigt('admin', 0) || $rechte->isBerechtigt('mitarbeiter', 0))
$where = '';
else
{
$fb = $rechte->getFbKz();
if(count($fb)>0)
{
$where = " AND EXISTS (SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE
tbl_lehreinheit.studiensemester_kurzbz in('$ws','$ss') AND mitarbeiter_uid=tbl_mitarbeiter.mitarbeiter_uid AND
fachbereich_kurzbz IN(";
foreach ($fb as $fachbereich_kurzbz)
{
$where.="'$fachbereich_kurzbz',";
}
$where.="''))";
}
else
die('Sie haben keine Berechtigung fuer diese Seite');
}
//Alle aktiven Mitarbeiter holen mit den ALVS-Stunden und der Hauptinstitutszuteilung
$qry = "SELECT
vorname, nachname, fixangestellt, mitarbeiter_uid, kompetenzen,
(
SELECT
sum(semesterstunden)
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
mitarbeiter_uid=tbl_mitarbeiter.mitarbeiter_uid AND
studiensemester_kurzbz='$ws'
) as lvs_wintersemester,
(
SELECT
sum(semesterstunden)
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
mitarbeiter_uid=tbl_mitarbeiter.mitarbeiter_uid AND
studiensemester_kurzbz='$ss'
) as lvs_sommersemester,
(
SELECT
fachbereich_kurzbz
FROM
public.tbl_benutzerfunktion
WHERE
uid=tbl_mitarbeiter.mitarbeiter_uid AND
funktion_kurzbz='oezuordnung'
LIMIT 1
) as hauptzuteilung
FROM
public.tbl_mitarbeiter JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
JOIN public.tbl_person USING(person_id)
WHERE tbl_benutzer.aktiv $where";
if($result = pg_query($conn, $qry))
{
echo "<br><br><table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th colspan='2'>ALVS</th>
<th></th>
<th colspan='2'>Institute</th>
</tr>
<tr class='liste'>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>Fix / Frei</th>
<th class='table-sortable:default'>Kompetenzen</th>
<th class='table-sortable:numeric'>$ws</th>
<th class='table-sortable:numeric'>$ss</th>
<th class='table-sortable:default'>Studiengang</th>
<th class='table-sortable:default'>Hauptzuteilung</th>
<th class='table-sortable:default'>Sonstige</th>
</tr>
</thead>
<tbody>";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>".($row->fixangestellt=='t'?'fix':'frei')."</td>";
echo "<td>$row->kompetenzen</td>";
echo "<td>$row->lvs_wintersemester</td>";
echo "<td>$row->lvs_sommersemester</td>";
echo '<td>';
$qry = "SELECT distinct studiengang_kz FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE mitarbeiter_uid='$row->mitarbeiter_uid' AND studiensemester_kurzbz in('$ss', '$ws')";
$text='';
if($result_stg = pg_query($conn, $qry))
while($row_stg = pg_fetch_object($result_stg))
$text.= $stg_obj->kuerzel_arr[$row_stg->studiengang_kz].', ';
echo mb_substr($text, 0, mb_strlen($text)-2);
echo '</td>';
echo "<td>".(isset($fb_obj->bezeichnung_arr[$row->hauptzuteilung])?$fb_obj->bezeichnung_arr[$row->hauptzuteilung]:'')."</td>";
echo "<td>";
$qry = "SELECT distinct fachbereich_kurzbz FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE mitarbeiter_uid='$row->mitarbeiter_uid' AND studiensemester_kurzbz in('$ss', '$ws')";
$text='';
if($result_fb = pg_query($conn, $qry))
while($row_fb = pg_fetch_object($result_fb))
$text.= $fb_obj->bezeichnung_arr[$row_fb->fachbereich_kurzbz].', ';
echo mb_substr($text, 0, mb_strlen($text)-2);
echo "</td>";
echo '</tr>';
}
echo '</tbody></table>';
}
echo '</body></html>';
<?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('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/fachbereich.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
$fb_obj = new fachbereich($conn);
$fb_obj->getAll();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen(get_uid());
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Institutsliste</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
<h2>Liste der MitarbeiterInnen der Institute an der Fachhochschule Technikum Wien</h2>';
$stsem = new studiensemester($conn);
$ws = $stsem->getNearest(1);
$ss = $stsem->getNearest(2);
if($rechte->isBerechtigt('admin', 0) || $rechte->isBerechtigt('mitarbeiter', 0))
$where = '';
else
{
$fb = $rechte->getFbKz();
if(count($fb)>0)
{
$where = " AND EXISTS (SELECT * FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE
tbl_lehreinheit.studiensemester_kurzbz in('$ws','$ss') AND mitarbeiter_uid=tbl_mitarbeiter.mitarbeiter_uid AND
fachbereich_kurzbz IN(";
foreach ($fb as $fachbereich_kurzbz)
{
$where.="'$fachbereich_kurzbz',";
}
$where.="''))";
}
else
die('Sie haben keine Berechtigung fuer diese Seite');
}
//Alle aktiven Mitarbeiter holen mit den ALVS-Stunden und der Hauptinstitutszuteilung
$qry = "SELECT
vorname, nachname, fixangestellt, mitarbeiter_uid, kompetenzen,
(
SELECT
sum(semesterstunden)
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
mitarbeiter_uid=tbl_mitarbeiter.mitarbeiter_uid AND
studiensemester_kurzbz='$ws'
) as lvs_wintersemester,
(
SELECT
sum(semesterstunden)
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
WHERE
mitarbeiter_uid=tbl_mitarbeiter.mitarbeiter_uid AND
studiensemester_kurzbz='$ss'
) as lvs_sommersemester,
(
SELECT
fachbereich_kurzbz
FROM
public.tbl_benutzerfunktion
WHERE
uid=tbl_mitarbeiter.mitarbeiter_uid AND
funktion_kurzbz='oezuordnung'
LIMIT 1
) as hauptzuteilung
FROM
public.tbl_mitarbeiter JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
JOIN public.tbl_person USING(person_id)
WHERE tbl_benutzer.aktiv $where";
if($result = pg_query($conn, $qry))
{
echo "<br><br><table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th colspan='2'>ALVS</th>
<th></th>
<th colspan='2'>Institute</th>
</tr>
<tr class='liste'>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>Fix / Frei</th>
<th class='table-sortable:default'>Kompetenzen</th>
<th class='table-sortable:numeric'>$ws</th>
<th class='table-sortable:numeric'>$ss</th>
<th class='table-sortable:default'>Studiengang</th>
<th class='table-sortable:default'>Hauptzuteilung</th>
<th class='table-sortable:default'>Sonstige</th>
</tr>
</thead>
<tbody>";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>".($row->fixangestellt=='t'?'fix':'frei')."</td>";
echo "<td>$row->kompetenzen</td>";
echo "<td>$row->lvs_wintersemester</td>";
echo "<td>$row->lvs_sommersemester</td>";
echo '<td>';
$qry = "SELECT distinct studiengang_kz FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) WHERE mitarbeiter_uid='$row->mitarbeiter_uid' AND studiensemester_kurzbz in('$ss', '$ws')";
$text='';
if($result_stg = pg_query($conn, $qry))
while($row_stg = pg_fetch_object($result_stg))
$text.= $stg_obj->kuerzel_arr[$row_stg->studiengang_kz].', ';
echo mb_substr($text, 0, mb_strlen($text)-2);
echo '</td>';
echo "<td>".(isset($fb_obj->bezeichnung_arr[$row->hauptzuteilung])?$fb_obj->bezeichnung_arr[$row->hauptzuteilung]:'')."</td>";
echo "<td>";
$qry = "SELECT distinct fachbereich_kurzbz FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE mitarbeiter_uid='$row->mitarbeiter_uid' AND studiensemester_kurzbz in('$ss', '$ws')";
$text='';
if($result_fb = pg_query($conn, $qry))
while($row_fb = pg_fetch_object($result_fb))
$text.= $fb_obj->bezeichnung_arr[$row_fb->fachbereich_kurzbz].', ';
echo mb_substr($text, 0, mb_strlen($text)-2);
echo "</td>";
echo '</tr>';
}
echo '</tbody></table>';
}
echo '</body></html>';
?>
+432 -432
View File
@@ -1,433 +1,433 @@
<?php
/* Copyright (C) 2007 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/benutzerberechtigung.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/nation.class.php');
require_once('../../include/firma.class.php');
require_once('../../include/kontakt.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die('Fehler beim Herstellen der DB Connection');
$user=get_uid();
$datum_obj = new datum();
#gss loadVariables($conn, $user);
loadVariables($user);
?>
<!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=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<script language="Javascript">
function confdel()
{
return confirm('Wollen Sie diesen Datensatz wirklich loeschen?');
}
</script>
<style>
td
{
font-size: small;
}
</style>
</head>
<body>
<?php
//Berechtigung pruefen
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('preinteressent'))
die('Sie haben keine Berechtigung fuer diese Seite');
$person_id = (isset($_GET['person_id'])?$_GET['person_id']:'');
$adresse_id = (isset($_REQUEST['adresse_id'])?$_REQUEST['adresse_id']:'');
$kontakt_id = (isset($_REQUEST['kontakt_id'])?$_REQUEST['kontakt_id']:'');
$errormsg = '';
$error = false;
$adresstyp = (isset($_POST['adresstyp'])?$_POST['adresstyp']:'');
$strasse = (isset($_POST['strasse'])?$_POST['strasse']:'');
$plz = (isset($_POST['plz'])?$_POST['plz']:'');
$ort = (isset($_POST['ort'])?$_POST['ort']:'');
$gemeinde = (isset($_POST['gemeinde'])?$_POST['gemeinde']:'');
$nation = (isset($_POST['nation'])?$_POST['nation']:'');
$heimatadresse = (isset($_POST['heimatadresse'])?true:false);
$zustelladresse = (isset($_POST['zustelladresse'])?true:false);
$firma_id = (isset($_POST['firma'])?$_POST['firma']:'');
$zustellung = (isset($_POST['zustellung'])?true:false);
$anmerkung = (isset($_POST['anmerkung'])?$_POST['anmerkung']:false);
$kontakt = (isset($_POST['kontakt'])?$_POST['kontakt']:false);
if($person_id=='')
die('Person_id muss uebergeben werden');
//Loeschen einer Adresse
if(isset($_GET['deleteadresse']))
{
if(is_numeric($adresse_id))
{
$adresse_obj = new adresse($conn);
if(!$adresse_obj->delete($adresse_id))
{
$errormsg = 'Fehler beim Loeschen der Adresse:'.$adresse_obj->errormsg;
}
}
}
//Loeschen einen Kontakt
if(isset($_GET['deletekontakt']))
{
if(is_numeric($kontakt_id))
{
$kontakt_obj = new kontakt($conn);
if(!$kontakt_obj->delete($kontakt_id))
{
$errormsg = 'Fehler beim Loeschen des Kontakts:'.$kontakt_obj->errormsg;
}
}
}
//Speichern einer Adresse
if(isset($_POST['saveadresse']))
{
$adresse_obj = new adresse($conn);
if(is_numeric($adresse_id))
{
if($adresse_obj->load($adresse_id))
{
$adresse_obj->new = false;
}
else
{
$errormsg = 'Adresse wurde nicht gefunden:'.$adresse_id;
$error=true;
}
}
else
{
$adresse_obj->new = true;
$adresse_obj->insertamum = date('Y-m-d H:i:s');
$adresse_obj->insertvon = $user;
}
if(!$error)
{
$adresse_obj->person_id=$person_id;
$adresse_obj->strasse = $strasse;
$adresse_obj->plz = $plz;
$adresse_obj->ort = $ort;
$adresse_obj->gemeinde = $gemeinde;
$adresse_obj->nation = $nation;
$adresse_obj->typ = $adresstyp;
$adresse_obj->heimatadresse = $heimatadresse;
$adresse_obj->zustelladresse = $zustelladresse;
$adresse_obj->firma_id = $firma_id;
$adresse_obj->updateamum = date('Y-m-d H:i:s');
$adresse_obj->updatvon = $user;
//var_dump($adresse_obj);
if(!$adresse_obj->save())
{
$errormsg = 'Fehler beim Speichern der Adresse:'.$adresse_obj->errormsg;
}
else
{
$errormsg = 'Daten wurden gespeichert';
}
}
}
//Speichern eines Kontaktes
if(isset($_POST['savekontakt']))
{
$kontakt_obj = new kontakt($conn);
if(is_numeric($kontakt_id))
{
if($kontakt_obj->load($kontakt_id))
{
$kontakt_obj->new = false;
}
else
{
$errormsg = 'Kontakt wurde nicht gefunden:'.$kontakt_id;
$error=true;
}
}
else
{
$kontakt_obj->new = true;
$kontakt_obj->insertamum = date('Y-m-d H:i:s');
$kontakt_obj->insertvon = $user;
}
if(!$error)
{
$kontakt_obj->person_id=$person_id;
$kontakt_obj->firma_id = $firma_id;
$kontakt_obj->kontakttyp = $kontakttyp;
$kontakt_obj->kontakt = $kontakt;
$kontakt_obj->anmerkung = $anmerkung;
$kontakt_obj->zustellung = $zustellung;
$kontakt_obj->updateamum = date('Y-m-d H:i:s');
$kontakt_obj->updatvon = $user;
if(!$kontakt_obj->save())
{
$errormsg = 'Fehler beim Speichern des Kontaktes:'.$kontakt_obj->errormsg;
}
else
{
$errormsg = 'Daten wurden gespeichert';
}
}
}
//Person laden
$person = new person($conn);
if(!$person->load($person_id))
die('Person wurde nicht gefunden');
//Nationen laden
$nation_arr = array();
$nation = new nation($conn);
$nation->getAll();
foreach($nation->nation as $row)
$nation_arr[$row->code]=$row->kurztext;
//Firmen laden
$firma_arr = array();
$firma = new firma($conn);
$firma->getAll();
foreach($firma->result as $row)
$firma_arr[$row->firma_id]=$row->name;
$adresstyp_arr = array('h'=>'Hauptwohnsitz','n'=>'Nebenwohnsitz','f'=>'Firma');
//Kontakttypen laden
$kontakttyp_arr = array();
$kontakt_obj = new kontakt($conn);
$kontakt_obj->getKontakttyp();
foreach ($kontakt_obj->result as $row)
$kontakttyp_arr[]=$row->kontakttyp;
echo "<h2>Kontaktdaten von $person->vorname $person->nachname</h2>";
echo $errormsg.'<br>';
// *** ADRESSEN ***
echo "<h3>Adressen:</h3>";
echo "<form accept-charset='UTF-8' action='".$_SERVER['PHP_SELF']."?person_id=$person_id' method='POST' />";
echo "<table class='liste'><tr><th>STRASSE</th><th>PLZ</th><th>ORT</th><th>GEMEINDE</th><th>NATION</th><th>TYP</th><th>HEIMAT</th><th>ZUSTELLUNG</th><th>FIRMA</th></tr>";
$adresse_obj = new adresse($conn);
$adresse_obj->load_pers($person_id);
foreach ($adresse_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->strasse</td>";
echo "<td>$row->plz</td>";
echo "<td>$row->ort</td>";
echo "<td>$row->gemeinde</td>";
echo "<td>".$nation_arr[$row->nation]."</td>";
echo "<td>".$adresstyp_arr[$row->typ]."</td>";
echo "<td>".($row->heimatadresse?'Ja':'Nein')."</td>";
echo "<td>".($row->zustelladresse?'Ja':'Nein')."</td>";
echo "<td>".($row->firma_id!=''?$firma_arr[$row->firma_id]:'')."</td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?editadresse=true&adresse_id=$row->adresse_id&person_id=$person_id'>bearbeiten</a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?deleteadresse=true&adresse_id=$row->adresse_id&person_id=$person_id' onclick='return confdel()'>loeschen</a></td>";
}
$savebuttonvalue='Neu';
if(isset($_GET['editadresse']))
{
$adresse_obj = new adresse($conn);
if($adresse_obj->load($adresse_id))
{
$strasse = $adresse_obj->strasse;
$plz = $adresse_obj->plz;
$ort = $adresse_obj->ort;
$gemeinde = $adresse_obj->gemeinde;
$nation = $adresse_obj->nation;
$typ = $adresse_obj->typ;
$heimatadresse = $adresse_obj->heimatadresse;
$zustelladresse = $adresse_obj->zustelladresse;
$firma_id = $adresse_obj->firma_id;
$savebuttonvalue='Speichern';
}
}
else
{
$strasse='';
$plz='';
$ort='';
$gemeinde='';
$nation = 'A';
$typ='';
$heimatadresse='';
$zustelladresse='';
$firma_id='';
$adresse_id='';
}
echo "<input type='hidden' name='adresse_id' value='".$adresse_id."' />";
echo '<tr class="liste1">';
echo "<td><input type='text' name='strasse' value='".$strasse."' /></td>";
echo "<td><input type='text' name='plz' size='4' value='".$plz."' /></td>";
echo "<td><input type='text' name='ort' value='".$ort."' /></td>";
echo "<td><input type='text' name='gemeinde' value='".$gemeinde."' /></td>";
echo "<td><SELECT name='nation'>";
foreach ($nation_arr as $code=>$kurzbz)
{
if($code==$nation)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><SELECT name='adresstyp'>";
foreach($adresstyp_arr as $code=>$kurzbz)
{
if($code==$typ)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='checkbox' name='heimatadresse' ".($heimatadresse?'checked':'')." /></td>";
echo "<td><input type='checkbox' name='zustelladresse' ".($zustelladresse?'checked':'')." /></td>";
echo "<td><SELECT name='firma' style='width:200px'>";
echo "<OPTION value=''>-- keine Auswahl --</OPTION>";
foreach ($firma_arr as $id=>$kurzbz)
{
if($id==$firma_id)
$selected='selected';
else
$selected='';
echo "<OPTION value='$id' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='submit' name='saveadresse' value='$savebuttonvalue' /></td>";
echo "</table>";
echo "</form>";
// *** Kontakte ***
echo "<h3>Kontakte:</h3>";
echo "<form action='".$_SERVER['PHP_SELF']."?person_id=$person_id' method='POST' />";
echo "<table class='liste'><tr><th>TYP</th><th>KONTAKT</th><th>ZUSTELLUNG</th><th>ANMERKUNG</th><th>FIRMA</th></tr>";
$kontakt_obj = new kontakt($conn);
$kontakt_obj->load_pers($person_id);
foreach ($kontakt_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->kontakttyp</td>";
echo "<td>$row->kontakt</td>";
echo "<td>".($row->zustellung?'Ja':'Nein')."</td>";
echo "<td>$row->anmerkung</td>";
echo "<td>".($row->firma_id!=''?$firma_arr[$row->firma_id]:'')."</td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?editkontakt=true&kontakt_id=$row->kontakt_id&person_id=$person_id'>bearbeiten</a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?deletekontakt=true&kontakt_id=$row->kontakt_id&person_id=$person_id' onclick='return confdel()'>loeschen</a></td>";
}
$savebuttonvalue='Neu';
if(isset($_GET['editkontakt']))
{
$kontakt_obj = new kontakt($conn);
if($kontakt_obj->load($kontakt_id))
{
$kontakttyp = $kontakt_obj->kontakttyp;
$zustellung = $kontakt_obj->zustellung;
$anmerkung = $kontakt_obj->anmerkung;
$kontakt = $kontakt_obj->kontakt;
$firma_id = $kontakt_obj->firma_id;
$savebuttonvalue='Speichern';
}
else
echo 'Fehler beim Laden'.$kontakt_id;
}
else
{
$kontakt_id='';
$kontakttyp='';
$kontakt='';
$zustellung=true;
$anmerkung='';
$firma_id='';
}
echo "<input type='hidden' name='kontakt_id' value='".$kontakt_id."' />";
echo '<tr class="liste1">';
echo "<td><SELECT name='kontakttyp'>";
foreach ($kontakttyp_arr as $kurzbz)
{
if($kurzbz==$kontakttyp)
$selected='selected';
else
$selected='';
echo "<OPTION value='$kurzbz' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='text' name='kontakt' value='".$kontakt."' /></td>";
echo "<td><input type='checkbox' name='zustellung' ".($zustellung?'checked':'')." /></td>";
echo "<td><input type='text' name='anmerkung' value='".$anmerkung."' /></td>";
echo "<td><SELECT name='firma'>";
echo "<OPTION value=''>-- keine Auswahl --</OPTION>";
foreach ($firma_arr as $id=>$kurzbz)
{
if($id==$firma_id)
$selected='selected';
else
$selected='';
echo "<OPTION value='$id' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='submit' name='savekontakt' value='$savebuttonvalue' /></td>";
echo "</table>";
echo "</form>";
?>
</body>
<?php
/* Copyright (C) 2007 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/benutzerberechtigung.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/nation.class.php');
require_once('../../include/firma.class.php');
require_once('../../include/kontakt.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die('Fehler beim Herstellen der DB Connection');
$user=get_uid();
$datum_obj = new datum();
#gss loadVariables($conn, $user);
loadVariables($user);
?>
<!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=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<script language="Javascript">
function confdel()
{
return confirm('Wollen Sie diesen Datensatz wirklich loeschen?');
}
</script>
<style>
td
{
font-size: small;
}
</style>
</head>
<body>
<?php
//Berechtigung pruefen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz') && !$rechte->isBerechtigt('preinteressent'))
die('Sie haben keine Berechtigung fuer diese Seite');
$person_id = (isset($_GET['person_id'])?$_GET['person_id']:'');
$adresse_id = (isset($_REQUEST['adresse_id'])?$_REQUEST['adresse_id']:'');
$kontakt_id = (isset($_REQUEST['kontakt_id'])?$_REQUEST['kontakt_id']:'');
$errormsg = '';
$error = false;
$adresstyp = (isset($_POST['adresstyp'])?$_POST['adresstyp']:'');
$strasse = (isset($_POST['strasse'])?$_POST['strasse']:'');
$plz = (isset($_POST['plz'])?$_POST['plz']:'');
$ort = (isset($_POST['ort'])?$_POST['ort']:'');
$gemeinde = (isset($_POST['gemeinde'])?$_POST['gemeinde']:'');
$nation = (isset($_POST['nation'])?$_POST['nation']:'');
$heimatadresse = (isset($_POST['heimatadresse'])?true:false);
$zustelladresse = (isset($_POST['zustelladresse'])?true:false);
$firma_id = (isset($_POST['firma'])?$_POST['firma']:'');
$zustellung = (isset($_POST['zustellung'])?true:false);
$anmerkung = (isset($_POST['anmerkung'])?$_POST['anmerkung']:false);
$kontakt = (isset($_POST['kontakt'])?$_POST['kontakt']:false);
if($person_id=='')
die('Person_id muss uebergeben werden');
//Loeschen einer Adresse
if(isset($_GET['deleteadresse']))
{
if(is_numeric($adresse_id))
{
$adresse_obj = new adresse($conn);
if(!$adresse_obj->delete($adresse_id))
{
$errormsg = 'Fehler beim Loeschen der Adresse:'.$adresse_obj->errormsg;
}
}
}
//Loeschen einen Kontakt
if(isset($_GET['deletekontakt']))
{
if(is_numeric($kontakt_id))
{
$kontakt_obj = new kontakt($conn);
if(!$kontakt_obj->delete($kontakt_id))
{
$errormsg = 'Fehler beim Loeschen des Kontakts:'.$kontakt_obj->errormsg;
}
}
}
//Speichern einer Adresse
if(isset($_POST['saveadresse']))
{
$adresse_obj = new adresse($conn);
if(is_numeric($adresse_id))
{
if($adresse_obj->load($adresse_id))
{
$adresse_obj->new = false;
}
else
{
$errormsg = 'Adresse wurde nicht gefunden:'.$adresse_id;
$error=true;
}
}
else
{
$adresse_obj->new = true;
$adresse_obj->insertamum = date('Y-m-d H:i:s');
$adresse_obj->insertvon = $user;
}
if(!$error)
{
$adresse_obj->person_id=$person_id;
$adresse_obj->strasse = $strasse;
$adresse_obj->plz = $plz;
$adresse_obj->ort = $ort;
$adresse_obj->gemeinde = $gemeinde;
$adresse_obj->nation = $nation;
$adresse_obj->typ = $adresstyp;
$adresse_obj->heimatadresse = $heimatadresse;
$adresse_obj->zustelladresse = $zustelladresse;
$adresse_obj->firma_id = $firma_id;
$adresse_obj->updateamum = date('Y-m-d H:i:s');
$adresse_obj->updatvon = $user;
//var_dump($adresse_obj);
if(!$adresse_obj->save())
{
$errormsg = 'Fehler beim Speichern der Adresse:'.$adresse_obj->errormsg;
}
else
{
$errormsg = 'Daten wurden gespeichert';
}
}
}
//Speichern eines Kontaktes
if(isset($_POST['savekontakt']))
{
$kontakt_obj = new kontakt($conn);
if(is_numeric($kontakt_id))
{
if($kontakt_obj->load($kontakt_id))
{
$kontakt_obj->new = false;
}
else
{
$errormsg = 'Kontakt wurde nicht gefunden:'.$kontakt_id;
$error=true;
}
}
else
{
$kontakt_obj->new = true;
$kontakt_obj->insertamum = date('Y-m-d H:i:s');
$kontakt_obj->insertvon = $user;
}
if(!$error)
{
$kontakt_obj->person_id=$person_id;
$kontakt_obj->firma_id = $firma_id;
$kontakt_obj->kontakttyp = $kontakttyp;
$kontakt_obj->kontakt = $kontakt;
$kontakt_obj->anmerkung = $anmerkung;
$kontakt_obj->zustellung = $zustellung;
$kontakt_obj->updateamum = date('Y-m-d H:i:s');
$kontakt_obj->updatvon = $user;
if(!$kontakt_obj->save())
{
$errormsg = 'Fehler beim Speichern des Kontaktes:'.$kontakt_obj->errormsg;
}
else
{
$errormsg = 'Daten wurden gespeichert';
}
}
}
//Person laden
$person = new person($conn);
if(!$person->load($person_id))
die('Person wurde nicht gefunden');
//Nationen laden
$nation_arr = array();
$nation = new nation($conn);
$nation->getAll();
foreach($nation->nation as $row)
$nation_arr[$row->code]=$row->kurztext;
//Firmen laden
$firma_arr = array();
$firma = new firma($conn);
$firma->getAll();
foreach($firma->result as $row)
$firma_arr[$row->firma_id]=$row->name;
$adresstyp_arr = array('h'=>'Hauptwohnsitz','n'=>'Nebenwohnsitz','f'=>'Firma');
//Kontakttypen laden
$kontakttyp_arr = array();
$kontakt_obj = new kontakt($conn);
$kontakt_obj->getKontakttyp();
foreach ($kontakt_obj->result as $row)
$kontakttyp_arr[]=$row->kontakttyp;
echo "<h2>Kontaktdaten von $person->vorname $person->nachname</h2>";
echo $errormsg.'<br>';
// *** ADRESSEN ***
echo "<h3>Adressen:</h3>";
echo "<form accept-charset='UTF-8' action='".$_SERVER['PHP_SELF']."?person_id=$person_id' method='POST' />";
echo "<table class='liste'><tr><th>STRASSE</th><th>PLZ</th><th>ORT</th><th>GEMEINDE</th><th>NATION</th><th>TYP</th><th>HEIMAT</th><th>ZUSTELLUNG</th><th>FIRMA</th></tr>";
$adresse_obj = new adresse($conn);
$adresse_obj->load_pers($person_id);
foreach ($adresse_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->strasse</td>";
echo "<td>$row->plz</td>";
echo "<td>$row->ort</td>";
echo "<td>$row->gemeinde</td>";
echo "<td>".$nation_arr[$row->nation]."</td>";
echo "<td>".$adresstyp_arr[$row->typ]."</td>";
echo "<td>".($row->heimatadresse?'Ja':'Nein')."</td>";
echo "<td>".($row->zustelladresse?'Ja':'Nein')."</td>";
echo "<td>".($row->firma_id!=''?$firma_arr[$row->firma_id]:'')."</td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?editadresse=true&adresse_id=$row->adresse_id&person_id=$person_id'>bearbeiten</a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?deleteadresse=true&adresse_id=$row->adresse_id&person_id=$person_id' onclick='return confdel()'>loeschen</a></td>";
}
$savebuttonvalue='Neu';
if(isset($_GET['editadresse']))
{
$adresse_obj = new adresse($conn);
if($adresse_obj->load($adresse_id))
{
$strasse = $adresse_obj->strasse;
$plz = $adresse_obj->plz;
$ort = $adresse_obj->ort;
$gemeinde = $adresse_obj->gemeinde;
$nation = $adresse_obj->nation;
$typ = $adresse_obj->typ;
$heimatadresse = $adresse_obj->heimatadresse;
$zustelladresse = $adresse_obj->zustelladresse;
$firma_id = $adresse_obj->firma_id;
$savebuttonvalue='Speichern';
}
}
else
{
$strasse='';
$plz='';
$ort='';
$gemeinde='';
$nation = 'A';
$typ='';
$heimatadresse='';
$zustelladresse='';
$firma_id='';
$adresse_id='';
}
echo "<input type='hidden' name='adresse_id' value='".$adresse_id."' />";
echo '<tr class="liste1">';
echo "<td><input type='text' name='strasse' value='".$strasse."' /></td>";
echo "<td><input type='text' name='plz' size='4' value='".$plz."' /></td>";
echo "<td><input type='text' name='ort' value='".$ort."' /></td>";
echo "<td><input type='text' name='gemeinde' value='".$gemeinde."' /></td>";
echo "<td><SELECT name='nation'>";
foreach ($nation_arr as $code=>$kurzbz)
{
if($code==$nation)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><SELECT name='adresstyp'>";
foreach($adresstyp_arr as $code=>$kurzbz)
{
if($code==$typ)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='checkbox' name='heimatadresse' ".($heimatadresse?'checked':'')." /></td>";
echo "<td><input type='checkbox' name='zustelladresse' ".($zustelladresse?'checked':'')." /></td>";
echo "<td><SELECT name='firma' style='width:200px'>";
echo "<OPTION value=''>-- keine Auswahl --</OPTION>";
foreach ($firma_arr as $id=>$kurzbz)
{
if($id==$firma_id)
$selected='selected';
else
$selected='';
echo "<OPTION value='$id' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='submit' name='saveadresse' value='$savebuttonvalue' /></td>";
echo "</table>";
echo "</form>";
// *** Kontakte ***
echo "<h3>Kontakte:</h3>";
echo "<form action='".$_SERVER['PHP_SELF']."?person_id=$person_id' method='POST' />";
echo "<table class='liste'><tr><th>TYP</th><th>KONTAKT</th><th>ZUSTELLUNG</th><th>ANMERKUNG</th><th>FIRMA</th></tr>";
$kontakt_obj = new kontakt($conn);
$kontakt_obj->load_pers($person_id);
foreach ($kontakt_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->kontakttyp</td>";
echo "<td>$row->kontakt</td>";
echo "<td>".($row->zustellung?'Ja':'Nein')."</td>";
echo "<td>$row->anmerkung</td>";
echo "<td>".($row->firma_id!=''?$firma_arr[$row->firma_id]:'')."</td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?editkontakt=true&kontakt_id=$row->kontakt_id&person_id=$person_id'>bearbeiten</a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?deletekontakt=true&kontakt_id=$row->kontakt_id&person_id=$person_id' onclick='return confdel()'>loeschen</a></td>";
}
$savebuttonvalue='Neu';
if(isset($_GET['editkontakt']))
{
$kontakt_obj = new kontakt($conn);
if($kontakt_obj->load($kontakt_id))
{
$kontakttyp = $kontakt_obj->kontakttyp;
$zustellung = $kontakt_obj->zustellung;
$anmerkung = $kontakt_obj->anmerkung;
$kontakt = $kontakt_obj->kontakt;
$firma_id = $kontakt_obj->firma_id;
$savebuttonvalue='Speichern';
}
else
echo 'Fehler beim Laden'.$kontakt_id;
}
else
{
$kontakt_id='';
$kontakttyp='';
$kontakt='';
$zustellung=true;
$anmerkung='';
$firma_id='';
}
echo "<input type='hidden' name='kontakt_id' value='".$kontakt_id."' />";
echo '<tr class="liste1">';
echo "<td><SELECT name='kontakttyp'>";
foreach ($kontakttyp_arr as $kurzbz)
{
if($kurzbz==$kontakttyp)
$selected='selected';
else
$selected='';
echo "<OPTION value='$kurzbz' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='text' name='kontakt' value='".$kontakt."' /></td>";
echo "<td><input type='checkbox' name='zustellung' ".($zustellung?'checked':'')." /></td>";
echo "<td><input type='text' name='anmerkung' value='".$anmerkung."' /></td>";
echo "<td><SELECT name='firma'>";
echo "<OPTION value=''>-- keine Auswahl --</OPTION>";
foreach ($firma_arr as $id=>$kurzbz)
{
if($id==$firma_id)
$selected='selected';
else
$selected='';
echo "<OPTION value='$id' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='submit' name='savekontakt' value='$savebuttonvalue' /></td>";
echo "</table>";
echo "</form>";
?>
</body>
</html>
+443 -443
View File
@@ -1,444 +1,444 @@
<?php
/* Copyright (C) 2007 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/benutzerberechtigung.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/kontakt.class.php');
require_once('../../include/adresse.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die('Fehler beim Herstellen der DB Connection');
$user=get_uid();
$datum_obj = new datum();
#gss loadVariables($conn, $user);
loadVariables($user);
?>
<!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=UTF-8">
<link href="../../skin/cis.css" rel="stylesheet" type="text/css">
<script language="Javascript">
function disablefields(obj)
{
if(obj.value==0)
val=false;
else
val=true;
document.getElementById('titel').disabled=val;
document.getElementById('titelpost').disabled=val;
document.getElementById('nachname').disabled=val;
document.getElementById('vorname').disabled=val;
document.getElementById('geschlecht').disabled=val;
document.getElementById('geburtsdatum').disabled=val;
document.getElementById('svnr').disabled=val;
document.getElementById('ersatzkennzeichen').disabled=val;
//document.getElementById('adresse').disabled=val;
//document.getElementById('plz').disabled=val;
//document.getElementById('ort').disabled=val;
if(val)
{
document.getElementById('ueb1').style.display = 'block';
document.getElementById('ueb2').style.display = 'block';
document.getElementById('ueb3').style.display = 'block';
}
else
{
document.getElementById('ueb1').style.display = 'none';
document.getElementById('ueb2').style.display = 'none';
document.getElementById('ueb3').style.display = 'none';
}
}
function GeburtsdatumEintragen()
{
svnr = document.getElementById('svnr').value;
gebdat = document.getElementById('geburtsdatum');
if(svnr.length==10 && gebdat.value=='')
{
var tag = svnr.substr(4,2);
var monat = svnr.substr(6,2);
var jahr = svnr.substr(8,2);
gebdat.value='19'+jahr+'-'+monat+'-'+tag;
}
}
function disablefields2(val)
{
document.getElementById('adresse').disabled=val;
document.getElementById('plz').disabled=val;
document.getElementById('ort').disabled=val;
}
</script>
</head>
<body>
<h1>Person Anlegen</h1>
<?php
//Berechtigung pruefen
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung fuer diese Seite');
$where = '';
$error = false;
//Parameter
$titel = (isset($_POST['titel'])?$_POST['titel']:'');
$titelpost = (isset($_POST['titelpost'])?$_POST['titelpost']:'');
$nachname = (isset($_POST['nachname'])?$_POST['nachname']:'');
$vorname = (isset($_POST['vorname'])?$_POST['vorname']:'');
$geschlecht = (isset($_POST['geschlecht'])?$_POST['geschlecht']:'');
$geburtsdatum = (isset($_POST['geburtsdatum'])?$_POST['geburtsdatum']:'');
$adresse = (isset($_POST['adresse'])?$_POST['adresse']:'');
$plz = (isset($_POST['plz'])?$_POST['plz']:'');
$ort = (isset($_POST['ort'])?$_POST['ort']:'');
$email = (isset($_POST['email'])?$_POST['email']:'');
$telefon = (isset($_POST['telefon'])?$_POST['telefon']:'');
$mobil = (isset($_POST['mobil'])?$_POST['mobil']:'');
$person_id = (isset($_POST['person_id'])?$_POST['person_id']:'');
$svnr = (isset($_POST['svnr'])?$_POST['svnr']:'');
$ersatzkennzeichen = (isset($_POST['ersatzkennzeichen'])?$_POST['ersatzkennzeichen']:'');
$ueberschreiben = (isset($_REQUEST['ueberschreiben'])?$_REQUEST['ueberschreiben']:'');
//end Parameter
$geburtsdatum_error=false;
// *** Speichern der Daten ***
if(isset($_POST['save']))
{
//echo "Saving Data: Geburtsdatum: $geburtsdatum | Titel: $titel | Nachname: $nachname | Vorname: $vorname |
// Geschlecht: $geschlecht | Adresse: $adresse | Plz: $plz | Ort: $ort |
// Email: $email | Telefon: $telefon | Mobil: $mobil | Letzteausbildung: $letzteausbildung | ausbildungsart: $ausbildungsart |
// anmerkungen: $anmerkungen | studiengang_kz: $studiengang_kz | person_id: $person_id<br><br>";
$person = new person($conn);
pg_query($conn, 'BEGIN');
//Wenn die person_id=0 dann wird eine neue Person angelegt
//Sonst nicht
if($person_id=='0')
{
$person->new = true;
$person->titelpre = $titel;
$person->nachname = $nachname;
$person->vorname = $vorname;
$person->titelpost = $titelpost;
$person->geschlecht = $geschlecht;
$person->gebdatum = $geburtsdatum;
$person->svnr = $svnr;
$person->ersatzkennzeichen = $ersatzkennzeichen;
$person->aktiv = true;
$person->insertamum = date('Y-m-d H:i:s');
$person->insertvon = $user;
if($person->save())
{
$error=false;
}
else
{
$error=true;
$errormsg = "Person konnte nicht gespeichert werden: $person->errormsg";
}
}
//Adresse anlegen
if($ueberschreiben!='' && !($plz=='' && $adresse=='' && $ort==''))
{
if($person_id=='0')
$ueberschreiben='Nein';
$adr = new adresse($conn);
//Adresse neu anlegen
if($ueberschreiben=='Nein')
{
$adr->new = true;
$adr->insertamum = date('Y-m-d H:i:s');
$adr->insertvon = $user;
}
else
{
//Bestehende Adresse Ueberschreiben
//Adressen der Peron laden
$adr->load_pers($person->person_id);
if(isset($adr->result[0]))
{
//Erste Adresse laden
if($adr->load($adr->result[0]->adresse_id))
{
$adr->new = false;
$adr->updateamum = date('Y-m-d H:i:s');
$adr->updatevon = $user;
}
else
{
$error = true;
$errormsg = 'Fehler beim Laden der Adresse';
}
}
else
{
//Wenn keine Adrese vorhanden ist dann eine neue Anlegen
$adr->new = true;
$adr->insertamum = date('Y-m-d H:i:s');
$adr->insertvon = $user;
}
}
if(!$error)
{
//Adressdaten zuweisen und speichern
$adr->person_id = $person->person_id;
$adr->strasse = $adresse;
$adr->plz = $plz;
$adr->ort = $ort;
$adr->typ = 'h';
$adr->heimatadresse = true;
$adr->zustelladresse = true;
if(!$adr->save())
{
$error = true;
$errormsg = $adr->errormsg;
}
}
}
//Kontaktdaten anlegen
if(!$error)
{
//EMail Adresse speichern
if($email!='')
{
$kontakt = new kontakt($conn);
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = 'email';
$kontakt->kontakt = $email;
$kontakt->zustellung = true;
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
if(!$kontakt->save())
{
$error = true;
$errormsg = 'Fehler beim Speichern der Email Adresse';
}
}
//Telefonnummer speichern
if($telefon!='')
{
$kontakt = new kontakt($conn);
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = 'telefon';
$kontakt->kontakt = $telefon;
$kontakt->zustellung = true;
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
if(!$kontakt->save())
{
$error = true;
$errormsg = 'Fehler beim Speichern der Telefonnummer';
}
}
//Mobiltelefonnummer speichern
if($mobil!='')
{
$kontakt = new kontakt($conn);
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = 'mobil';
$kontakt->kontakt = $mobil;
$kontakt->zustellung = true;
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
if(!$kontakt->save())
{
$error = true;
$errormsg = 'Fehler beim Speichern der Mobiltelefonnummer';
}
}
}
if(!$error)
{
pg_query($conn, 'COMMIT');
die("<script language='Javascript'>
window.opener.StudentProjektbetreuerMenulistPersonLoad(window.opener.document.getElementById('student-projektbetreuer-menulist-person'), '$nachname');
window.opener.MenulistSelectItemOnValue('student-projektbetreuer-menulist-person', $person->person_id);
</script>
<b>Person $vorname $nachname wurde erfolgreich angelegt</b><br><br><a href='personen_anlegen.php>Neue Person Anlegen</a><br>");
}
else
{
pg_query($conn, 'ROLLBACK');
echo '<span class="error">'.$errormsg.'</span>';
}
}
// *** SAVE ENDE ***
if($geburtsdatum!='')
{
//Wenn das Datum im Format d.m.Y ist dann in Y-m-d umwandeln
if(strpos($geburtsdatum,'.'))
{
if($datum_obj->mktime_datum($geburtsdatum))
{
$geburtsdatum = date('Y-m-d',$datum_obj->mktime_datum($geburtsdatum));
}
else
{
$geburtsdatum_error=true;
}
}
else
{
if(!ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$geburtsdatum))
$geburtsdatum_error=true;
}
if($geburtsdatum_error)
echo "Format des Geburtsdatums ist ungueltig!";
}
?>
<form method='POST'>
<table width="100%">
<tr>
<td>
<!--Formularfelder-->
<table>
<?php
echo '<tr><td>Titel(Pre) *</td><td><input type="text" id="titel" name="titel" maxlength="64" value="'.$titel.'" /></td></tr>';
echo '<tr><td>Vorname</td><td><input type="text" id="vorname" maxlength="32" name="vorname" value="'.$vorname.'" /></td></tr>';
echo '<tr><td>Nachname *</td><td><input type="text" maxlength="64" id="nachname" name="nachname" value="'.$nachname.'" /></td></tr>';
echo '<tr><td>Titel(Post)</td><td><input type="text" id="titelpost" name="titelpost" maxlength="64" value="'.$titelpost.'" /></td></tr>';
echo '<tr><td>Geschlecht *</td><td><SELECT id="geschlecht" name="geschlecht">';
echo '<OPTION value="m" '.($geschlecht=='m'?'selected':'').'>m&auml;nnlich</OPTION>';
echo '<OPTION value="w" '.($geschlecht=='w'?'selected':'').'>weiblich</OPTION>';
echo '<OPTION value="u" '.($geschlecht=='u'?'selected':'').'>unbekannt</OPTION>';
echo '</SELECT>';
echo '</td></tr>';
echo '<tr><td>SVNR</td><td><input type="text" id="svnr" size="10" maxlength="10" name="svnr" value="'.$svnr.'" onblur="GeburtsdatumEintragen()" /></td></tr>';
echo '<tr><td>Ersatzkennzeichen</td><td><input type="text" id="ersatzkennzeichen" size="10" maxlength="10" name="ersatzkennzeichen" value="'.$ersatzkennzeichen.'" /></td></tr>';
echo '<tr><td>Geburtsdatum</td><td><input type="text" id="geburtsdatum" size="10" maxlength="10" name="geburtsdatum" value="'.$geburtsdatum.'" /> (Format dd.mm.JJJJ)</td></tr>';
echo '<tr><td colspan="2"><fieldset><legend>Adresse</legend><table>';
echo '<tr><td>Adresse</td><td><input type="text" id="adresse" maxlength="256" name="adresse" value="'.$adresse.'" /></td></tr>';
echo '<tr><td>Postleitzahl</td><td><input type="text" maxlength="16" id="plz" name="plz" value="'.$plz.'" /></td></tr>';
echo '<tr><td>Ort</td><td><input type="text" id="ort" maxlength="256" name="ort" value="'.$ort.'" /></td></tr>';
echo '</table>';
echo '<div style="display: none;" id="ueb1"><input type="radio" id="ueberschreiben1" name="ueberschreiben" value="Ja" onclick="disablefields2(false)">Bestehende Adresse überschreiben</div>';
echo '<div style="display: none;" id="ueb2"><input type="radio" id="ueberschreiben2" name="ueberschreiben" value="Nein" onclick="disablefields2(false)" checked>Adresse hinzufügen</div>';
echo '<div style="display: none;" id="ueb3"><input type="radio" id="ueberschreiben3" name="ueberschreiben" value="" onclick="disablefields2(true)">Adresse nicht anlegen</div>';
echo '</fieldset></td></tr>';
echo '<tr><td>EMail</td><td><input type="text" id="email" maxlength="128" name="email" value="'.$email.'" /></td></tr>';
echo '<tr><td>Telefon</td><td><input type="text" id="telefon" maxlength="128" name="telefon" value="'.$telefon.'" /></td></tr>';
echo '<tr><td>Mobil</td><td><input type="text" id="mobil" maxlength="128" name="mobil" value="'.$mobil.'" /></td></tr>';
echo '<tr><td></td><td>';
if(($geburtsdatum=='' && $vorname=='' && $nachname=='') || $geburtsdatum_error)
echo '<input type="submit" name="showagain" value="Vorschlag laden">';
else
echo '<input type="submit" name="save" value="Speichern">';
echo '</td></tr>';
echo '</table>';
echo '
<br><br>
Felder die mit einem * gekennzeichnet sind müssen ausgefüllt werden!
';
echo '</td>';
echo '<td valign="top">';
//Vorschlaege
//Vorschlaege laden
if($geburtsdatum!='')
{
if(ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$geburtsdatum))
{
$where = " gebdatum='".$geburtsdatum."'";
}
}
if($vorname!='' && $nachname!='')
{
if($where!='')
$where.=' OR';
$where.=" (LOWER(vorname)=LOWER('".$vorname."') AND LOWER(nachname)=LOWER('".$nachname."'))";
}
if($where!='')
{
$qry = "SELECT * FROM public.tbl_person WHERE $where ORDER BY nachname, vorname, gebdatum";
if($result = pg_query($conn, $qry))
{
echo '<table><tr><th></th><th>Nachname</th><th>Vorname</th><th>GebDatum</th><th>SVNR</th><th>Geschlecht</th><th>Adresse</th><th>Status</th></tr>';
while($row = pg_fetch_object($result))
{
$status = '';
$qry_stati = "SELECT 'Mitarbeiter' as rolle FROM campus.vw_mitarbeiter WHERE person_id='$row->person_id'
UNION
SELECT (get_rolle_prestudent(prestudent_id, null) || ' ' || UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz)) as rolle FROM public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz) WHERE person_id='$row->person_id'
UNION
SELECT 'PreInteressent' as rolle FROM public.tbl_preinteressent WHERE person_id='$row->person_id'";
if($result_stati = pg_query($conn, $qry_stati))
{
while($row_stati=pg_fetch_object($result_stati))
{
$status.=$row_stati->rolle.', ';
}
}
$status = mb_substr($status, 0, mb_strlen($status)-2);
echo '<tr valign="top"><td><input type="radio" name="person_id" value="'.$row->person_id.'" onclick="disablefields(this)"></td><td>'."$row->nachname</td><td>$row->vorname</td><td>$row->gebdatum</td><td>$row->svnr</td><td>".($row->geschlecht=='m'?'männlich':'weiblich')."</td><td>";
$qry_adr = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id'";
if($result_adr = pg_query($conn, $qry_adr))
while($row_adr=pg_fetch_object($result_adr))
echo "$row_adr->plz $row_adr->ort, $row_adr->strasse<br>";
echo "<td>$status</td>";
echo "</td></tr>";
}
echo '<tr><td><input type="radio" name="person_id" value="0" checked onclick="disablefields(this)"></td><td>Neue Person anlegen</td></tr>';
echo '</table>';
}
}
//else
// echo 'Zum Erstellen des Vorschlags bitte Geburtsdatum oder Vorname und Nachname eingeben';
?>
</td>
</tr>
</table>
</form>
</body>
<?php
/* Copyright (C) 2007 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/benutzerberechtigung.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/kontakt.class.php');
require_once('../../include/adresse.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die('Fehler beim Herstellen der DB Connection');
$user=get_uid();
$datum_obj = new datum();
#gss loadVariables($conn, $user);
loadVariables($user);
?>
<!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=UTF-8">
<link href="../../skin/cis.css" rel="stylesheet" type="text/css">
<script language="Javascript">
function disablefields(obj)
{
if(obj.value==0)
val=false;
else
val=true;
document.getElementById('titel').disabled=val;
document.getElementById('titelpost').disabled=val;
document.getElementById('nachname').disabled=val;
document.getElementById('vorname').disabled=val;
document.getElementById('geschlecht').disabled=val;
document.getElementById('geburtsdatum').disabled=val;
document.getElementById('svnr').disabled=val;
document.getElementById('ersatzkennzeichen').disabled=val;
//document.getElementById('adresse').disabled=val;
//document.getElementById('plz').disabled=val;
//document.getElementById('ort').disabled=val;
if(val)
{
document.getElementById('ueb1').style.display = 'block';
document.getElementById('ueb2').style.display = 'block';
document.getElementById('ueb3').style.display = 'block';
}
else
{
document.getElementById('ueb1').style.display = 'none';
document.getElementById('ueb2').style.display = 'none';
document.getElementById('ueb3').style.display = 'none';
}
}
function GeburtsdatumEintragen()
{
svnr = document.getElementById('svnr').value;
gebdat = document.getElementById('geburtsdatum');
if(svnr.length==10 && gebdat.value=='')
{
var tag = svnr.substr(4,2);
var monat = svnr.substr(6,2);
var jahr = svnr.substr(8,2);
gebdat.value='19'+jahr+'-'+monat+'-'+tag;
}
}
function disablefields2(val)
{
document.getElementById('adresse').disabled=val;
document.getElementById('plz').disabled=val;
document.getElementById('ort').disabled=val;
}
</script>
</head>
<body>
<h1>Person Anlegen</h1>
<?php
//Berechtigung pruefen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('mitarbeiter') && !$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung fuer diese Seite');
$where = '';
$error = false;
//Parameter
$titel = (isset($_POST['titel'])?$_POST['titel']:'');
$titelpost = (isset($_POST['titelpost'])?$_POST['titelpost']:'');
$nachname = (isset($_POST['nachname'])?$_POST['nachname']:'');
$vorname = (isset($_POST['vorname'])?$_POST['vorname']:'');
$geschlecht = (isset($_POST['geschlecht'])?$_POST['geschlecht']:'');
$geburtsdatum = (isset($_POST['geburtsdatum'])?$_POST['geburtsdatum']:'');
$adresse = (isset($_POST['adresse'])?$_POST['adresse']:'');
$plz = (isset($_POST['plz'])?$_POST['plz']:'');
$ort = (isset($_POST['ort'])?$_POST['ort']:'');
$email = (isset($_POST['email'])?$_POST['email']:'');
$telefon = (isset($_POST['telefon'])?$_POST['telefon']:'');
$mobil = (isset($_POST['mobil'])?$_POST['mobil']:'');
$person_id = (isset($_POST['person_id'])?$_POST['person_id']:'');
$svnr = (isset($_POST['svnr'])?$_POST['svnr']:'');
$ersatzkennzeichen = (isset($_POST['ersatzkennzeichen'])?$_POST['ersatzkennzeichen']:'');
$ueberschreiben = (isset($_REQUEST['ueberschreiben'])?$_REQUEST['ueberschreiben']:'');
//end Parameter
$geburtsdatum_error=false;
// *** Speichern der Daten ***
if(isset($_POST['save']))
{
//echo "Saving Data: Geburtsdatum: $geburtsdatum | Titel: $titel | Nachname: $nachname | Vorname: $vorname |
// Geschlecht: $geschlecht | Adresse: $adresse | Plz: $plz | Ort: $ort |
// Email: $email | Telefon: $telefon | Mobil: $mobil | Letzteausbildung: $letzteausbildung | ausbildungsart: $ausbildungsart |
// anmerkungen: $anmerkungen | studiengang_kz: $studiengang_kz | person_id: $person_id<br><br>";
$person = new person($conn);
pg_query($conn, 'BEGIN');
//Wenn die person_id=0 dann wird eine neue Person angelegt
//Sonst nicht
if($person_id=='0')
{
$person->new = true;
$person->titelpre = $titel;
$person->nachname = $nachname;
$person->vorname = $vorname;
$person->titelpost = $titelpost;
$person->geschlecht = $geschlecht;
$person->gebdatum = $geburtsdatum;
$person->svnr = $svnr;
$person->ersatzkennzeichen = $ersatzkennzeichen;
$person->aktiv = true;
$person->insertamum = date('Y-m-d H:i:s');
$person->insertvon = $user;
if($person->save())
{
$error=false;
}
else
{
$error=true;
$errormsg = "Person konnte nicht gespeichert werden: $person->errormsg";
}
}
//Adresse anlegen
if($ueberschreiben!='' && !($plz=='' && $adresse=='' && $ort==''))
{
if($person_id=='0')
$ueberschreiben='Nein';
$adr = new adresse($conn);
//Adresse neu anlegen
if($ueberschreiben=='Nein')
{
$adr->new = true;
$adr->insertamum = date('Y-m-d H:i:s');
$adr->insertvon = $user;
}
else
{
//Bestehende Adresse Ueberschreiben
//Adressen der Peron laden
$adr->load_pers($person->person_id);
if(isset($adr->result[0]))
{
//Erste Adresse laden
if($adr->load($adr->result[0]->adresse_id))
{
$adr->new = false;
$adr->updateamum = date('Y-m-d H:i:s');
$adr->updatevon = $user;
}
else
{
$error = true;
$errormsg = 'Fehler beim Laden der Adresse';
}
}
else
{
//Wenn keine Adrese vorhanden ist dann eine neue Anlegen
$adr->new = true;
$adr->insertamum = date('Y-m-d H:i:s');
$adr->insertvon = $user;
}
}
if(!$error)
{
//Adressdaten zuweisen und speichern
$adr->person_id = $person->person_id;
$adr->strasse = $adresse;
$adr->plz = $plz;
$adr->ort = $ort;
$adr->typ = 'h';
$adr->heimatadresse = true;
$adr->zustelladresse = true;
if(!$adr->save())
{
$error = true;
$errormsg = $adr->errormsg;
}
}
}
//Kontaktdaten anlegen
if(!$error)
{
//EMail Adresse speichern
if($email!='')
{
$kontakt = new kontakt($conn);
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = 'email';
$kontakt->kontakt = $email;
$kontakt->zustellung = true;
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
if(!$kontakt->save())
{
$error = true;
$errormsg = 'Fehler beim Speichern der Email Adresse';
}
}
//Telefonnummer speichern
if($telefon!='')
{
$kontakt = new kontakt($conn);
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = 'telefon';
$kontakt->kontakt = $telefon;
$kontakt->zustellung = true;
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
if(!$kontakt->save())
{
$error = true;
$errormsg = 'Fehler beim Speichern der Telefonnummer';
}
}
//Mobiltelefonnummer speichern
if($mobil!='')
{
$kontakt = new kontakt($conn);
$kontakt->person_id = $person->person_id;
$kontakt->kontakttyp = 'mobil';
$kontakt->kontakt = $mobil;
$kontakt->zustellung = true;
$kontakt->insertamum = date('Y-m-d H:i:s');
$kontakt->insertvon = $user;
$kontakt->new = true;
if(!$kontakt->save())
{
$error = true;
$errormsg = 'Fehler beim Speichern der Mobiltelefonnummer';
}
}
}
if(!$error)
{
pg_query($conn, 'COMMIT');
die("<script language='Javascript'>
window.opener.StudentProjektbetreuerMenulistPersonLoad(window.opener.document.getElementById('student-projektbetreuer-menulist-person'), '$nachname');
window.opener.MenulistSelectItemOnValue('student-projektbetreuer-menulist-person', $person->person_id);
</script>
<b>Person $vorname $nachname wurde erfolgreich angelegt</b><br><br><a href='personen_anlegen.php>Neue Person Anlegen</a><br>");
}
else
{
pg_query($conn, 'ROLLBACK');
echo '<span class="error">'.$errormsg.'</span>';
}
}
// *** SAVE ENDE ***
if($geburtsdatum!='')
{
//Wenn das Datum im Format d.m.Y ist dann in Y-m-d umwandeln
if(strpos($geburtsdatum,'.'))
{
if($datum_obj->mktime_datum($geburtsdatum))
{
$geburtsdatum = date('Y-m-d',$datum_obj->mktime_datum($geburtsdatum));
}
else
{
$geburtsdatum_error=true;
}
}
else
{
if(!ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$geburtsdatum))
$geburtsdatum_error=true;
}
if($geburtsdatum_error)
echo "Format des Geburtsdatums ist ungueltig!";
}
?>
<form method='POST'>
<table width="100%">
<tr>
<td>
<!--Formularfelder-->
<table>
<?php
echo '<tr><td>Titel(Pre) *</td><td><input type="text" id="titel" name="titel" maxlength="64" value="'.$titel.'" /></td></tr>';
echo '<tr><td>Vorname</td><td><input type="text" id="vorname" maxlength="32" name="vorname" value="'.$vorname.'" /></td></tr>';
echo '<tr><td>Nachname *</td><td><input type="text" maxlength="64" id="nachname" name="nachname" value="'.$nachname.'" /></td></tr>';
echo '<tr><td>Titel(Post)</td><td><input type="text" id="titelpost" name="titelpost" maxlength="64" value="'.$titelpost.'" /></td></tr>';
echo '<tr><td>Geschlecht *</td><td><SELECT id="geschlecht" name="geschlecht">';
echo '<OPTION value="m" '.($geschlecht=='m'?'selected':'').'>m&auml;nnlich</OPTION>';
echo '<OPTION value="w" '.($geschlecht=='w'?'selected':'').'>weiblich</OPTION>';
echo '<OPTION value="u" '.($geschlecht=='u'?'selected':'').'>unbekannt</OPTION>';
echo '</SELECT>';
echo '</td></tr>';
echo '<tr><td>SVNR</td><td><input type="text" id="svnr" size="10" maxlength="10" name="svnr" value="'.$svnr.'" onblur="GeburtsdatumEintragen()" /></td></tr>';
echo '<tr><td>Ersatzkennzeichen</td><td><input type="text" id="ersatzkennzeichen" size="10" maxlength="10" name="ersatzkennzeichen" value="'.$ersatzkennzeichen.'" /></td></tr>';
echo '<tr><td>Geburtsdatum</td><td><input type="text" id="geburtsdatum" size="10" maxlength="10" name="geburtsdatum" value="'.$geburtsdatum.'" /> (Format dd.mm.JJJJ)</td></tr>';
echo '<tr><td colspan="2"><fieldset><legend>Adresse</legend><table>';
echo '<tr><td>Adresse</td><td><input type="text" id="adresse" maxlength="256" name="adresse" value="'.$adresse.'" /></td></tr>';
echo '<tr><td>Postleitzahl</td><td><input type="text" maxlength="16" id="plz" name="plz" value="'.$plz.'" /></td></tr>';
echo '<tr><td>Ort</td><td><input type="text" id="ort" maxlength="256" name="ort" value="'.$ort.'" /></td></tr>';
echo '</table>';
echo '<div style="display: none;" id="ueb1"><input type="radio" id="ueberschreiben1" name="ueberschreiben" value="Ja" onclick="disablefields2(false)">Bestehende Adresse überschreiben</div>';
echo '<div style="display: none;" id="ueb2"><input type="radio" id="ueberschreiben2" name="ueberschreiben" value="Nein" onclick="disablefields2(false)" checked>Adresse hinzufügen</div>';
echo '<div style="display: none;" id="ueb3"><input type="radio" id="ueberschreiben3" name="ueberschreiben" value="" onclick="disablefields2(true)">Adresse nicht anlegen</div>';
echo '</fieldset></td></tr>';
echo '<tr><td>EMail</td><td><input type="text" id="email" maxlength="128" name="email" value="'.$email.'" /></td></tr>';
echo '<tr><td>Telefon</td><td><input type="text" id="telefon" maxlength="128" name="telefon" value="'.$telefon.'" /></td></tr>';
echo '<tr><td>Mobil</td><td><input type="text" id="mobil" maxlength="128" name="mobil" value="'.$mobil.'" /></td></tr>';
echo '<tr><td></td><td>';
if(($geburtsdatum=='' && $vorname=='' && $nachname=='') || $geburtsdatum_error)
echo '<input type="submit" name="showagain" value="Vorschlag laden">';
else
echo '<input type="submit" name="save" value="Speichern">';
echo '</td></tr>';
echo '</table>';
echo '
<br><br>
Felder die mit einem * gekennzeichnet sind müssen ausgefüllt werden!
';
echo '</td>';
echo '<td valign="top">';
//Vorschlaege
//Vorschlaege laden
if($geburtsdatum!='')
{
if(ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",$geburtsdatum))
{
$where = " gebdatum='".$geburtsdatum."'";
}
}
if($vorname!='' && $nachname!='')
{
if($where!='')
$where.=' OR';
$where.=" (LOWER(vorname)=LOWER('".$vorname."') AND LOWER(nachname)=LOWER('".$nachname."'))";
}
if($where!='')
{
$qry = "SELECT * FROM public.tbl_person WHERE $where ORDER BY nachname, vorname, gebdatum";
if($result = pg_query($conn, $qry))
{
echo '<table><tr><th></th><th>Nachname</th><th>Vorname</th><th>GebDatum</th><th>SVNR</th><th>Geschlecht</th><th>Adresse</th><th>Status</th></tr>';
while($row = pg_fetch_object($result))
{
$status = '';
$qry_stati = "SELECT 'Mitarbeiter' as rolle FROM campus.vw_mitarbeiter WHERE person_id='$row->person_id'
UNION
SELECT (get_rolle_prestudent(prestudent_id, null) || ' ' || UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz)) as rolle FROM public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz) WHERE person_id='$row->person_id'
UNION
SELECT 'PreInteressent' as rolle FROM public.tbl_preinteressent WHERE person_id='$row->person_id'";
if($result_stati = pg_query($conn, $qry_stati))
{
while($row_stati=pg_fetch_object($result_stati))
{
$status.=$row_stati->rolle.', ';
}
}
$status = mb_substr($status, 0, mb_strlen($status)-2);
echo '<tr valign="top"><td><input type="radio" name="person_id" value="'.$row->person_id.'" onclick="disablefields(this)"></td><td>'."$row->nachname</td><td>$row->vorname</td><td>$row->gebdatum</td><td>$row->svnr</td><td>".($row->geschlecht=='m'?'männlich':'weiblich')."</td><td>";
$qry_adr = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id'";
if($result_adr = pg_query($conn, $qry_adr))
while($row_adr=pg_fetch_object($result_adr))
echo "$row_adr->plz $row_adr->ort, $row_adr->strasse<br>";
echo "<td>$status</td>";
echo "</td></tr>";
}
echo '<tr><td><input type="radio" name="person_id" value="0" checked onclick="disablefields(this)"></td><td>Neue Person anlegen</td></tr>';
echo '</table>';
}
}
//else
// echo 'Zum Erstellen des Vorschlags bitte Geburtsdatum oder Vorname und Nachname eingeben';
?>
</td>
</tr>
</table>
</form>
</body>
</html>
File diff suppressed because it is too large Load Diff
+285 -285
View File
@@ -1,286 +1,286 @@
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/preinteressent.class.php');
require_once('../../include/person.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/kontakt.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/nation.class.php');
require_once('../../include/firma.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
echo '<html>
<head>
<title>PreInteressenten</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
';
if(!$rechte->isBerechtigt('admin') &&
!$rechte->isBerechtigt('preinteressent') &&
!$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung fuer diese Seite');
if(isset($_GET['id']) && is_numeric($_GET['id']))
$id = $_GET['id'];
else
die('der Parameter id mit der Person_id muss uebergeben werden');
$person = new person($conn);
if(!$person->load($id))
die('Person wurde nicht gefunden');
//PERSON
echo '<h2>Person</h2>';
echo "ID: $person->person_id<br>";
echo "Name: $person->titelpre $person->nachname $person->vorname $person->titelpost<br>";
echo "Geburtsdatum: ".$datum_obj->formatDatum($person->gebdatum,'d.m.Y')."<br>";
echo "Geschlecht: ".$person->geschlecht."<br>";
$kontakt = new kontakt($conn);
$kontakt->load_pers($person->person_id);
echo '<h3>Kontaktdaten</h3>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>Typ</th>
<th>Kontakt</th>
<th>Zustellung</th>
<th>Anmerkung</th>
</tr>
</thead>
<tbody>';
foreach ($kontakt->result as $row)
{
echo '<tr>';
echo "<td>$row->kontakttyp</td>";
echo "<td>$row->kontakt</td>";
echo "<td>".($row->zustellung?'Ja':'Nein')."</td>";
echo "<td>$row->anmerkung</td>";
echo '<tr>';
}
echo '</tbody></table>';
//Nationen laden
$nation_arr = array();
$nation = new nation($conn);
$nation->getAll();
$nation_arr['']='';
foreach($nation->nation as $row)
$nation_arr[$row->code]=$row->kurztext;
$adresstyp_arr = array('h'=>'Hauptwohnsitz','n'=>'Nebenwohnsitz','f'=>'Firma');
// *** ADRESSEN ***
echo "<h3>Adressen:</h3>";
echo "<table class='liste'><tr><th>Strasse</th><th>Plz</th><th>Ort</th><th>Gemeinde</th><th>Nation</th><th>Typ</th><th>Heimat</th><th>Zustellung</th><th>Firma</th></tr>";
$adresse_obj = new adresse($conn);
$adresse_obj->load_pers($person->person_id);
foreach ($adresse_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->strasse</td>";
echo "<td>$row->plz</td>";
echo "<td>$row->ort</td>";
echo "<td>$row->gemeinde</td>";
echo "<td>".$nation_arr[$row->nation]."</td>";
echo "<td>".$adresstyp_arr[$row->typ]."</td>";
echo "<td>".($row->heimatadresse?'Ja':'Nein')."</td>";
echo "<td>".($row->zustelladresse?'Ja':'Nein')."</td>";
$firma=new firma($conn);
if($row->firma_id!='')
$firma->load($row->firma_id);
echo "<td>".$firma->name."</td>";
}
echo '</table>';
//PREINTERESSENT
function CutString($strVal, $limit)
{
if(strlen($strVal) > $limit+3)
{
return substr($strVal, 0, $limit) . "...";
}
else
{
return $strVal;
}
}
$preinteressent = new preinteressent($conn);
$preinteressent->getPreinteressenten($person->person_id);
if(count($preinteressent->result)>0)
{
echo '<br><h2>Preinteressent</h2>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>ID</th>
<th>Studiensemester</th>
<th>Erfassungsdatum</th>
<th>Anmerkung</th>
<th>AufmerksamDurch</th>
<th>Kontaktmedium (Woher)</th>
<th>Studiengänge</th>
<th>Schule</th>
</tr>
</thead>
<tbody>';
foreach ($preinteressent->result as $row)
{
echo '<tr>';
echo "<td>$row->preinteressent_id</td>";
echo "<td>$row->studiensemester_kurzbz</td>";
echo "<td>".$datum_obj->formatDatum($row->erfassungsdatum, 'd.m.Y')."</td>";
echo "<td title='".$row->anmerkung."'>".CutString($row->anmerkung, 50)."</td>";
echo "<td>".$row->aufmerksamdurch_kurzbz."</td>";
echo "<td>".$row->kontaktmedium_kurzbz."</td>";
echo '<td>';
$preinteressent1 = new preinteressent($conn);
$preinteressent1->loadZuordnungen($row->preinteressent_id);
$stgs='';
foreach ($preinteressent1->result as $row_zuordnung)
{
if($stgs!='')
$stgs.=', ';
$stgs.= $studiengang->kuerzel_arr[$row_zuordnung->studiengang_kz]."(".$preinteressent1->prioritaet_arr[$row_zuordnung->prioritaet].")";
}
echo $stgs;
echo '</td>';
echo '<td>';
$firma = new firma($conn);
$firma->load($row->firma_id);
echo $firma->name;
echo '</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
$prestudent = new prestudent($conn);
$prestudent->getPrestudenten($person->person_id);
if(count($prestudent->result)>0)
{
echo '<br><h2>Pre-/Studenten</h2>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>ID</th>
<th>Studiengang</th>
<th>Reihungstest</th>
<th>UID</th>
<th>Gruppe</th>
<th>Status</th>
</tr>
</thead><tbody>';
foreach ($prestudent->result as $row)
{
echo '<tr>';
echo "<td>$row->prestudent_id</td>";
echo "<td>".$studiengang->kuerzel_arr[$row->studiengang_kz]."</td>";
echo "<td>".($row->reihungstestangetreten?'Ja':'Nein')."</td>";
$uid='';
$gruppe='';
$qry ="SELECT * FROM public.tbl_student WHERE prestudent_id='$row->prestudent_id'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)>1)
{
$uid='ACHTUNG: Es gibt mehrere Studenteneinträge die auf diesen Prestudenten zeigen!';
}
else
{
if($row_std = pg_fetch_object($result))
{
$uid = $row_std->student_uid;
$gruppe = $row_std->semester.$row_std->verband.$row_std->gruppe;
}
}
}
echo "<td>$uid</td>";
echo "<td>$gruppe</td>";
$prestudent1 = new prestudent($conn);
$prestudent1->getLastStatus($row->prestudent_id);
echo "<td>$prestudent1->status_kurzbz ".($prestudent1->ausbildungssemester!=''?"($prestudent1->ausbildungssemester. Semester)":'')."</td>";
echo '</tr>';
}
echo '</tbody></table>';
}
$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE person_id='$person->person_id'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)>0)
{
echo '<br><h2>Mitarbeiter</h2>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>UID</th>
<th>Kurzbz</th>
<th>Lektor</th>
<th>Fixangestellt</th>
<th>Telefonklappe</th>
</tr>
</thead><tbody>';
while($row = pg_fetch_object($result))
{
echo "<tr>";
echo "<td>$row->uid</td>";
echo "<td>$row->kurzbz</td>";
echo "<td>".($row->lektor=='t'?'Ja':'Nein')."</td>";
echo "<td>".($row->fixangestellt=='t'?'Ja':'Nein')."</td>";
echo "<td>$row->telefonklappe</td>";
echo "</tr>";
}
echo '</tbody></table>';
}
}
echo '</body>';
echo '</html>';
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/preinteressent.class.php');
require_once('../../include/person.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/kontakt.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/nation.class.php');
require_once('../../include/firma.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
echo '<html>
<head>
<title>PreInteressenten</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
';
if(!$rechte->isBerechtigt('admin') &&
!$rechte->isBerechtigt('preinteressent') &&
!$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung fuer diese Seite');
if(isset($_GET['id']) && is_numeric($_GET['id']))
$id = $_GET['id'];
else
die('der Parameter id mit der Person_id muss uebergeben werden');
$person = new person($conn);
if(!$person->load($id))
die('Person wurde nicht gefunden');
//PERSON
echo '<h2>Person</h2>';
echo "ID: $person->person_id<br>";
echo "Name: $person->titelpre $person->nachname $person->vorname $person->titelpost<br>";
echo "Geburtsdatum: ".$datum_obj->formatDatum($person->gebdatum,'d.m.Y')."<br>";
echo "Geschlecht: ".$person->geschlecht."<br>";
$kontakt = new kontakt($conn);
$kontakt->load_pers($person->person_id);
echo '<h3>Kontaktdaten</h3>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>Typ</th>
<th>Kontakt</th>
<th>Zustellung</th>
<th>Anmerkung</th>
</tr>
</thead>
<tbody>';
foreach ($kontakt->result as $row)
{
echo '<tr>';
echo "<td>$row->kontakttyp</td>";
echo "<td>$row->kontakt</td>";
echo "<td>".($row->zustellung?'Ja':'Nein')."</td>";
echo "<td>$row->anmerkung</td>";
echo '<tr>';
}
echo '</tbody></table>';
//Nationen laden
$nation_arr = array();
$nation = new nation($conn);
$nation->getAll();
$nation_arr['']='';
foreach($nation->nation as $row)
$nation_arr[$row->code]=$row->kurztext;
$adresstyp_arr = array('h'=>'Hauptwohnsitz','n'=>'Nebenwohnsitz','f'=>'Firma');
// *** ADRESSEN ***
echo "<h3>Adressen:</h3>";
echo "<table class='liste'><tr><th>Strasse</th><th>Plz</th><th>Ort</th><th>Gemeinde</th><th>Nation</th><th>Typ</th><th>Heimat</th><th>Zustellung</th><th>Firma</th></tr>";
$adresse_obj = new adresse($conn);
$adresse_obj->load_pers($person->person_id);
foreach ($adresse_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->strasse</td>";
echo "<td>$row->plz</td>";
echo "<td>$row->ort</td>";
echo "<td>$row->gemeinde</td>";
echo "<td>".$nation_arr[$row->nation]."</td>";
echo "<td>".$adresstyp_arr[$row->typ]."</td>";
echo "<td>".($row->heimatadresse?'Ja':'Nein')."</td>";
echo "<td>".($row->zustelladresse?'Ja':'Nein')."</td>";
$firma=new firma($conn);
if($row->firma_id!='')
$firma->load($row->firma_id);
echo "<td>".$firma->name."</td>";
}
echo '</table>';
//PREINTERESSENT
function CutString($strVal, $limit)
{
if(strlen($strVal) > $limit+3)
{
return substr($strVal, 0, $limit) . "...";
}
else
{
return $strVal;
}
}
$preinteressent = new preinteressent($conn);
$preinteressent->getPreinteressenten($person->person_id);
if(count($preinteressent->result)>0)
{
echo '<br><h2>Preinteressent</h2>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>ID</th>
<th>Studiensemester</th>
<th>Erfassungsdatum</th>
<th>Anmerkung</th>
<th>AufmerksamDurch</th>
<th>Kontaktmedium (Woher)</th>
<th>Studiengänge</th>
<th>Schule</th>
</tr>
</thead>
<tbody>';
foreach ($preinteressent->result as $row)
{
echo '<tr>';
echo "<td>$row->preinteressent_id</td>";
echo "<td>$row->studiensemester_kurzbz</td>";
echo "<td>".$datum_obj->formatDatum($row->erfassungsdatum, 'd.m.Y')."</td>";
echo "<td title='".$row->anmerkung."'>".CutString($row->anmerkung, 50)."</td>";
echo "<td>".$row->aufmerksamdurch_kurzbz."</td>";
echo "<td>".$row->kontaktmedium_kurzbz."</td>";
echo '<td>';
$preinteressent1 = new preinteressent($conn);
$preinteressent1->loadZuordnungen($row->preinteressent_id);
$stgs='';
foreach ($preinteressent1->result as $row_zuordnung)
{
if($stgs!='')
$stgs.=', ';
$stgs.= $studiengang->kuerzel_arr[$row_zuordnung->studiengang_kz]."(".$preinteressent1->prioritaet_arr[$row_zuordnung->prioritaet].")";
}
echo $stgs;
echo '</td>';
echo '<td>';
$firma = new firma($conn);
$firma->load($row->firma_id);
echo $firma->name;
echo '</td>';
echo '</tr>';
}
echo '</tbody></table>';
}
$prestudent = new prestudent($conn);
$prestudent->getPrestudenten($person->person_id);
if(count($prestudent->result)>0)
{
echo '<br><h2>Pre-/Studenten</h2>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>ID</th>
<th>Studiengang</th>
<th>Reihungstest</th>
<th>UID</th>
<th>Gruppe</th>
<th>Status</th>
</tr>
</thead><tbody>';
foreach ($prestudent->result as $row)
{
echo '<tr>';
echo "<td>$row->prestudent_id</td>";
echo "<td>".$studiengang->kuerzel_arr[$row->studiengang_kz]."</td>";
echo "<td>".($row->reihungstestangetreten?'Ja':'Nein')."</td>";
$uid='';
$gruppe='';
$qry ="SELECT * FROM public.tbl_student WHERE prestudent_id='$row->prestudent_id'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)>1)
{
$uid='ACHTUNG: Es gibt mehrere Studenteneinträge die auf diesen Prestudenten zeigen!';
}
else
{
if($row_std = pg_fetch_object($result))
{
$uid = $row_std->student_uid;
$gruppe = $row_std->semester.$row_std->verband.$row_std->gruppe;
}
}
}
echo "<td>$uid</td>";
echo "<td>$gruppe</td>";
$prestudent1 = new prestudent($conn);
$prestudent1->getLastStatus($row->prestudent_id);
echo "<td>$prestudent1->status_kurzbz ".($prestudent1->ausbildungssemester!=''?"($prestudent1->ausbildungssemester. Semester)":'')."</td>";
echo '</tr>';
}
echo '</tbody></table>';
}
$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE person_id='$person->person_id'";
if($result = pg_query($conn, $qry))
{
if(pg_num_rows($result)>0)
{
echo '<br><h2>Mitarbeiter</h2>';
echo '<table class="liste table-autosort:0 table-stripeclass:alternate table-autostripe">
<thead>
<tr>
<th>UID</th>
<th>Kurzbz</th>
<th>Lektor</th>
<th>Fixangestellt</th>
<th>Telefonklappe</th>
</tr>
</thead><tbody>';
while($row = pg_fetch_object($result))
{
echo "<tr>";
echo "<td>$row->uid</td>";
echo "<td>$row->kurzbz</td>";
echo "<td>".($row->lektor=='t'?'Ja':'Nein')."</td>";
echo "<td>".($row->fixangestellt=='t'?'Ja':'Nein')."</td>";
echo "<td>$row->telefonklappe</td>";
echo "</tr>";
}
echo '</tbody></table>';
}
}
echo '</body>';
echo '</html>';
?>
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+321 -321
View File
@@ -1,322 +1,322 @@
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/preinteressent.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/prestudent.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz = '';
echo '<html>
<head>
<title>PreInteressenten</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
<h2>PreInteressenten</h2>
';
$stg_admin = $rechte->getStgKz('admin');
$stg_assistenz = $rechte->getStgKz('assistenz');
$stgs = array_merge($stg_admin, $stg_assistenz);
sort($stgs);
//Wenn keine Berechtigung vorhanden ist beenden
if(count($stgs)==0)
die('Sie haben keine Studiengangsberechtigung');
//alle Studiengaenge holen fuer die eine berechtigung vorhanden ist
$qry = "SELECT UPPER(typ::varchar(1) || kurzbz) as kuerzel, studiengang_kz FROM public.tbl_studiengang";
if($stgs[0]!=0)
{
$stgwhere = '';
foreach ($stgs as $stg)
{
if($stgwhere!='')
$stgwhere.=',';
$stgwhere .=$stg;
}
$qry.=" WHERE studiengang_kz in ($stgwhere)";
}
$qry.=" ORDER by kuerzel";
//Drop Down fuer Studiengaenge anzeigen
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiengang: <select name="studiengang_kz">';
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
//wenn kein Studiengang uebergeben wurde dann den ersten nehmen fuer den eine Berechtigung vorhanden ist
if($studiengang_kz=='')
$studiengang_kz = $row->studiengang_kz;
if($row->studiengang_kz == $studiengang_kz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row->studiengang_kz' $selected>$row->kuerzel</option>";
}
}
echo '</select><input type="submit" value="Anzeigen"></form>';
if(!$rechte->isBerechtigt('admin', $studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $studiengang_kz, 'suid'))
die('Sie haben keine Berechtigung fuer diese Seite');
if(isset($_POST['uebertragen']))
{
$anzahl_fehler=0;
$anzahl_uebernommen=0;
foreach ($_POST as $param=>$val)
{
if(mb_strstr($param, 'chk_'))
{
pg_query($conn, 'BEGIN;');
$id = mb_substr($param, 4);
$preinteressent = new preinteressent($conn);
if($preinteressent->load($id))
{
//Prestudent anlegen
$prestudent = new prestudent($conn);
$prestudent->new = true;
$prestudent->aufmerksamdurch_kurzbz = $preinteressent->aufmerksamdurch_kurzbz;
$prestudent->person_id = $preinteressent->person_id;
$prestudent->studiengang_kz = $studiengang_kz;
$prestudent->reihungstestangetreten = false;
$prestudent->bismelden = true;
$prestudent->insertamum = date('Y-m-d H:i:s');
$prestudent->insertvon = $user;
if($prestudent->save())
{
//Rolle anlegen
$prestudent->studiensemester_kurzbz = $preinteressent->studiensemester_kurzbz;
//$preinteressent1 = new preinteressent($conn);
//$preinteressent1->loadStudiengangszuteilung($preinteressent_id, $studiengang_kz);
$prestudent->ausbildungssemester = 1;
$prestudent->status_kurzbz = 'Interessent';
$prestudent->datum = date('Y-m-d');
$prestudent->insertamum = date('Y-m-d H:i:s');
$prestudent->inservon = $user;
if($prestudent->save_rolle(true))
{
//Uebernahme Datum setzen
$qry = "UPDATE public.tbl_preinteressentstudiengang SET
uebernahmedatum='".date('Y-m-d H:i:s')."',
updateamum='".date('Y-m-d H:i:s')."',
updatevon='".$user."'
WHERE studiengang_kz='$studiengang_kz' AND preinteressent_id='$id'";
if(pg_query($conn, $qry))
{
$anzahl_uebernommen++;
pg_query($conn, 'COMMIT');
}
else
{
echo "<br>Fehler beim Eintragen des Uebernahmedatums";
$anzahl_fehler++;
pg_query($conn, 'ROLLBACK');
}
}
else
{
echo "<br>Fehler beim Anlegen der Rolle: $prestudent->errormsg";
pg_query($conn, 'ROLLBACK');
$anzahl_fehler++;
}
}
else
{
echo "<br>Fehler beim Speichern des Prestudenteintrages: $prestudent->errormsg";
pg_query($conn, 'ROLLBACK');
$anzahl_fehler++;
}
}
else
{
echo "<br>PreInteressent mit der ID $id konnte nicht geladen werden";
pg_query($conn, 'ROLLBACK');
$anzahl_fehler++;
}
}
}
echo "<br>Es wurde(n) <b>$anzahl_uebernommen Person(en) uebernommen</b>";
if($anzahl_fehler>0)
echo "<br>Es sind <b>$anzahl_fehler Fehler aufgetreten</b>";
}
if(isset($_GET['type']) && $_GET['type']=='zusammenlegung')
{
if(isset($_GET['preinteressent_id']) && isset($_GET['personneu_id']))
{
$preinteressent_id = $_GET['preinteressent_id'];
$person_id_neu = $_GET['personneu_id'];
if(!is_numeric($preinteressent_id))
die('Preinteressent_id ist ungueltig');
if(!is_numeric($person_id_neu))
die('person_id ist ungueltig');
//Zusammenlegung
//- Kontaktdaten werden zusammengelegt
//- Personendatensatz des Preinteressenten wird verworfen
//- Uebernahmedatum wird gesetzt
pg_query($conn, 'BEGIN;');
$preinteressent=new preinteressent($conn);
$preinteressent->load($preinteressent_id);
$qry = "UPDATE public.tbl_kontakt SET person_id='$person_id_neu' WHERE person_id='$preinteressent->person_id';
UPDATE public.tbl_adresse SET person_id='$person_id_neu' WHERE person_id='$preinteressent->person_id';
UPDATE public.tbl_preinteressent SET person_id='$person_id_neu' WHERE preinteressent_id='$preinteressent_id';
";
if(!pg_query($conn, $qry))
{
pg_query($conn, 'ROLLBACK');
die('Fehler beim Zusammenlegen der Kontaktdaten');
}
$qry = "UPDATE public.tbl_preinteressentstudiengang SET uebernahmedatum='".date('Y-m-d H:i:s')."',
updateamum='".date('Y-m-d H:i:s')."', updatevon='$user'
WHERE preinteressent_id='$preinteressent_id' AND studiengang_kz='".addslashes($studiengang_kz)."'";
if(!pg_query($conn, $qry))
{
pg_query($conn, 'ROLLBACK');
die('Fehler beim Setzen des Uebernahmedatums');
}
pg_query($conn, 'COMMIT');
//Versuchen den Personendatensatz zu loeschen
//(Falls die Person noch irgendwohin referenziert (Firmenbetreuer, Preinteressent,...)
// wird das Loeschen von der DB verhindert, deshalb das @ vor dem pg_query)
$qry = "DELETE FROM public.tbl_person WHERE person_id='$preinteressent->person_id'";
@pg_query($conn, $qry);
echo "<b>Personen wurden zusammengelegt</b>";
}
else
die('Preinteressent_id und personneu_id muss uebergeben werden');
}
echo '<br><br>';
echo "<form action='".$_SERVER['PHP_SELF']."?studiengang_kz=$studiengang_kz' method='POST'>";
echo "<table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>&nbsp;</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>GebDatum</th>
<th class='table-sortable:default'>Studiensemester</th>
<th class='table-sortable:default'>Anmerkung</th>
<th class='table-sortable:default'>Zusammenlegung</th>
</tr>
</thead>
<tbody>";
$preinteressent = new preinteressent($conn);
$preinteressent->loadFreigegebene($studiengang_kz);
foreach ($preinteressent->result as $row)
{
echo '<tr>';
$person = new person($conn);
$person->load($row->person_id);
echo "<td><input type='checkbox' name='chk_$row->preinteressent_id' checked></td>";
echo "<td>$person->nachname</td>";
echo "<td>$person->vorname</td>";
echo "<td>$person->gebdatum</td>";
echo "<td>$row->studiensemester_kurzbz</td>";
echo "<td>$row->anmerkung</td>";
echo "<td>";
//Suchen ob diese Person schon existiert
$qry = "SELECT distinct * FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) WHERE
studiengang_kz='$studiengang_kz' AND (
(vorname='$person->vorname' AND nachname='$person->nachname') ";
if($person->gebdatum!='')
$qry.=" OR (nachname='$person->nachname' AND gebdatum='$person->gebdatum')";
$qry.=")";
if($result_double = pg_query($conn, $qry))
{
if(pg_num_rows($result_double)>0)
{
//wenn zu dieser Person bereits ein Prestudent oder Benutzer existiert,
//dann kann die zusammenlegung nur ueber die administration erfolgen
//(damit wird verhindert, dass unbeabsichtigt verschiedene Personen zusammengelegt werden)
$qry = "SELECT prestudent_id FROM public.tbl_prestudent WHERE person_id='$row->person_id'
UNION
SELECT person_id FROM public.tbl_benutzer WHERE person_id='$row->person_id'
";
if($result_anz = pg_query($conn, $qry))
{
if(pg_num_rows($result_anz)==0)
{
echo '<SELECT name="person_id" id="person_id_'.$row->preinteressent_id.'">';
while($row_double=pg_fetch_object($result_double))
{
echo "<OPTION value='$row_double->person_id'>$row_double->nachname $row_double->vorname $row_double->gebdatum ($row_double->person_id)</OPTION>";
}
echo '</SELECT>';
echo '<INPUT type="button" value="Zusammenlegen" onclick="window.location.href= \''.$_SERVER['PHP_SELF'].'?type=zusammenlegung&studiengang_kz='.$studiengang_kz.'&preinteressent_id='.$row->preinteressent_id.'&personneu_id=\'+document.getElementById(\'person_id_'.$row->preinteressent_id.'\').value;">';
}
else
{
echo 'nur durch Administrator möglich';
}
}
}
}
echo "</td>";
echo '</tr>';
}
echo '</tbody></table><br>';
echo '<input type="submit" value="Uebertragen" name="uebertragen"></form>';
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/preinteressent.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/prestudent.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz = '';
echo '<html>
<head>
<title>PreInteressenten</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
<h2>PreInteressenten</h2>
';
$stg_admin = $rechte->getStgKz('admin');
$stg_assistenz = $rechte->getStgKz('assistenz');
$stgs = array_merge($stg_admin, $stg_assistenz);
sort($stgs);
//Wenn keine Berechtigung vorhanden ist beenden
if(count($stgs)==0)
die('Sie haben keine Studiengangsberechtigung');
//alle Studiengaenge holen fuer die eine berechtigung vorhanden ist
$qry = "SELECT UPPER(typ::varchar(1) || kurzbz) as kuerzel, studiengang_kz FROM public.tbl_studiengang";
if($stgs[0]!=0)
{
$stgwhere = '';
foreach ($stgs as $stg)
{
if($stgwhere!='')
$stgwhere.=',';
$stgwhere .=$stg;
}
$qry.=" WHERE studiengang_kz in ($stgwhere)";
}
$qry.=" ORDER by kuerzel";
//Drop Down fuer Studiengaenge anzeigen
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiengang: <select name="studiengang_kz">';
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
//wenn kein Studiengang uebergeben wurde dann den ersten nehmen fuer den eine Berechtigung vorhanden ist
if($studiengang_kz=='')
$studiengang_kz = $row->studiengang_kz;
if($row->studiengang_kz == $studiengang_kz)
$selected = 'selected';
else
$selected = '';
echo "<option value='$row->studiengang_kz' $selected>$row->kuerzel</option>";
}
}
echo '</select><input type="submit" value="Anzeigen"></form>';
if(!$rechte->isBerechtigt('admin', $studiengang_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $studiengang_kz, 'suid'))
die('Sie haben keine Berechtigung fuer diese Seite');
if(isset($_POST['uebertragen']))
{
$anzahl_fehler=0;
$anzahl_uebernommen=0;
foreach ($_POST as $param=>$val)
{
if(mb_strstr($param, 'chk_'))
{
pg_query($conn, 'BEGIN;');
$id = mb_substr($param, 4);
$preinteressent = new preinteressent($conn);
if($preinteressent->load($id))
{
//Prestudent anlegen
$prestudent = new prestudent($conn);
$prestudent->new = true;
$prestudent->aufmerksamdurch_kurzbz = $preinteressent->aufmerksamdurch_kurzbz;
$prestudent->person_id = $preinteressent->person_id;
$prestudent->studiengang_kz = $studiengang_kz;
$prestudent->reihungstestangetreten = false;
$prestudent->bismelden = true;
$prestudent->insertamum = date('Y-m-d H:i:s');
$prestudent->insertvon = $user;
if($prestudent->save())
{
//Rolle anlegen
$prestudent->studiensemester_kurzbz = $preinteressent->studiensemester_kurzbz;
//$preinteressent1 = new preinteressent($conn);
//$preinteressent1->loadStudiengangszuteilung($preinteressent_id, $studiengang_kz);
$prestudent->ausbildungssemester = 1;
$prestudent->status_kurzbz = 'Interessent';
$prestudent->datum = date('Y-m-d');
$prestudent->insertamum = date('Y-m-d H:i:s');
$prestudent->inservon = $user;
if($prestudent->save_rolle(true))
{
//Uebernahme Datum setzen
$qry = "UPDATE public.tbl_preinteressentstudiengang SET
uebernahmedatum='".date('Y-m-d H:i:s')."',
updateamum='".date('Y-m-d H:i:s')."',
updatevon='".$user."'
WHERE studiengang_kz='$studiengang_kz' AND preinteressent_id='$id'";
if(pg_query($conn, $qry))
{
$anzahl_uebernommen++;
pg_query($conn, 'COMMIT');
}
else
{
echo "<br>Fehler beim Eintragen des Uebernahmedatums";
$anzahl_fehler++;
pg_query($conn, 'ROLLBACK');
}
}
else
{
echo "<br>Fehler beim Anlegen der Rolle: $prestudent->errormsg";
pg_query($conn, 'ROLLBACK');
$anzahl_fehler++;
}
}
else
{
echo "<br>Fehler beim Speichern des Prestudenteintrages: $prestudent->errormsg";
pg_query($conn, 'ROLLBACK');
$anzahl_fehler++;
}
}
else
{
echo "<br>PreInteressent mit der ID $id konnte nicht geladen werden";
pg_query($conn, 'ROLLBACK');
$anzahl_fehler++;
}
}
}
echo "<br>Es wurde(n) <b>$anzahl_uebernommen Person(en) uebernommen</b>";
if($anzahl_fehler>0)
echo "<br>Es sind <b>$anzahl_fehler Fehler aufgetreten</b>";
}
if(isset($_GET['type']) && $_GET['type']=='zusammenlegung')
{
if(isset($_GET['preinteressent_id']) && isset($_GET['personneu_id']))
{
$preinteressent_id = $_GET['preinteressent_id'];
$person_id_neu = $_GET['personneu_id'];
if(!is_numeric($preinteressent_id))
die('Preinteressent_id ist ungueltig');
if(!is_numeric($person_id_neu))
die('person_id ist ungueltig');
//Zusammenlegung
//- Kontaktdaten werden zusammengelegt
//- Personendatensatz des Preinteressenten wird verworfen
//- Uebernahmedatum wird gesetzt
pg_query($conn, 'BEGIN;');
$preinteressent=new preinteressent($conn);
$preinteressent->load($preinteressent_id);
$qry = "UPDATE public.tbl_kontakt SET person_id='$person_id_neu' WHERE person_id='$preinteressent->person_id';
UPDATE public.tbl_adresse SET person_id='$person_id_neu' WHERE person_id='$preinteressent->person_id';
UPDATE public.tbl_preinteressent SET person_id='$person_id_neu' WHERE preinteressent_id='$preinteressent_id';
";
if(!pg_query($conn, $qry))
{
pg_query($conn, 'ROLLBACK');
die('Fehler beim Zusammenlegen der Kontaktdaten');
}
$qry = "UPDATE public.tbl_preinteressentstudiengang SET uebernahmedatum='".date('Y-m-d H:i:s')."',
updateamum='".date('Y-m-d H:i:s')."', updatevon='$user'
WHERE preinteressent_id='$preinteressent_id' AND studiengang_kz='".addslashes($studiengang_kz)."'";
if(!pg_query($conn, $qry))
{
pg_query($conn, 'ROLLBACK');
die('Fehler beim Setzen des Uebernahmedatums');
}
pg_query($conn, 'COMMIT');
//Versuchen den Personendatensatz zu loeschen
//(Falls die Person noch irgendwohin referenziert (Firmenbetreuer, Preinteressent,...)
// wird das Loeschen von der DB verhindert, deshalb das @ vor dem pg_query)
$qry = "DELETE FROM public.tbl_person WHERE person_id='$preinteressent->person_id'";
@pg_query($conn, $qry);
echo "<b>Personen wurden zusammengelegt</b>";
}
else
die('Preinteressent_id und personneu_id muss uebergeben werden');
}
echo '<br><br>';
echo "<form action='".$_SERVER['PHP_SELF']."?studiengang_kz=$studiengang_kz' method='POST'>";
echo "<table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>&nbsp;</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>GebDatum</th>
<th class='table-sortable:default'>Studiensemester</th>
<th class='table-sortable:default'>Anmerkung</th>
<th class='table-sortable:default'>Zusammenlegung</th>
</tr>
</thead>
<tbody>";
$preinteressent = new preinteressent($conn);
$preinteressent->loadFreigegebene($studiengang_kz);
foreach ($preinteressent->result as $row)
{
echo '<tr>';
$person = new person($conn);
$person->load($row->person_id);
echo "<td><input type='checkbox' name='chk_$row->preinteressent_id' checked></td>";
echo "<td>$person->nachname</td>";
echo "<td>$person->vorname</td>";
echo "<td>$person->gebdatum</td>";
echo "<td>$row->studiensemester_kurzbz</td>";
echo "<td>$row->anmerkung</td>";
echo "<td>";
//Suchen ob diese Person schon existiert
$qry = "SELECT distinct * FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) WHERE
studiengang_kz='$studiengang_kz' AND (
(vorname='$person->vorname' AND nachname='$person->nachname') ";
if($person->gebdatum!='')
$qry.=" OR (nachname='$person->nachname' AND gebdatum='$person->gebdatum')";
$qry.=")";
if($result_double = pg_query($conn, $qry))
{
if(pg_num_rows($result_double)>0)
{
//wenn zu dieser Person bereits ein Prestudent oder Benutzer existiert,
//dann kann die zusammenlegung nur ueber die administration erfolgen
//(damit wird verhindert, dass unbeabsichtigt verschiedene Personen zusammengelegt werden)
$qry = "SELECT prestudent_id FROM public.tbl_prestudent WHERE person_id='$row->person_id'
UNION
SELECT person_id FROM public.tbl_benutzer WHERE person_id='$row->person_id'
";
if($result_anz = pg_query($conn, $qry))
{
if(pg_num_rows($result_anz)==0)
{
echo '<SELECT name="person_id" id="person_id_'.$row->preinteressent_id.'">';
while($row_double=pg_fetch_object($result_double))
{
echo "<OPTION value='$row_double->person_id'>$row_double->nachname $row_double->vorname $row_double->gebdatum ($row_double->person_id)</OPTION>";
}
echo '</SELECT>';
echo '<INPUT type="button" value="Zusammenlegen" onclick="window.location.href= \''.$_SERVER['PHP_SELF'].'?type=zusammenlegung&studiengang_kz='.$studiengang_kz.'&preinteressent_id='.$row->preinteressent_id.'&personneu_id=\'+document.getElementById(\'person_id_'.$row->preinteressent_id.'\').value;">';
}
else
{
echo 'nur durch Administrator möglich';
}
}
}
}
echo "</td>";
echo '</tr>';
}
echo '</tbody></table><br>';
echo '<input type="submit" value="Uebertragen" name="uebertragen"></form>';
?>
+455 -455
View File
@@ -1,456 +1,456 @@
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/preinteressent.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/log.class.php');
require_once('../../include/mail.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
$stsem = new studiensemester($conn);
$stsem_aktuell = $stsem->getaktorNext();
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz = '';
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
else
$studiensemester_kurzbz = '-1'; //$stsem_aktuell;
if(isset($_GET['bool_nichtfreigegeben']))
$bool_nichtfreigegeben = true;
else
$bool_nichtfreigegeben = null;
if(isset($_GET['bool_uebernommen']))
$bool_uebernommen = true;
else
$bool_uebernommen = null;
if(isset($_GET['bool_absage']))
$bool_absage = true;
else
$bool_absage = false;
if(isset($_GET['filter']))
$filter = $_GET['filter'];
else
$filter = '';
//Wenn auf Anzeigen geklickt wird, das Suchfeld nicht beruecksichtigen
if(isset($_GET['anzeigen']))
$filter='';
if(isset($_GET['kontaktmedium']))
{
$kontaktmedium = $_GET['kontaktmedium'];
if($kontaktmedium=='')
$kontaktmedium=null;
}
else
$kontaktmedium = null;
if(isset($_GET['erfassungsdatum_bis']) && $_GET['erfassungsdatum_bis']!='')
$erfassungsdatum_bis = $_GET['erfassungsdatum_bis'];
else
$erfassungsdatum_bis=null;
if(isset($_GET['erfassungsdatum_von']) && $_GET['erfassungsdatum_von']!='')
$erfassungsdatum_von = $_GET['erfassungsdatum_von'];
else
$erfassungsdatum_von=null;
//Doctype muss strict sein da sonst im IE der DIV nicht am oberen Rand fixiert ist
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>PreInteressenten</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
<!--
function confdel()
{
if(confirm("Wollen Sie diesen Eintrag wirklich loeschen?"))
return true;
else
return false;
}
function sorttable()
{
//Meister IE braucht ein Timeout sonst sortiert er nicht
window.setTimeout("Table.sort(document.getElementById(\'mytab\'),\'asc\')",10);
}
-->
</script>
</head>
<body class="Background_main" style="margin-top:0px; padding-top:0px;" onload="sorttable()" >
<div style="position: fixed; background-color: white; width: 99%; padding-top:5px;">
<h2>PreInteressenten</h2>
';
if(!$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('preinteressent', null, 'suid'))
die('Sie haben keine Berechtigung fuer diese Seite');
//DROP DOWNs anzeigen
echo "<table width='100%'><tr><td><form action='".$_SERVER['PHP_SELF']."' method='GET'>";
echo '<table><tr><td>Studiensemester: <SELECT name="studiensemester_kurzbz">';
$stsem = new studiensemester($conn);
$stsem->getAll();
echo "<option value='-1' ".($studiensemester_kurzbz=='-1'?'selected':'').">-- alle --</option>";
echo "<option value='' ".($studiensemester_kurzbz==''?'selected':'').">-- offen --</option>";
foreach ($stsem->studiensemester as $row)
{
if($row->studiensemester_kurzbz==$studiensemester_kurzbz)
$selected='selected';
else
$selected='';
echo "<option value='$row->studiensemester_kurzbz' $selected>$row->studiensemester_kurzbz</option>";
}
echo '</SELECT>';
echo '&nbsp;&nbsp;&nbsp;Studiengang: <SELECT name="studiengang_kz">';
echo "<option value=''>-- Alle --</option>";
$stg = new studiengang($conn);
$stg->getAll('typ, kurzbz');
foreach ($stg->result as $row)
{
if($row->studiengang_kz==$studiengang_kz)
$selected='selected';
else
$selected='';
echo "<option value='$row->studiengang_kz' $selected>$row->kuerzel</option>";
}
echo '</SELECT></td><td>';
echo '<input type="checkbox" name="bool_nichtfreigegeben" '.($bool_nichtfreigegeben?'checked':'').'> nicht freigegeben';
echo '<input type="checkbox" name="bool_absage" '.($bool_absage?'checked':'').'> Absage<br>';
echo '<input type="checkbox" name="bool_uebernommen" '.($bool_uebernommen?'checked':'').'> freigegeben aber nicht &uuml;bernommen</td><td>';
echo '&nbsp;&nbsp;&nbsp;<input type="submit" name="anzeigen" value="Anzeigen"></td></tr>';
echo '<tr><td>Kontaktmedium: <SELECT name="kontaktmedium">';
$qry="SELECT * FROM public.tbl_kontaktmedium ORDER BY beschreibung";
echo "<option value='' >-- Alle --</option>";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($row->kontaktmedium_kurzbz==$kontaktmedium)
$selected='selected';
else
$selected='';
echo "<option value='$row->kontaktmedium_kurzbz' $selected>$row->beschreibung</option>";
}
}
echo '</SELECT></td><td>';
echo 'Erf. von <input type="text" size="10" maxlength="10" name="erfassungsdatum_von" value="'.$erfassungsdatum_von.'">';
echo 'Erf. bis <input type="text" size="10" maxlength="10" name="erfassungsdatum_bis" value="'.$erfassungsdatum_bis.'">';
echo '</td></tr>';
echo '</table>';
//echo '</form>';
echo '</td><td>';
//echo "<form action='".$_SERVER['PHP_SELF']."' method='GET'>";
echo "<input type='text' value='".$filter."' name='filter'>&nbsp;";
echo "<input type='submit' size='10' name='suchen' value='Suchen'>";
echo '</form></td>';
echo '<td align="right"><a href="preinteressent_anlegen.php" target="_blank">neuen Preinteressenten anlegen</a></td></tr></table>';
//FREIGEBEN / LOESCHEN
if(isset($_GET['action']))
{
if($_GET['action']=='freigabe')
{
$preinteressent = new preinteressent($conn);
$preinteressent->load($_GET['id']);
if($preinteressent->studiensemester_kurzbz!='')
{
$errormsg = '';
$anzahl_freigegeben=0;
$anzahl_fehler=0;
$qry = "SELECT * FROM public.tbl_preinteressentstudiengang
WHERE preinteressent_id='".addslashes($_GET['id'])."'
AND prioritaet = (SELECT max(prioritaet)
FROM public.tbl_preinteressentstudiengang
WHERE preinteressent_id='".addslashes($_GET['id'])."')
AND freigabedatum is null";
//Zuordnungen holen die noch nicht freigegeben wurden und die hoechste Prioritaet haben
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
//Nur diejenigen nehmen die noch nicht als Prestudent vorhanden sind
$qry = "SELECT count(*) as anzahl FROM public.tbl_preinteressent JOIN public.tbl_prestudent USING(person_id) WHERE preinteressent_id='$row->preinteressent_id' AND studiengang_kz='$row->studiengang_kz'";
if($result_std = pg_query($conn, $qry))
{
if($row_std = pg_fetch_object($result_std))
{
if($row_std->anzahl==0)
{
$preinteressent = new preinteressent($conn);
$preinteressent->loadZuordnung($row->preinteressent_id, $row->studiengang_kz);
$preinteressent->freigabedatum = date('Y-m-d H:i:s');
$preinteressent->updateamum = date('Y-m-d H:i:s');
$preinteressent->updatevon = $user;
if($preinteressent->saveZuordnung(false))
{
//MAIL an Assistenz verschicken
$qry_person = "SELECT vorname, nachname
FROM public.tbl_person JOIN public.tbl_preinteressent USING(person_id)
WHERE preinteressent_id='$row->preinteressent_id'";
$name='';
if($result_person = pg_query($conn, $qry_person))
if($row_person = pg_fetch_object($result_person))
$name = $row_person->nachname.' '.$row_person->vorname;
$stg_obj = new studiengang($conn);
$stg_obj->load($row->studiengang_kz);
$to = $stg_obj->email;
//$to = 'oesi@technikum-wien.at';
$message = "Dies ist eine automatische Mail! $stg_obj->email\n\n".
"Der Preinteressent $name wurde zur Übernahme freigegeben. \nSie können diesen ".
"im FAS unter 'Extras->Preinteressenten übernehmen' oder unter folgendem Link\n\n".
APP_ROOT."vilesci/personen/preinteressent_uebernahme.php?studiengang_kz=$row->studiengang_kz \n".
"ins FAS übertragen";
$mail = new mail($to, 'vilesci@'.DOMAIN, 'Preinteressent Freigabe', $message);
if($mail->send())
echo "<br><b>Freigabemail wurde an $to versendet</b>";
else
echo "<br><b>Fehler beim Versenden des Freigabemails an $to</b>";
$anzahl_freigegeben++;
}
else
{
$anzahl_fehler++;
$errormsg.="<br>Fehler bei der Freigabe von ".$studiengang->kuerzel_arr[$row->studiengang_kz].": $preinteressent->errormsg";
}
}
}
}
}
}
echo "<br><b>Es wurden $anzahl_freigegeben Studiengänge freigegeben<br>";
echo "<script language='Javascript'>
parent.preinteressent_detail.location.href = \"preinteressent_detail.php?id=".$_GET['id']."&selection=\"+parent.preinteressent_detail.selection;
</script>";
if($anzahl_fehler>0)
echo "Es sind $anzahl_fehler Fehler aufgetreten: $errormsg";
echo '</b>';
}
else
{
echo '<b>Es können nur Preinteressenten freigegeben werden, bei denen ein Studiensemester angegeben wurde</b>';
}
}
elseif($_GET['action']=='loeschen')
{
//Loeschen eines Preinteressenten
$preinteressent = new preinteressent($conn);
if($preinteressent->load($_GET['id']))
{
if($preinteressent->delete($preinteressent->preinteressent_id))
{
echo '<br><b>Datensatz wurde geloescht</b>';
}
else
{
echo "<br><b>Fehler beim Löschen: $preinteressent->errormsg</b>";
}
}
else
{
echo "<br><b>Fehler beim Laden des Datensatzes. Daten wurden NICHT gelöscht</b>";
}
}
}
//Datum pruefen
if($erfassungsdatum_bis!='' && !$datum_obj->formatDatum($erfassungsdatum_bis))
die('Erf.bis Datum ist ungueltig');
if($erfassungsdatum_von!='' && !$datum_obj->formatDatum($erfassungsdatum_von))
die('Erf.von Datum ist ungueltig');
$preinteressent = new preinteressent($conn);
//if($filter=='')
if($datum_obj->formatDatum($filter, 'Y-m-d', true))
$filter = $datum_obj->formatDatum($filter, 'Y-m-d', true);
$preinteressent->loadPreinteressenten($studiengang_kz, ($studiensemester_kurzbz!='-1'?$studiensemester_kurzbz:null), $filter, $bool_nichtfreigegeben, $bool_uebernommen, $kontaktmedium, $bool_absage, $erfassungsdatum_von, $erfassungsdatum_bis);
/*else
{
//Falls im Filter-Feld ein Datum steht dann wird dieses umformatiert
if($datum_obj->formatDatum($filter, 'Y-m-d'))
$filter = $datum_obj->formatDatum($filter, 'Y-m-d');
$preinteressent->loadPreinteressenten(null, null, $filter);
}*/
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
function CutString($strVal, $limit)
{
if(strlen($strVal) > $limit+3)
{
return substr($strVal, 0, $limit) . "...";
}
else
{
return $strVal;
}
}
echo 'Anzahl: '.count($preinteressent->result);
echo '</div>'; // Fixiertes Div mit den Filtern
echo '<br><br><br><br><br><br><br>';
//TABELLE ANZEIGEN
echo '<br>';
echo "<table id='mytab' class='liste table-autosort:4 table-stripeclass:alternate table-autostripe' style='font-size:15px;'>
<thead>
<tr>
<th class='table-sortable:numeric'>ID</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>StSem</th>
<th class='table-sortable:default'>Erf.datum</th>
<th class='table-sortable:default'>G</th>
<th class='table-sortable:default'>E-Mail</th>
<th class='table-sortable:default'>Status</th>
<th class='table-sortable:default'>Freigabe</th>
<th class='table-sortable:default'>&Uuml;bernahme</th>
<th class='table-sortable:default'>Anmerkung</th>
<th>Aktion</th>
</tr>
</thead>
<tbody>";
foreach ($preinteressent->result as $row)
{
echo '<tr>';
$person = new person($conn);
$person->load($row->person_id);
echo "<td>$person->person_id</td>";
echo "<td>$person->nachname</td>";
echo "<td>$person->vorname</td>";
//echo "<td>".$datum_obj->convertISODate($person->gebdatum)."</td>";
echo "<td>$row->studiensemester_kurzbz</td>";
echo "<td><span style='display: none'>$row->erfassungsdatum</span>".$datum_obj->formatDatum($row->erfassungsdatum,'d.m.Y')."</td>";
echo "<td>$person->geschlecht</td>";
//EMail
$qry = "SELECT kontakt FROM public.tbl_kontakt WHERE person_id='$person->person_id' AND kontakttyp='email'
ORDER BY zustellung DESC LIMIT 1";
echo '<td>';
if($result_mail = pg_query($conn, $qry))
{
if($row_mail = pg_fetch_object($result_mail))
{
echo '<a href="mailto:'.$row_mail->kontakt.'" class="Item">'.$row_mail->kontakt.'</a>';
}
}
echo '</td>';
//Status
$status='';
$prestudent = new prestudent($conn);
if($prestudent->getPrestudenten($row->person_id))
{
foreach ($prestudent->result as $prestd)
{
if($status!='')
$status.=', ';
$prestudent1 = new prestudent($conn);
$prestudent1->getLastStatus($prestd->prestudent_id);
$status.= $prestudent1->status_kurzbz.' ('.$stg_obj->kuerzel_arr[$prestd->studiengang_kz].')';
}
}
if($status=='')
$status='Preinteressent';
echo "<td>$status</td>";
//Zuordnungen laden und freigegebene Eintraege farblich markieren
$freigaben = new preinteressent($conn);
$freigaben->loadZuordnungen($row->preinteressent_id);
$freigabe='';
$uebernahme='';
foreach ($freigaben->result as $row_freigaben)
{
//auch jene als freigegeben anzeigen die schon im studiengang angelegt sind
//obwohl der preinteressent nicht freigegeben wurde. (bewerbung direkt beim studiengang)
$qry = "SELECT prestudent_id FROM public.tbl_prestudent WHERE person_id='$row->person_id' AND studiengang_kz='$row_freigaben->studiengang_kz'";
$result_chkstg = pg_query($conn, $qry);
if($row_freigaben->freigabedatum!='' || pg_num_rows($result_chkstg)>0)
$freigabe.="<font color='#009900'>";
else
$freigabe.="<font color='#FF0000'>";
$freigabe.=$stg_obj->kuerzel_arr[$row_freigaben->studiengang_kz]."($row_freigaben->prioritaet)";
$freigabe.='</font> ';
if($row_freigaben->freigabedatum!='')
{
if($row_freigaben->uebernahmedatum!='')
$uebernahme.="<font color='#009900'>";
else
$uebernahme.="<font color='#FF0000'>";
$uebernahme.=$stg_obj->kuerzel_arr[$row_freigaben->studiengang_kz];
$uebernahme.='</font> ';
}
}
echo "<td>$freigabe</td>";
echo "<td>$uebernahme</td>";
echo "<td title='".$row->anmerkung."'>".CutString($row->anmerkung, 20)."</td>";
echo '<td>';
echo " <input style='padding:0px;' type='button' onclick=\"window.open('personendetails.php?id=$row->person_id','_blank')\" value='Gesamtübersicht' title='Zeigt die Details dieser Person an'>";
echo " <input style='padding:0px;' type='button' onclick='parent.preinteressent_detail.location.href = \"preinteressent_detail.php?id=$row->preinteressent_id&selection=\"+parent.preinteressent_detail.selection; return false;' value='Bearbeiten' title='Zeigt die Details dieser Person an'>";
echo " <input style='padding:0px;' type='button' onclick=\"window.location.href='".$_SERVER['PHP_SELF']."?id=$row->preinteressent_id&action=freigabe&studiensemester_kurzbz=$studiensemester_kurzbz&studiengang_kz=$studiengang_kz&filter=$filter'\" value='Freigeben' title='Gibt alle Studiengänge mit der höchsten Priorität frei'>";
echo " <input style='padding:0px;' type='button' onclick=\"if(confdel()) {window.location.href='".$_SERVER['PHP_SELF']."?id=$row->preinteressent_id&action=loeschen&studiensemester_kurzbz=$studiensemester_kurzbz&studiengang_kz=$studiengang_kz&filter=$filter'}\" value='Löschen' title='Löscht diesen Preinteressenten'>";
echo '</td>';
echo '</tr>';
}
echo '</tbody></table><br>';
echo '</body>';
echo '</html>';
<?php
/* Copyright (C) 2007 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/preinteressent.class.php');
require_once('../../include/person.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/log.class.php');
require_once('../../include/mail.class.php');
if(!$conn=pg_pconnect(CONN_STRING))
die("Konnte Verbindung zur Datenbank nicht herstellen");
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
$datum_obj = new datum();
$stsem = new studiensemester($conn);
$stsem_aktuell = $stsem->getaktorNext();
if(isset($_GET['studiengang_kz']))
$studiengang_kz = $_GET['studiengang_kz'];
else
$studiengang_kz = '';
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
else
$studiensemester_kurzbz = '-1'; //$stsem_aktuell;
if(isset($_GET['bool_nichtfreigegeben']))
$bool_nichtfreigegeben = true;
else
$bool_nichtfreigegeben = null;
if(isset($_GET['bool_uebernommen']))
$bool_uebernommen = true;
else
$bool_uebernommen = null;
if(isset($_GET['bool_absage']))
$bool_absage = true;
else
$bool_absage = false;
if(isset($_GET['filter']))
$filter = $_GET['filter'];
else
$filter = '';
//Wenn auf Anzeigen geklickt wird, das Suchfeld nicht beruecksichtigen
if(isset($_GET['anzeigen']))
$filter='';
if(isset($_GET['kontaktmedium']))
{
$kontaktmedium = $_GET['kontaktmedium'];
if($kontaktmedium=='')
$kontaktmedium=null;
}
else
$kontaktmedium = null;
if(isset($_GET['erfassungsdatum_bis']) && $_GET['erfassungsdatum_bis']!='')
$erfassungsdatum_bis = $_GET['erfassungsdatum_bis'];
else
$erfassungsdatum_bis=null;
if(isset($_GET['erfassungsdatum_von']) && $_GET['erfassungsdatum_von']!='')
$erfassungsdatum_von = $_GET['erfassungsdatum_von'];
else
$erfassungsdatum_von=null;
//Doctype muss strict sein da sonst im IE der DIV nicht am oberen Rand fixiert ist
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>PreInteressenten</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
<!--
function confdel()
{
if(confirm("Wollen Sie diesen Eintrag wirklich loeschen?"))
return true;
else
return false;
}
function sorttable()
{
//Meister IE braucht ein Timeout sonst sortiert er nicht
window.setTimeout("Table.sort(document.getElementById(\'mytab\'),\'asc\')",10);
}
-->
</script>
</head>
<body class="Background_main" style="margin-top:0px; padding-top:0px;" onload="sorttable()" >
<div style="position: fixed; background-color: white; width: 99%; padding-top:5px;">
<h2>PreInteressenten</h2>
';
if(!$rechte->isBerechtigt('admin', null, 'suid') &&
!$rechte->isBerechtigt('preinteressent', null, 'suid'))
die('Sie haben keine Berechtigung fuer diese Seite');
//DROP DOWNs anzeigen
echo "<table width='100%'><tr><td><form action='".$_SERVER['PHP_SELF']."' method='GET'>";
echo '<table><tr><td>Studiensemester: <SELECT name="studiensemester_kurzbz">';
$stsem = new studiensemester($conn);
$stsem->getAll();
echo "<option value='-1' ".($studiensemester_kurzbz=='-1'?'selected':'').">-- alle --</option>";
echo "<option value='' ".($studiensemester_kurzbz==''?'selected':'').">-- offen --</option>";
foreach ($stsem->studiensemester as $row)
{
if($row->studiensemester_kurzbz==$studiensemester_kurzbz)
$selected='selected';
else
$selected='';
echo "<option value='$row->studiensemester_kurzbz' $selected>$row->studiensemester_kurzbz</option>";
}
echo '</SELECT>';
echo '&nbsp;&nbsp;&nbsp;Studiengang: <SELECT name="studiengang_kz">';
echo "<option value=''>-- Alle --</option>";
$stg = new studiengang($conn);
$stg->getAll('typ, kurzbz');
foreach ($stg->result as $row)
{
if($row->studiengang_kz==$studiengang_kz)
$selected='selected';
else
$selected='';
echo "<option value='$row->studiengang_kz' $selected>$row->kuerzel</option>";
}
echo '</SELECT></td><td>';
echo '<input type="checkbox" name="bool_nichtfreigegeben" '.($bool_nichtfreigegeben?'checked':'').'> nicht freigegeben';
echo '<input type="checkbox" name="bool_absage" '.($bool_absage?'checked':'').'> Absage<br>';
echo '<input type="checkbox" name="bool_uebernommen" '.($bool_uebernommen?'checked':'').'> freigegeben aber nicht &uuml;bernommen</td><td>';
echo '&nbsp;&nbsp;&nbsp;<input type="submit" name="anzeigen" value="Anzeigen"></td></tr>';
echo '<tr><td>Kontaktmedium: <SELECT name="kontaktmedium">';
$qry="SELECT * FROM public.tbl_kontaktmedium ORDER BY beschreibung";
echo "<option value='' >-- Alle --</option>";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($row->kontaktmedium_kurzbz==$kontaktmedium)
$selected='selected';
else
$selected='';
echo "<option value='$row->kontaktmedium_kurzbz' $selected>$row->beschreibung</option>";
}
}
echo '</SELECT></td><td>';
echo 'Erf. von <input type="text" size="10" maxlength="10" name="erfassungsdatum_von" value="'.$erfassungsdatum_von.'">';
echo 'Erf. bis <input type="text" size="10" maxlength="10" name="erfassungsdatum_bis" value="'.$erfassungsdatum_bis.'">';
echo '</td></tr>';
echo '</table>';
//echo '</form>';
echo '</td><td>';
//echo "<form action='".$_SERVER['PHP_SELF']."' method='GET'>";
echo "<input type='text' value='".$filter."' name='filter'>&nbsp;";
echo "<input type='submit' size='10' name='suchen' value='Suchen'>";
echo '</form></td>';
echo '<td align="right"><a href="preinteressent_anlegen.php" target="_blank">neuen Preinteressenten anlegen</a></td></tr></table>';
//FREIGEBEN / LOESCHEN
if(isset($_GET['action']))
{
if($_GET['action']=='freigabe')
{
$preinteressent = new preinteressent($conn);
$preinteressent->load($_GET['id']);
if($preinteressent->studiensemester_kurzbz!='')
{
$errormsg = '';
$anzahl_freigegeben=0;
$anzahl_fehler=0;
$qry = "SELECT * FROM public.tbl_preinteressentstudiengang
WHERE preinteressent_id='".addslashes($_GET['id'])."'
AND prioritaet = (SELECT max(prioritaet)
FROM public.tbl_preinteressentstudiengang
WHERE preinteressent_id='".addslashes($_GET['id'])."')
AND freigabedatum is null";
//Zuordnungen holen die noch nicht freigegeben wurden und die hoechste Prioritaet haben
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
//Nur diejenigen nehmen die noch nicht als Prestudent vorhanden sind
$qry = "SELECT count(*) as anzahl FROM public.tbl_preinteressent JOIN public.tbl_prestudent USING(person_id) WHERE preinteressent_id='$row->preinteressent_id' AND studiengang_kz='$row->studiengang_kz'";
if($result_std = pg_query($conn, $qry))
{
if($row_std = pg_fetch_object($result_std))
{
if($row_std->anzahl==0)
{
$preinteressent = new preinteressent($conn);
$preinteressent->loadZuordnung($row->preinteressent_id, $row->studiengang_kz);
$preinteressent->freigabedatum = date('Y-m-d H:i:s');
$preinteressent->updateamum = date('Y-m-d H:i:s');
$preinteressent->updatevon = $user;
if($preinteressent->saveZuordnung(false))
{
//MAIL an Assistenz verschicken
$qry_person = "SELECT vorname, nachname
FROM public.tbl_person JOIN public.tbl_preinteressent USING(person_id)
WHERE preinteressent_id='$row->preinteressent_id'";
$name='';
if($result_person = pg_query($conn, $qry_person))
if($row_person = pg_fetch_object($result_person))
$name = $row_person->nachname.' '.$row_person->vorname;
$stg_obj = new studiengang($conn);
$stg_obj->load($row->studiengang_kz);
$to = $stg_obj->email;
//$to = 'oesi@technikum-wien.at';
$message = "Dies ist eine automatische Mail! $stg_obj->email\n\n".
"Der Preinteressent $name wurde zur Übernahme freigegeben. \nSie können diesen ".
"im FAS unter 'Extras->Preinteressenten übernehmen' oder unter folgendem Link\n\n".
APP_ROOT."vilesci/personen/preinteressent_uebernahme.php?studiengang_kz=$row->studiengang_kz \n".
"ins FAS übertragen";
$mail = new mail($to, 'vilesci@'.DOMAIN, 'Preinteressent Freigabe', $message);
if($mail->send())
echo "<br><b>Freigabemail wurde an $to versendet</b>";
else
echo "<br><b>Fehler beim Versenden des Freigabemails an $to</b>";
$anzahl_freigegeben++;
}
else
{
$anzahl_fehler++;
$errormsg.="<br>Fehler bei der Freigabe von ".$studiengang->kuerzel_arr[$row->studiengang_kz].": $preinteressent->errormsg";
}
}
}
}
}
}
echo "<br><b>Es wurden $anzahl_freigegeben Studiengänge freigegeben<br>";
echo "<script language='Javascript'>
parent.preinteressent_detail.location.href = \"preinteressent_detail.php?id=".$_GET['id']."&selection=\"+parent.preinteressent_detail.selection;
</script>";
if($anzahl_fehler>0)
echo "Es sind $anzahl_fehler Fehler aufgetreten: $errormsg";
echo '</b>';
}
else
{
echo '<b>Es können nur Preinteressenten freigegeben werden, bei denen ein Studiensemester angegeben wurde</b>';
}
}
elseif($_GET['action']=='loeschen')
{
//Loeschen eines Preinteressenten
$preinteressent = new preinteressent($conn);
if($preinteressent->load($_GET['id']))
{
if($preinteressent->delete($preinteressent->preinteressent_id))
{
echo '<br><b>Datensatz wurde geloescht</b>';
}
else
{
echo "<br><b>Fehler beim Löschen: $preinteressent->errormsg</b>";
}
}
else
{
echo "<br><b>Fehler beim Laden des Datensatzes. Daten wurden NICHT gelöscht</b>";
}
}
}
//Datum pruefen
if($erfassungsdatum_bis!='' && !$datum_obj->formatDatum($erfassungsdatum_bis))
die('Erf.bis Datum ist ungueltig');
if($erfassungsdatum_von!='' && !$datum_obj->formatDatum($erfassungsdatum_von))
die('Erf.von Datum ist ungueltig');
$preinteressent = new preinteressent($conn);
//if($filter=='')
if($datum_obj->formatDatum($filter, 'Y-m-d', true))
$filter = $datum_obj->formatDatum($filter, 'Y-m-d', true);
$preinteressent->loadPreinteressenten($studiengang_kz, ($studiensemester_kurzbz!='-1'?$studiensemester_kurzbz:null), $filter, $bool_nichtfreigegeben, $bool_uebernommen, $kontaktmedium, $bool_absage, $erfassungsdatum_von, $erfassungsdatum_bis);
/*else
{
//Falls im Filter-Feld ein Datum steht dann wird dieses umformatiert
if($datum_obj->formatDatum($filter, 'Y-m-d'))
$filter = $datum_obj->formatDatum($filter, 'Y-m-d');
$preinteressent->loadPreinteressenten(null, null, $filter);
}*/
$stg_obj = new studiengang($conn);
$stg_obj->getAll('typ, kurzbz', false);
function CutString($strVal, $limit)
{
if(strlen($strVal) > $limit+3)
{
return substr($strVal, 0, $limit) . "...";
}
else
{
return $strVal;
}
}
echo 'Anzahl: '.count($preinteressent->result);
echo '</div>'; // Fixiertes Div mit den Filtern
echo '<br><br><br><br><br><br><br>';
//TABELLE ANZEIGEN
echo '<br>';
echo "<table id='mytab' class='liste table-autosort:4 table-stripeclass:alternate table-autostripe' style='font-size:15px;'>
<thead>
<tr>
<th class='table-sortable:numeric'>ID</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>StSem</th>
<th class='table-sortable:default'>Erf.datum</th>
<th class='table-sortable:default'>G</th>
<th class='table-sortable:default'>E-Mail</th>
<th class='table-sortable:default'>Status</th>
<th class='table-sortable:default'>Freigabe</th>
<th class='table-sortable:default'>&Uuml;bernahme</th>
<th class='table-sortable:default'>Anmerkung</th>
<th>Aktion</th>
</tr>
</thead>
<tbody>";
foreach ($preinteressent->result as $row)
{
echo '<tr>';
$person = new person($conn);
$person->load($row->person_id);
echo "<td>$person->person_id</td>";
echo "<td>$person->nachname</td>";
echo "<td>$person->vorname</td>";
//echo "<td>".$datum_obj->convertISODate($person->gebdatum)."</td>";
echo "<td>$row->studiensemester_kurzbz</td>";
echo "<td><span style='display: none'>$row->erfassungsdatum</span>".$datum_obj->formatDatum($row->erfassungsdatum,'d.m.Y')."</td>";
echo "<td>$person->geschlecht</td>";
//EMail
$qry = "SELECT kontakt FROM public.tbl_kontakt WHERE person_id='$person->person_id' AND kontakttyp='email'
ORDER BY zustellung DESC LIMIT 1";
echo '<td>';
if($result_mail = pg_query($conn, $qry))
{
if($row_mail = pg_fetch_object($result_mail))
{
echo '<a href="mailto:'.$row_mail->kontakt.'" class="Item">'.$row_mail->kontakt.'</a>';
}
}
echo '</td>';
//Status
$status='';
$prestudent = new prestudent($conn);
if($prestudent->getPrestudenten($row->person_id))
{
foreach ($prestudent->result as $prestd)
{
if($status!='')
$status.=', ';
$prestudent1 = new prestudent($conn);
$prestudent1->getLastStatus($prestd->prestudent_id);
$status.= $prestudent1->status_kurzbz.' ('.$stg_obj->kuerzel_arr[$prestd->studiengang_kz].')';
}
}
if($status=='')
$status='Preinteressent';
echo "<td>$status</td>";
//Zuordnungen laden und freigegebene Eintraege farblich markieren
$freigaben = new preinteressent($conn);
$freigaben->loadZuordnungen($row->preinteressent_id);
$freigabe='';
$uebernahme='';
foreach ($freigaben->result as $row_freigaben)
{
//auch jene als freigegeben anzeigen die schon im studiengang angelegt sind
//obwohl der preinteressent nicht freigegeben wurde. (bewerbung direkt beim studiengang)
$qry = "SELECT prestudent_id FROM public.tbl_prestudent WHERE person_id='$row->person_id' AND studiengang_kz='$row_freigaben->studiengang_kz'";
$result_chkstg = pg_query($conn, $qry);
if($row_freigaben->freigabedatum!='' || pg_num_rows($result_chkstg)>0)
$freigabe.="<font color='#009900'>";
else
$freigabe.="<font color='#FF0000'>";
$freigabe.=$stg_obj->kuerzel_arr[$row_freigaben->studiengang_kz]."($row_freigaben->prioritaet)";
$freigabe.='</font> ';
if($row_freigaben->freigabedatum!='')
{
if($row_freigaben->uebernahmedatum!='')
$uebernahme.="<font color='#009900'>";
else
$uebernahme.="<font color='#FF0000'>";
$uebernahme.=$stg_obj->kuerzel_arr[$row_freigaben->studiengang_kz];
$uebernahme.='</font> ';
}
}
echo "<td>$freigabe</td>";
echo "<td>$uebernahme</td>";
echo "<td title='".$row->anmerkung."'>".CutString($row->anmerkung, 20)."</td>";
echo '<td>';
echo " <input style='padding:0px;' type='button' onclick=\"window.open('personendetails.php?id=$row->person_id','_blank')\" value='Gesamtübersicht' title='Zeigt die Details dieser Person an'>";
echo " <input style='padding:0px;' type='button' onclick='parent.preinteressent_detail.location.href = \"preinteressent_detail.php?id=$row->preinteressent_id&selection=\"+parent.preinteressent_detail.selection; return false;' value='Bearbeiten' title='Zeigt die Details dieser Person an'>";
echo " <input style='padding:0px;' type='button' onclick=\"window.location.href='".$_SERVER['PHP_SELF']."?id=$row->preinteressent_id&action=freigabe&studiensemester_kurzbz=$studiensemester_kurzbz&studiengang_kz=$studiengang_kz&filter=$filter'\" value='Freigeben' title='Gibt alle Studiengänge mit der höchsten Priorität frei'>";
echo " <input style='padding:0px;' type='button' onclick=\"if(confdel()) {window.location.href='".$_SERVER['PHP_SELF']."?id=$row->preinteressent_id&action=loeschen&studiensemester_kurzbz=$studiensemester_kurzbz&studiengang_kz=$studiengang_kz&filter=$filter'}\" value='Löschen' title='Löscht diesen Preinteressenten'>";
echo '</td>';
echo '</tr>';
}
echo '</tbody></table><br>';
echo '</body>';
echo '</html>';
?>
+1 -1
View File
@@ -100,7 +100,7 @@ if(isset($_GET['type']) && $_GET['type']=='edit' && isset($_GET['uid']))
</tr>
</table>
</form>';
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if($rechte->isBerechtigt('admin', '0', 'suid'))
{
+325 -325
View File
@@ -1,326 +1,326 @@
<?php
/* Copyright (C) 2009 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>
*/
/**
*
* Seite zur Verwaltung der Urlaubs- und Zeitausgleichstage der Mitarbeiter
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/zeitsperre.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/mitarbeiter.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
if(!$conn = @pg_pconnect(CONN_STRING))
die('Verbindung zur Datenbank fehlgeschlagen');
$user = get_uid();
$datum = new datum();
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
$zeitsperre_id=(isset($_REQUEST['zeitsperre_id'])?$_REQUEST['zeitsperre_id']:'');
$action = (isset($_GET['action'])?$_GET['action']:'');
$zeitsperretyp_kurzbz=(isset($_POST['zeitsperretyp_kurzbz'])?$_POST['zeitsperretyp_kurzbz']:'');
$bezeichnung=(isset($_POST['bezeichnung'])?$_POST['bezeichnung']:'');
$vondatum=(isset($_POST['von'])?$_POST['von']:'');
$vonstunde=(isset($_POST['vonstunde'])?$_POST['vonstunde']:'');
$bisdatum=(isset($_POST['bis'])?$_POST['bis']:'');
$bisstunde=(isset($_POST['bisstunde'])?$_POST['bisstunde']:'');
$vertretung_uid=(isset($_POST['vertretung_uid'])?$_POST['vertretung_uid']:'');
$erreichbarkeit_kurzbz=(isset($_POST['erreichbarkeit_kurzbz'])?$_POST['erreichbarkeit_kurzbz']:'');
$errormsg='';
$message='';
$error=false;
//Kopfzeile
echo '<html>
<head>
<title>Urlaubsverwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function confdel(val)
{
return confirm("Wollen Sie diesen Eintrag wirklich loeschen: "+val);
}
</script>
</head>
<body class="Background_main">
<h2>Urlaubsverwaltung</h2>
';
//Rechte Pruefen
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Sie haben keine Berechtigung für diese Seite');
//Formular zur Eingabe der UID
echo '<form accept-charset="UTF-8" action="'.$_SERVER['PHP_SELF'].'" mehtod="GET">';
echo 'Zeitsperren des Mitarbeiters mit der UID <input type="text" name="uid" value="'.$uid.'">';
echo '<input type="submit" name="submit" value="Anzeigen">';
echo '</form>';
//Loeschen von Zeitsperren
if($action=='delete')
{
if($zeitsperre_id!='' && is_numeric($zeitsperre_id))
{
$zeitsperre = new zeitsperre($conn);
if($zeitsperre->delete($zeitsperre_id))
$message='Zeitsperre wurde geloescht';
else
$errormsg='Fehler beim Loeschen der Zeitsperre';
}
else
$errormsg='Zeitsperre_id ist ungueltig';
}
if(isset($_POST['save']))
{
//Speichern der Daten
$zeitsperre = new zeitsperre($conn);
if($zeitsperre_id!='')
{
if(!$zeitsperre->load($zeitsperre_id))
{
$errormsg='Zeitsperre konnte nicht geladen werden';
$error=true;
}
$zeitsperre->new = false;
}
else
{
$zeitsperre->insertamum=date('Y-m-d H:i:s');
$zeitsperre->insertvon = $user;
$zeitsperre->new=true;
$zeitsperre->mitarbeiter_uid=$uid;
}
if(!$error)
{
$zeitsperre->zeitsperretyp_kurzbz=$zeitsperretyp_kurzbz;
$zeitsperre->bezeichnung = $bezeichnung;
$zeitsperre->vondatum = $vondatum;
$zeitsperre->vonstunde = $vonstunde;
$zeitsperre->bisdatum = $bisdatum;
$zeitsperre->bisstunde = $bisstunde;
$zeitsperre->vertretung_uid = $vertretung_uid;
$zeitsperre->erreichbarkeit_kurzbz = $erreichbarkeit_kurzbz;
$zeitsperre->updateamum = date('Y-m-d H:i:s');
$zeitsperre->udpatevon = $user;
if($zeitsperre->save())
{
$message = 'Daten wurden erfolgreich gespeichert';
}
else
{
$errormsg = "Fehler beim Speichern der Daten: $zeitsperre->errormsg";
}
}
}
//Statusmeldungen ausgeben
if($errormsg!='')
echo "<br><div class='inserterror'>$errormsg</div><br>";
if($message!='')
echo "<br><div class='insertok'>$message</div><br>";
//Zeitsperren des Mitarbeiters anzeigen
if($uid!='')
{
$mitarbeiter = new mitarbeiter($conn);
if(!$mitarbeiter->load($uid))
die('Mitarbeiter wurde nicht gefunden');
$zeitsperre = new zeitsperre($conn);
$zeitsperre->getzeitsperren($uid);
echo '<h3>Zeitsperren von <b>'.$mitarbeiter->titelpre.' '.$mitarbeiter->vorname.' '.$mitarbeiter->nachname.' '.$mitarbeiter->titelpost.'</b></h3>';
echo "<table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>";
echo '
<thead>
<tr class="liste">
<th>ID</th>
<th>Typ</th>
<th>Bezeichnung</th>
<th>Von</th>
<th>Bis</th>
<th>edit</th>
<th>delete</th>
</tr>
</thead>
<tbody>';
foreach ($zeitsperre->result as $row)
{
echo '<tr>';
echo "<td>$row->zeitsperre_id</td>";
echo "<td>$row->zeitsperretyp_kurzbz</td>";
echo "<td>$row->bezeichnung</td>";
echo "<td>".$datum->formatDatum($row->vondatum,'d.m.Y')." ".($row->vonstunde!=''?'(Stunde '.$row->vonstunde.')':'')."</td>";
echo "<td>".$datum->formatDatum($row->bisdatum,'d.m.Y')." ".($row->bisstunde!=''?'(Stunde '.$row->bisstunde.')':'')."</td>";
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?action=edit&uid=$uid&zeitsperre_id=$row->zeitsperre_id'><img src='../../skin/images/application_form_edit.png' alt='bearbeiten' title='bearbeiten' /></a></td>";
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?action=delete&uid=$uid&zeitsperre_id=$row->zeitsperre_id' onclick='return confdel(\"$row->zeitsperretyp_kurzbz von ".$datum->formatDatum($row->vondatum,'d.m.Y')." bis ".$datum->formatDatum($row->bisdatum,'d.m.Y')."\")'><img src='../../skin/images/application_form_delete.png' alt='loeschen' title='loeschen'/></a></td>";
echo '</tr>';
}
echo '</tbody></table>';
//Editieren und Neu anlegen von Zeitsperren
$zeitsperre = new zeitsperre($conn);
echo '<br><br>';
if($action=='edit')
{
if(!$zeitsperre->load($zeitsperre_id))
die('Zeitsperre wurde nicht gefunden');
if($zeitsperre->mitarbeiter_uid!=$uid)
die('Zeitsperre und Mitarbeiter passen nicht zusammen');
echo "<h3>Bearbeiten der Zeitsperre $zeitsperre->zeitsperre_id:</h3>";
}
else
echo "<h3>Neue Zeitsperre:</h3>";
echo '<form accept-charset="UTF-8" action="'.$_SERVER['PHP_SELF'].'?uid='.$uid.'" method="POST">';
echo '<input type="hidden" name="zeitsperre_id" value="'.$zeitsperre->zeitsperre_id.'">';
echo '<table>';
echo '<tr>';
echo '<td>Typ</td><td><SELECT name="zeitsperretyp_kurzbz">';
$qry = "SELECT * FROM campus.tbl_zeitsperretyp ORDER BY beschreibung";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
echo '<OPTION value="'.$row->zeitsperretyp_kurzbz.'" '.($row->zeitsperretyp_kurzbz==$zeitsperre->zeitsperretyp_kurzbz?'selected':'').'>'.$row->beschreibung.'</OPTION>';
}
}
echo '</SELECT></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Bezeichnung:</td><td><input type="text" name="bezeichnung" value="'.$zeitsperre->bezeichnung.'"></td>';
echo '</tr><tr>';
$qry = "SELECT * FROM lehre.tbl_stunde ORDER BY stunde";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$std_arr[$row->stunde]="$row->stunde (".date('H:i',strtotime($row->beginn)).' - '.date('H:i',strtotime($row->ende))." Uhr)";
}
}
echo '<td>Von</td><td><input type="text" name="von" value="'.$datum->formatDatum($zeitsperre->vondatum,'d.m.Y').'">';
echo 'Stunde (inklusive)';
echo '<SELECT name="vonstunde">';
if($zeitsperre->vonstunde=='')
echo "<OPTION value='' selectd>*</OPTION>\n";
else
echo "<OPTION value=''>*</OPTION>\n";
foreach ($std_arr as $std=>$val)
{
if($std==$zeitsperre->vonstunde)
$selected='selected';
else
$selected='';
echo "<OPTION value='$std' $selected>$val</OPTION>";
}
echo '</SELECT></td>';
echo '</tr><tr>';
echo '<td>Bis</td><td><input type="text" name="bis" value="'.$datum->formatDatum($zeitsperre->bisdatum,'d.m.Y').'">';
echo 'Stunde (inklusive)';
echo '<SELECT name="bisstunde">';
if($zeitsperre->bisstunde=='')
echo "<OPTION value='' selectd>*</OPTION>\n";
else
echo "<OPTION value=''>*</OPTION>\n";
foreach ($std_arr as $std=>$val)
{
if($std==$zeitsperre->bisstunde)
$selected='selected';
else
$selected='';
echo "<OPTION value='$std' $selected>$val</OPTION>";
}
echo '</SELECT></td>';
echo '</tr><tr>';
echo '<td>Erreichbarkeit</td>';
$qry = "SELECT * FROM campus.tbl_erreichbarkeit";
$erreichbarkeit_arr=array();
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$erreichbarkeit_arr[$row->erreichbarkeit_kurzbz]=$row->beschreibung;
}
}
echo "<td><SELECT name='erreichbarkeit'>";
foreach ($erreichbarkeit_arr as $erreichbarkeit_key=>$erreichbarkeit_beschreibung)
{
if($zeitsperre->erreichbarkeit_kurzbz == $erreichbarkeit_key)+
$selected='selected';
else
$selected='';
echo "<OPTION value='$erreichbarkeit_key' ".$selected.">$erreichbarkeit_beschreibung</OPTION>\n";
}
echo '</SELECT></td>';
echo '</tr><tr>';
echo '<td>Vertretung</td>';
echo "<td><SELECT name='vertretung_uid' id='vertretung_uid'>";
//dropdown fuer vertretung
$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE uid not LIKE '\\\_%' ORDER BY nachname, vorname";
echo "<OPTION value=''>-- Auswahl --</OPTION>\n";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($zeitsperre->vertretung_uid == $row->uid)
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->uid' ".$selected.">$row->nachname $row->vorname ($row->uid)</OPTION>\n";
}
}
echo '</SELECT></td>';
echo '</tr><tr><td></td><td>';
echo '<input type="submit" value="Speichern" name="save">';
echo '</td></tr></table>';
echo '</form>';
}
<?php
/* Copyright (C) 2009 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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Simane-Sequens <gerald.simane-sequens@technikum-wien.at>
*/
/**
*
* Seite zur Verwaltung der Urlaubs- und Zeitausgleichstage der Mitarbeiter
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/zeitsperre.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/mitarbeiter.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
if(!$conn = @pg_pconnect(CONN_STRING))
die('Verbindung zur Datenbank fehlgeschlagen');
$user = get_uid();
$datum = new datum();
$uid = (isset($_GET['uid'])?$_GET['uid']:'');
$zeitsperre_id=(isset($_REQUEST['zeitsperre_id'])?$_REQUEST['zeitsperre_id']:'');
$action = (isset($_GET['action'])?$_GET['action']:'');
$zeitsperretyp_kurzbz=(isset($_POST['zeitsperretyp_kurzbz'])?$_POST['zeitsperretyp_kurzbz']:'');
$bezeichnung=(isset($_POST['bezeichnung'])?$_POST['bezeichnung']:'');
$vondatum=(isset($_POST['von'])?$_POST['von']:'');
$vonstunde=(isset($_POST['vonstunde'])?$_POST['vonstunde']:'');
$bisdatum=(isset($_POST['bis'])?$_POST['bis']:'');
$bisstunde=(isset($_POST['bisstunde'])?$_POST['bisstunde']:'');
$vertretung_uid=(isset($_POST['vertretung_uid'])?$_POST['vertretung_uid']:'');
$erreichbarkeit_kurzbz=(isset($_POST['erreichbarkeit_kurzbz'])?$_POST['erreichbarkeit_kurzbz']:'');
$errormsg='';
$message='';
$error=false;
//Kopfzeile
echo '<html>
<head>
<title>Urlaubsverwaltung</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
<script language="Javascript">
function confdel(val)
{
return confirm("Wollen Sie diesen Eintrag wirklich loeschen: "+val);
}
</script>
</head>
<body class="Background_main">
<h2>Urlaubsverwaltung</h2>
';
//Rechte Pruefen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Sie haben keine Berechtigung für diese Seite');
//Formular zur Eingabe der UID
echo '<form accept-charset="UTF-8" action="'.$_SERVER['PHP_SELF'].'" mehtod="GET">';
echo 'Zeitsperren des Mitarbeiters mit der UID <input type="text" name="uid" value="'.$uid.'">';
echo '<input type="submit" name="submit" value="Anzeigen">';
echo '</form>';
//Loeschen von Zeitsperren
if($action=='delete')
{
if($zeitsperre_id!='' && is_numeric($zeitsperre_id))
{
$zeitsperre = new zeitsperre($conn);
if($zeitsperre->delete($zeitsperre_id))
$message='Zeitsperre wurde geloescht';
else
$errormsg='Fehler beim Loeschen der Zeitsperre';
}
else
$errormsg='Zeitsperre_id ist ungueltig';
}
if(isset($_POST['save']))
{
//Speichern der Daten
$zeitsperre = new zeitsperre($conn);
if($zeitsperre_id!='')
{
if(!$zeitsperre->load($zeitsperre_id))
{
$errormsg='Zeitsperre konnte nicht geladen werden';
$error=true;
}
$zeitsperre->new = false;
}
else
{
$zeitsperre->insertamum=date('Y-m-d H:i:s');
$zeitsperre->insertvon = $user;
$zeitsperre->new=true;
$zeitsperre->mitarbeiter_uid=$uid;
}
if(!$error)
{
$zeitsperre->zeitsperretyp_kurzbz=$zeitsperretyp_kurzbz;
$zeitsperre->bezeichnung = $bezeichnung;
$zeitsperre->vondatum = $vondatum;
$zeitsperre->vonstunde = $vonstunde;
$zeitsperre->bisdatum = $bisdatum;
$zeitsperre->bisstunde = $bisstunde;
$zeitsperre->vertretung_uid = $vertretung_uid;
$zeitsperre->erreichbarkeit_kurzbz = $erreichbarkeit_kurzbz;
$zeitsperre->updateamum = date('Y-m-d H:i:s');
$zeitsperre->udpatevon = $user;
if($zeitsperre->save())
{
$message = 'Daten wurden erfolgreich gespeichert';
}
else
{
$errormsg = "Fehler beim Speichern der Daten: $zeitsperre->errormsg";
}
}
}
//Statusmeldungen ausgeben
if($errormsg!='')
echo "<br><div class='inserterror'>$errormsg</div><br>";
if($message!='')
echo "<br><div class='insertok'>$message</div><br>";
//Zeitsperren des Mitarbeiters anzeigen
if($uid!='')
{
$mitarbeiter = new mitarbeiter($conn);
if(!$mitarbeiter->load($uid))
die('Mitarbeiter wurde nicht gefunden');
$zeitsperre = new zeitsperre($conn);
$zeitsperre->getzeitsperren($uid);
echo '<h3>Zeitsperren von <b>'.$mitarbeiter->titelpre.' '.$mitarbeiter->vorname.' '.$mitarbeiter->nachname.' '.$mitarbeiter->titelpost.'</b></h3>';
echo "<table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>";
echo '
<thead>
<tr class="liste">
<th>ID</th>
<th>Typ</th>
<th>Bezeichnung</th>
<th>Von</th>
<th>Bis</th>
<th>edit</th>
<th>delete</th>
</tr>
</thead>
<tbody>';
foreach ($zeitsperre->result as $row)
{
echo '<tr>';
echo "<td>$row->zeitsperre_id</td>";
echo "<td>$row->zeitsperretyp_kurzbz</td>";
echo "<td>$row->bezeichnung</td>";
echo "<td>".$datum->formatDatum($row->vondatum,'d.m.Y')." ".($row->vonstunde!=''?'(Stunde '.$row->vonstunde.')':'')."</td>";
echo "<td>".$datum->formatDatum($row->bisdatum,'d.m.Y')." ".($row->bisstunde!=''?'(Stunde '.$row->bisstunde.')':'')."</td>";
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?action=edit&uid=$uid&zeitsperre_id=$row->zeitsperre_id'><img src='../../skin/images/application_form_edit.png' alt='bearbeiten' title='bearbeiten' /></a></td>";
echo "<td align='center'><a href='".$_SERVER['PHP_SELF']."?action=delete&uid=$uid&zeitsperre_id=$row->zeitsperre_id' onclick='return confdel(\"$row->zeitsperretyp_kurzbz von ".$datum->formatDatum($row->vondatum,'d.m.Y')." bis ".$datum->formatDatum($row->bisdatum,'d.m.Y')."\")'><img src='../../skin/images/application_form_delete.png' alt='loeschen' title='loeschen'/></a></td>";
echo '</tr>';
}
echo '</tbody></table>';
//Editieren und Neu anlegen von Zeitsperren
$zeitsperre = new zeitsperre($conn);
echo '<br><br>';
if($action=='edit')
{
if(!$zeitsperre->load($zeitsperre_id))
die('Zeitsperre wurde nicht gefunden');
if($zeitsperre->mitarbeiter_uid!=$uid)
die('Zeitsperre und Mitarbeiter passen nicht zusammen');
echo "<h3>Bearbeiten der Zeitsperre $zeitsperre->zeitsperre_id:</h3>";
}
else
echo "<h3>Neue Zeitsperre:</h3>";
echo '<form accept-charset="UTF-8" action="'.$_SERVER['PHP_SELF'].'?uid='.$uid.'" method="POST">';
echo '<input type="hidden" name="zeitsperre_id" value="'.$zeitsperre->zeitsperre_id.'">';
echo '<table>';
echo '<tr>';
echo '<td>Typ</td><td><SELECT name="zeitsperretyp_kurzbz">';
$qry = "SELECT * FROM campus.tbl_zeitsperretyp ORDER BY beschreibung";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
echo '<OPTION value="'.$row->zeitsperretyp_kurzbz.'" '.($row->zeitsperretyp_kurzbz==$zeitsperre->zeitsperretyp_kurzbz?'selected':'').'>'.$row->beschreibung.'</OPTION>';
}
}
echo '</SELECT></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Bezeichnung:</td><td><input type="text" name="bezeichnung" value="'.$zeitsperre->bezeichnung.'"></td>';
echo '</tr><tr>';
$qry = "SELECT * FROM lehre.tbl_stunde ORDER BY stunde";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$std_arr[$row->stunde]="$row->stunde (".date('H:i',strtotime($row->beginn)).' - '.date('H:i',strtotime($row->ende))." Uhr)";
}
}
echo '<td>Von</td><td><input type="text" name="von" value="'.$datum->formatDatum($zeitsperre->vondatum,'d.m.Y').'">';
echo 'Stunde (inklusive)';
echo '<SELECT name="vonstunde">';
if($zeitsperre->vonstunde=='')
echo "<OPTION value='' selectd>*</OPTION>\n";
else
echo "<OPTION value=''>*</OPTION>\n";
foreach ($std_arr as $std=>$val)
{
if($std==$zeitsperre->vonstunde)
$selected='selected';
else
$selected='';
echo "<OPTION value='$std' $selected>$val</OPTION>";
}
echo '</SELECT></td>';
echo '</tr><tr>';
echo '<td>Bis</td><td><input type="text" name="bis" value="'.$datum->formatDatum($zeitsperre->bisdatum,'d.m.Y').'">';
echo 'Stunde (inklusive)';
echo '<SELECT name="bisstunde">';
if($zeitsperre->bisstunde=='')
echo "<OPTION value='' selectd>*</OPTION>\n";
else
echo "<OPTION value=''>*</OPTION>\n";
foreach ($std_arr as $std=>$val)
{
if($std==$zeitsperre->bisstunde)
$selected='selected';
else
$selected='';
echo "<OPTION value='$std' $selected>$val</OPTION>";
}
echo '</SELECT></td>';
echo '</tr><tr>';
echo '<td>Erreichbarkeit</td>';
$qry = "SELECT * FROM campus.tbl_erreichbarkeit";
$erreichbarkeit_arr=array();
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$erreichbarkeit_arr[$row->erreichbarkeit_kurzbz]=$row->beschreibung;
}
}
echo "<td><SELECT name='erreichbarkeit'>";
foreach ($erreichbarkeit_arr as $erreichbarkeit_key=>$erreichbarkeit_beschreibung)
{
if($zeitsperre->erreichbarkeit_kurzbz == $erreichbarkeit_key)+
$selected='selected';
else
$selected='';
echo "<OPTION value='$erreichbarkeit_key' ".$selected.">$erreichbarkeit_beschreibung</OPTION>\n";
}
echo '</SELECT></td>';
echo '</tr><tr>';
echo '<td>Vertretung</td>';
echo "<td><SELECT name='vertretung_uid' id='vertretung_uid'>";
//dropdown fuer vertretung
$qry = "SELECT * FROM campus.vw_mitarbeiter WHERE uid not LIKE '\\\_%' ORDER BY nachname, vorname";
echo "<OPTION value=''>-- Auswahl --</OPTION>\n";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($zeitsperre->vertretung_uid == $row->uid)
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->uid' ".$selected.">$row->nachname $row->vorname ($row->uid)</OPTION>\n";
}
}
echo '</SELECT></td>';
echo '</tr><tr><td></td><td>';
echo '<input type="submit" value="Speichern" name="save">';
echo '</td></tr></table>';
echo '</form>';
}
?>
@@ -1,393 +1,393 @@
<?php
require_once('../config.inc.php');
require_once('../../include/globals.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/fachbereich.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/berechtigung.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
if (!$conn = @pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$reloadstr = ""; // neuladen der liste im oberen frame
$htmlstr = "";
$errorstr = ""; //fehler beim insert
$sel = "";
$chk = "";
$fb_arr = array();
$sg_arr = array();
$b_arr = array();
$st_arr = array();
$benutzerberechtigung_id = "";
$art = "";
$fachbereich_kurzbz = "";
$studiengang_kurzbz = "";
$berechtigung_kurzbz = "";
$uid = "";
$studiensemester_kz = "";
$start = "";
$ende = "";
$neu = false;
if(isset($_POST["del"]))
{
$benutzerberechtigung_id = $_POST["benutzerberechtigung_id"];
$art = $_POST["art"];
$fachbereich_kurzbz = $_POST["fachbereich_kurzbz"];
$studiengang_kz = $_POST["studiengang_kz"];
$berechtigung_kurzbz = $_POST["berechtigung_kurzbz"];
$uid = $_POST["uid"];
$studiensemester_kurzbz = $_POST["studiensemester_kurzbz"];
$start = $_POST["start"];
$ende = $_POST["ende"];
$ber = new benutzerberechtigung($conn);
if(!$ber->delete($benutzerberechtigung_id))
$errorstr .= "Datensatz konnte nicht gel&ouml;scht werden!";
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht.location.href='benutzerberechtigung_uebersicht.php';";
$reloadstr .= "</script>\n";
}
if(isset($_POST["schick"]))
{
$benutzerberechtigung_id = $_POST["benutzerberechtigung_id"];
$art = $_POST["art"];
$fachbereich_kurzbz = $_POST["fachbereich_kurzbz"];
$studiengang_kz = $_POST["studiengang_kz"];
$berechtigung_kurzbz = $_POST["berechtigung_kurzbz"];
$uid = $_POST["uid"];
$studiensemester_kurzbz = $_POST["studiensemester_kurzbz"];
$start = $_POST["start"];
$ende = $_POST["ende"];
$ber = new benutzerberechtigung($conn);
if (isset($_POST["neu"]))
$ber->new = true;
$ber->benutzerberechtigung_id = $benutzerberechtigung_id;
$ber->art = $art;
$ber->fachbereich_kurzbz = $fachbereich_kurzbz;
$ber->studiengang_kz = $studiengang_kz;
$ber->berechtigung_kurzbz = $berechtigung_kurzbz;
$ber->uid = $uid;
$ber->studiensemester_kurzbz = $studiensemester_kurzbz;
$ber->start = $start;
$ber->ende = $ende;
if(!$ber->save()){
if (!$ber->new)
$errorstr .= "Datensatz konnte nicht upgedatet werden!";
else
$errorstr .= "Datensatz konnte nicht gespeichert werden!";
}
if ($ber->new)
{
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht.location.href='benutzerberechtigung_uebersicht.php';";
$reloadstr .= "</script>\n";
}
}
$fb = new fachbereich($conn);
$fb->getAll();
foreach($fb->result as $fachbereich)
{
$fb_arr[] = $fachbereich->fachbereich_kurzbz;
}
$b = new berechtigung($conn);
$b->getAll();
foreach($b->result as $berechtigung)
{
$b_arr[] = $berechtigung->berechtigung_kurzbz;
}
$st = new studiensemester($conn);
$st->getAll();
foreach($st->studiensemester as $studiensemester)
{
$st_arr[] = $studiensemester->studiensemester_kurzbz;
}
$sg = new studiengang($conn);
$sg->getAll('kurzbzlang', false);
if (isset($_REQUEST["uid"]))
{
$uid = $_REQUEST["uid"];
$ben = new benutzer($conn);
if (!$ben->load($uid))
$htmlstr .= "<br><div class='kopf'>Benutzer <b>".$uid."</b> existiert nicht</div>";
else
{
$rights = new benutzerberechtigung($conn);
$rights->getberechtigungen($uid,$all=true);
$htmlstr .= "<br><div class='kopf'>Berechtigungen <b>".$uid."</b></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr><td>Kurzbz</td><td>Art</td><td>Studiengang</td><td>Fachbereich</td><td>Semester</td><td>Start</td><td>Ende</td><td></td><td></td><td></td></tr>\n";
foreach($rights->berechtigungen as $b)
{
$htmlstr .= "<form action='benutzerberechtigung_details.php' method='POST' name='berechtigung".$b->benutzerberechtigung_id."'>\n";
$htmlstr .= "<input type='hidden' name='benutzerberechtigung_id' value='".$b->benutzerberechtigung_id."'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$b->uid."'>\n";
$htmlstr .= " <tr id='".$b->benutzerberechtigung_id."'>\n";
$htmlstr .= " <td><select name='berechtigung_kurzbz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($b_arr); $i++)
{
if ($b->berechtigung_kurzbz == $b_arr[$i])
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$b_arr[$i]."' ".$sel.">".$b_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='art' value='".$b->art."' size='5' maxlength='5' onchange='markier(\"".$b->benutzerberechtigung_id."\")'></td>\n";
$htmlstr .= " <td><select name='studiengang_kz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
foreach ($sg->result as $sgkey)
{
if ($b->studiengang_kz == $sgkey->studiengang_kz && $b->studiengang_kz != null)
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$sgkey->studiengang_kz."' ".$sel.">".$sg->kuerzel_arr[$sgkey->studiengang_kz]." (".$sgkey->kurzbzlang.")</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='fachbereich_kurzbz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($fb_arr); $i++)
{
if ($b->fachbereich_kurzbz == $fb_arr[$i])
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$fb_arr[$i]."' ".$sel.">".$fb_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='studiensemester_kurzbz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($st_arr); $i++)
{
if ($b->studiensemester_kurzbz == $st_arr[$i])
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$st_arr[$i]."' ".$sel.">".$st_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='start' value='".$b->start."' size='10' maxlength='10' onchange='markier(\"".$b->benutzerberechtigung_id."\")'></td>\n";
$htmlstr .= " <td><input type='text' name='ende' value='".$b->ende."' size='10' maxlength='10' onchange='markier(\"".$b->benutzerberechtigung_id."\")'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='speichern'></td>";
$htmlstr .= " <td><input type='submit' name='del' value='l&ouml;schen'></td>";
$htmlstr .= " <td><input type='reset' name='reset' value='C' onmouseup='unmarkier(\"".$b->benutzerberechtigung_id."\")'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
}
$htmlstr .= "<form action='benutzerberechtigung_details.php' method='POST' name='berechtigung_neu'>\n";
$htmlstr .= "<input type='hidden' name='neu' value='1'>\n";
$htmlstr .= "<input type='hidden' name='benutzerberechtigung_id' value=''>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
$htmlstr .= " <tr id='neu'>\n";
$htmlstr .= " <td><select name='berechtigung_kurzbz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($b_arr); $i++)
{
$sel = "";
$htmlstr .= " <option value='".$b_arr[$i]."' ".$sel.">".$b_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='art' value='' size='5' maxlength='5' onchange='markier(\"neu\")'></td>\n";
$htmlstr .= " <td><select name='studiengang_kz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
foreach ($sg->result as $sgkey)
{
$sel = "";
$htmlstr .= " <option value='".$sgkey->studiengang_kz."' ".$sel.">".$sg->kuerzel_arr[$sgkey->studiengang_kz]." (".$sgkey->kurzbzlang.")</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='fachbereich_kurzbz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($fb_arr); $i++)
{
$sel = "";
$htmlstr .= " <option value='".$fb_arr[$i]."' ".$sel.">".$fb_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='studiensemester_kurzbz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($st_arr); $i++)
{
$sel = "";
$htmlstr .= " <option value='".$st_arr[$i]."' ".$sel.">".$st_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='start' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
$htmlstr .= " <td><input type='text' name='ende' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='neu'></td>";
$htmlstr .= " <td></td>";
$htmlstr .= " <td><input type='reset' name='reset' value='C' onmouseup='unmarkier(\"neu\")'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
}
}
$htmlstr .= "<div class='inserterror'>".$errorstr."</div>\n";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Studiengang - Details</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script src="../../include/js/mailcheck.js"></script>
<script src="../../include/js/datecheck.js"></script>
<script type="text/javascript">
function confdel()
{
if(confirm("Diesen Datensatz wirklick loeschen?"))
return true;
return false;
}
function markier(id)
{
document.getElementById(id).style.background = "#FC988D";
}
function unmarkier(id)
{
document.getElementById(id).style.background = "#eeeeee";
}
function unchanged()
{
document.studiengangform.reset();
document.studiengangform.schick.disabled = true;
document.getElementById("submsg").style.visibility="hidden";
checkmail();
checkdate(document.studiengangform.bescheidvom);
checkdate(document.studiengangform.titelbescheidvom);
checkrequired(document.studiengangform.kurzbz);
checkrequired(document.studiengangform.bezeichnung);
checkrequired(document.studiengangform.studiengang_kz);
}
function checkmail()
{
if((document.studiengangform.email.value != "")&&(!emailCheck(document.studiengangform.email.value)))
{
//document.studiengangform.schick.disabled = true;
document.studiengangform.email.className="input_error";
return false;
}
else
{
document.studiengangform.email.className = "input_ok";
//document.studiengangform.schick.disabled = false;
//document.getElementById("submsg").style.visibility="visible";
return true;
}
}
function checkdate(feld)
{
if ((feld.value != "") && (!dateCheck(feld)))
{
//document.studiengangform.schick.disabled = true;
feld.className = "input_error";
return false;
}
else
{
if(feld.value != "")
feld.value = dateCheck(feld);
feld.className = "input_ok";
return true;
}
}
function checkrequired(feld)
{
if(feld.value == "")
{
feld.className = "input_error";
return false;
}
else
{
feld.className = "input_ok";
return true;
}
}
function submitable()
{
mail = checkmail();
date1 = checkdate(document.studiengangform.bescheidvom);
date2 = checkdate(document.studiengangform.titelbescheidvom);
required1 = checkrequired(document.studiengangform.kurzbz);
required2 = checkrequired(document.studiengangform.bezeichnung);
required3 = checkrequired(document.studiengangform.studiengang_kz);
if((!mail) || (!date1) || (!date2) || (!required1) || (!required2) || (!required3))
{
document.studiengangform.schick.disabled = true;
document.getElementById("submsg").style.visibility="hidden";
}
else
{
document.studiengangform.schick.disabled = false;
document.getElementById("submsg").style.visibility="visible";
}
}
</script>
</head>
<body style="background-color:#eeeeee;">
<?php
echo $htmlstr;
echo $reloadstr;
?>
</body>
<?php
require_once('../config.inc.php');
require_once('../../include/globals.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/fachbereich.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/berechtigung.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
if (!$conn = @pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$reloadstr = ""; // neuladen der liste im oberen frame
$htmlstr = "";
$errorstr = ""; //fehler beim insert
$sel = "";
$chk = "";
$fb_arr = array();
$sg_arr = array();
$b_arr = array();
$st_arr = array();
$benutzerberechtigung_id = "";
$art = "";
$fachbereich_kurzbz = "";
$studiengang_kurzbz = "";
$berechtigung_kurzbz = "";
$uid = "";
$studiensemester_kz = "";
$start = "";
$ende = "";
$neu = false;
if(isset($_POST["del"]))
{
$benutzerberechtigung_id = $_POST["benutzerberechtigung_id"];
$art = $_POST["art"];
$fachbereich_kurzbz = $_POST["fachbereich_kurzbz"];
$studiengang_kz = $_POST["studiengang_kz"];
$berechtigung_kurzbz = $_POST["berechtigung_kurzbz"];
$uid = $_POST["uid"];
$studiensemester_kurzbz = $_POST["studiensemester_kurzbz"];
$start = $_POST["start"];
$ende = $_POST["ende"];
$ber = new benutzerberechtigung();
if(!$ber->delete($benutzerberechtigung_id))
$errorstr .= "Datensatz konnte nicht gel&ouml;scht werden!";
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht.location.href='benutzerberechtigung_uebersicht.php';";
$reloadstr .= "</script>\n";
}
if(isset($_POST["schick"]))
{
$benutzerberechtigung_id = $_POST["benutzerberechtigung_id"];
$art = $_POST["art"];
$fachbereich_kurzbz = $_POST["fachbereich_kurzbz"];
$studiengang_kz = $_POST["studiengang_kz"];
$berechtigung_kurzbz = $_POST["berechtigung_kurzbz"];
$uid = $_POST["uid"];
$studiensemester_kurzbz = $_POST["studiensemester_kurzbz"];
$start = $_POST["start"];
$ende = $_POST["ende"];
$ber = new benutzerberechtigung();
if (isset($_POST["neu"]))
$ber->new = true;
$ber->benutzerberechtigung_id = $benutzerberechtigung_id;
$ber->art = $art;
$ber->fachbereich_kurzbz = $fachbereich_kurzbz;
$ber->studiengang_kz = $studiengang_kz;
$ber->berechtigung_kurzbz = $berechtigung_kurzbz;
$ber->uid = $uid;
$ber->studiensemester_kurzbz = $studiensemester_kurzbz;
$ber->start = $start;
$ber->ende = $ende;
if(!$ber->save()){
if (!$ber->new)
$errorstr .= "Datensatz konnte nicht upgedatet werden!";
else
$errorstr .= "Datensatz konnte nicht gespeichert werden!";
}
if ($ber->new)
{
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht.location.href='benutzerberechtigung_uebersicht.php';";
$reloadstr .= "</script>\n";
}
}
$fb = new fachbereich($conn);
$fb->getAll();
foreach($fb->result as $fachbereich)
{
$fb_arr[] = $fachbereich->fachbereich_kurzbz;
}
$b = new berechtigung($conn);
$b->getAll();
foreach($b->result as $berechtigung)
{
$b_arr[] = $berechtigung->berechtigung_kurzbz;
}
$st = new studiensemester($conn);
$st->getAll();
foreach($st->studiensemester as $studiensemester)
{
$st_arr[] = $studiensemester->studiensemester_kurzbz;
}
$sg = new studiengang($conn);
$sg->getAll('kurzbzlang', false);
if (isset($_REQUEST["uid"]))
{
$uid = $_REQUEST["uid"];
$ben = new benutzer();
if (!$ben->load($uid))
$htmlstr .= "<br><div class='kopf'>Benutzer <b>".$uid."</b> existiert nicht</div>";
else
{
$rights = new benutzerberechtigung();
$rights->getberechtigungen($uid,$all=true);
$htmlstr .= "<br><div class='kopf'>Berechtigungen <b>".$uid."</b></div>\n";
$htmlstr .= "<table class='detail' style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr><td>Kurzbz</td><td>Art</td><td>Studiengang</td><td>Fachbereich</td><td>Semester</td><td>Start</td><td>Ende</td><td></td><td></td><td></td></tr>\n";
foreach($rights->berechtigungen as $b)
{
$htmlstr .= "<form action='benutzerberechtigung_details.php' method='POST' name='berechtigung".$b->benutzerberechtigung_id."'>\n";
$htmlstr .= "<input type='hidden' name='benutzerberechtigung_id' value='".$b->benutzerberechtigung_id."'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$b->uid."'>\n";
$htmlstr .= " <tr id='".$b->benutzerberechtigung_id."'>\n";
$htmlstr .= " <td><select name='berechtigung_kurzbz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($b_arr); $i++)
{
if ($b->berechtigung_kurzbz == $b_arr[$i])
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$b_arr[$i]."' ".$sel.">".$b_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='art' value='".$b->art."' size='5' maxlength='5' onchange='markier(\"".$b->benutzerberechtigung_id."\")'></td>\n";
$htmlstr .= " <td><select name='studiengang_kz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
foreach ($sg->result as $sgkey)
{
if ($b->studiengang_kz == $sgkey->studiengang_kz && $b->studiengang_kz != null)
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$sgkey->studiengang_kz."' ".$sel.">".$sg->kuerzel_arr[$sgkey->studiengang_kz]." (".$sgkey->kurzbzlang.")</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='fachbereich_kurzbz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($fb_arr); $i++)
{
if ($b->fachbereich_kurzbz == $fb_arr[$i])
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$fb_arr[$i]."' ".$sel.">".$fb_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='studiensemester_kurzbz' onchange='markier(\"".$b->benutzerberechtigung_id."\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($st_arr); $i++)
{
if ($b->studiensemester_kurzbz == $st_arr[$i])
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$st_arr[$i]."' ".$sel.">".$st_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='start' value='".$b->start."' size='10' maxlength='10' onchange='markier(\"".$b->benutzerberechtigung_id."\")'></td>\n";
$htmlstr .= " <td><input type='text' name='ende' value='".$b->ende."' size='10' maxlength='10' onchange='markier(\"".$b->benutzerberechtigung_id."\")'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='speichern'></td>";
$htmlstr .= " <td><input type='submit' name='del' value='l&ouml;schen'></td>";
$htmlstr .= " <td><input type='reset' name='reset' value='C' onmouseup='unmarkier(\"".$b->benutzerberechtigung_id."\")'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
}
$htmlstr .= "<form action='benutzerberechtigung_details.php' method='POST' name='berechtigung_neu'>\n";
$htmlstr .= "<input type='hidden' name='neu' value='1'>\n";
$htmlstr .= "<input type='hidden' name='benutzerberechtigung_id' value=''>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
$htmlstr .= " <tr id='neu'>\n";
$htmlstr .= " <td><select name='berechtigung_kurzbz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($b_arr); $i++)
{
$sel = "";
$htmlstr .= " <option value='".$b_arr[$i]."' ".$sel.">".$b_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='art' value='' size='5' maxlength='5' onchange='markier(\"neu\")'></td>\n";
$htmlstr .= " <td><select name='studiengang_kz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
foreach ($sg->result as $sgkey)
{
$sel = "";
$htmlstr .= " <option value='".$sgkey->studiengang_kz."' ".$sel.">".$sg->kuerzel_arr[$sgkey->studiengang_kz]." (".$sgkey->kurzbzlang.")</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='fachbereich_kurzbz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($fb_arr); $i++)
{
$sel = "";
$htmlstr .= " <option value='".$fb_arr[$i]."' ".$sel.">".$fb_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><select name='studiensemester_kurzbz' onchange='markier(\"neu\")'>\n";
$htmlstr .= " <option value=''></option>\n";
for ($i = 0; $i < sizeof($st_arr); $i++)
{
$sel = "";
$htmlstr .= " <option value='".$st_arr[$i]."' ".$sel.">".$st_arr[$i]."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='start' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
$htmlstr .= " <td><input type='text' name='ende' value='' size='10' maxlength='10' onchange='markier(\"neu\")'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='neu'></td>";
$htmlstr .= " <td></td>";
$htmlstr .= " <td><input type='reset' name='reset' value='C' onmouseup='unmarkier(\"neu\")'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
}
}
$htmlstr .= "<div class='inserterror'>".$errorstr."</div>\n";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Studiengang - Details</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script src="../../include/js/mailcheck.js"></script>
<script src="../../include/js/datecheck.js"></script>
<script type="text/javascript">
function confdel()
{
if(confirm("Diesen Datensatz wirklick loeschen?"))
return true;
return false;
}
function markier(id)
{
document.getElementById(id).style.background = "#FC988D";
}
function unmarkier(id)
{
document.getElementById(id).style.background = "#eeeeee";
}
function unchanged()
{
document.studiengangform.reset();
document.studiengangform.schick.disabled = true;
document.getElementById("submsg").style.visibility="hidden";
checkmail();
checkdate(document.studiengangform.bescheidvom);
checkdate(document.studiengangform.titelbescheidvom);
checkrequired(document.studiengangform.kurzbz);
checkrequired(document.studiengangform.bezeichnung);
checkrequired(document.studiengangform.studiengang_kz);
}
function checkmail()
{
if((document.studiengangform.email.value != "")&&(!emailCheck(document.studiengangform.email.value)))
{
//document.studiengangform.schick.disabled = true;
document.studiengangform.email.className="input_error";
return false;
}
else
{
document.studiengangform.email.className = "input_ok";
//document.studiengangform.schick.disabled = false;
//document.getElementById("submsg").style.visibility="visible";
return true;
}
}
function checkdate(feld)
{
if ((feld.value != "") && (!dateCheck(feld)))
{
//document.studiengangform.schick.disabled = true;
feld.className = "input_error";
return false;
}
else
{
if(feld.value != "")
feld.value = dateCheck(feld);
feld.className = "input_ok";
return true;
}
}
function checkrequired(feld)
{
if(feld.value == "")
{
feld.className = "input_error";
return false;
}
else
{
feld.className = "input_ok";
return true;
}
}
function submitable()
{
mail = checkmail();
date1 = checkdate(document.studiengangform.bescheidvom);
date2 = checkdate(document.studiengangform.titelbescheidvom);
required1 = checkrequired(document.studiengangform.kurzbz);
required2 = checkrequired(document.studiengangform.bezeichnung);
required3 = checkrequired(document.studiengangform.studiengang_kz);
if((!mail) || (!date1) || (!date2) || (!required1) || (!required2) || (!required3))
{
document.studiengangform.schick.disabled = true;
document.getElementById("submsg").style.visibility="hidden";
}
else
{
document.studiengangform.schick.disabled = false;
document.getElementById("submsg").style.visibility="visible";
}
}
</script>
</head>
<body style="background-color:#eeeeee;">
<?php
echo $htmlstr;
echo $reloadstr;
?>
</body>
</html>
@@ -34,7 +34,7 @@
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
@@ -29,7 +29,7 @@
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
+386 -386
View File
@@ -1,387 +1,387 @@
<?php
/* Copyright (C) 2008 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>.
*/
/**
* Detailansicht fuer die Firmenverwaltung
* Ermoeglicht die Eingabe der Firmendaten plus zugehoeriger Adressen
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/firma.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/nation.class.php');
require_once('../../include/benutzerberechtigung.class.php');
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
// ******* INIT ********
$user = get_uid();
//Zugriffsrechte pruefen
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('preinteressent') && !$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung für diese Seite');
$htmlstr = '';
$errorstr = '';
$messagestr='';
$reloadstr = '';
$error = false;
$firma_id = (isset($_REQUEST["firma_id"])?$_REQUEST['firma_id']:'');
$name = (isset($_POST['name'])?$_POST['name']:'');
$adresse = (isset($_POST['adresse'])?$_POST['adresse']:'');
$email = (isset($_POST['email'])?$_POST['email']:'');
$telefon = (isset($_POST['telefon'])?$_POST['telefon']:'');
$fax = (isset($_POST['fax'])?$_POST['fax']:'');
$anmerkung = (isset($_POST['anmerkung'])?$_POST['anmerkung']:'');
$firmentyp_kurzbz = (isset($_POST['typ'])?$_POST['typ']:'');
$schule = isset($_POST['schule']);
$adresstyp = (isset($_POST['adresstyp'])?$_POST['adresstyp']:'');
$strasse = (isset($_POST['strasse'])?$_POST['strasse']:'');
$plz = (isset($_POST['plz'])?$_POST['plz']:'');
$ort = (isset($_POST['ort'])?$_POST['ort']:'');
$gemeinde = (isset($_POST['gemeinde'])?$_POST['gemeinde']:'');
$nation = (isset($_POST['nation'])?$_POST['nation']:'');
$heimatadresse = (isset($_POST['heimatadresse'])?true:false);
$zustelladresse = (isset($_POST['zustelladresse'])?true:false);
$zustellung = (isset($_POST['zustellung'])?true:false);
$adresse_id = (isset($_REQUEST['adresse_id'])?$_REQUEST['adresse_id']:'');
//Loeschen einer Adresse
if(isset($_GET['deleteadresse']))
{
if(is_numeric($adresse_id))
{
$adresse_obj = new adresse($conn);
if(!$adresse_obj->delete($adresse_id))
{
$errorstr = 'Fehler beim Loeschen der Adresse:'.$adresse_obj->errormsg;
}
}
}
//Speichern einer Adresse
if(isset($_POST['saveadresse']))
{
$adresse_obj = new adresse($conn);
if(is_numeric($adresse_id))
{
if($adresse_obj->load($adresse_id))
{
$adresse_obj->new = false;
}
else
{
$errorstr = 'Adresse wurde nicht gefunden:'.$adresse_id;
$error=true;
}
}
else
{
$adresse_obj->new = true;
$adresse_obj->insertamum = date('Y-m-d H:i:s');
$adresse_obj->insertvon = $user;
}
if(!$error)
{
$adresse_obj->person_id=null;
$adresse_obj->strasse = $strasse;
$adresse_obj->plz = $plz;
$adresse_obj->ort = $ort;
$adresse_obj->gemeinde = $gemeinde;
$adresse_obj->nation = $nation;
$adresse_obj->typ = $adresstyp;
$adresse_obj->heimatadresse = $heimatadresse;
$adresse_obj->zustelladresse = $zustelladresse;
$adresse_obj->firma_id = $firma_id;
$adresse_obj->updateamum = date('Y-m-d H:i:s');
$adresse_obj->updatvon = $user;
//var_dump($adresse_obj);
if(!$adresse_obj->save())
{
$errorstr = 'Fehler beim Speichern der Adresse:'.$adresse_obj->errormsg;
}
else
{
$messagestr = 'Adressdaten wurden erfolgreich gespeichert';
}
}
}
// Speichern der Firmendaten
if(isset($_POST['save']))
{
$firma = new firma($conn);
if($firma_id!='')
{
if(!$firma->load($firma_id))
{
$error = true;
}
else
{
$firma->new = false;
}
}
else
{
$firma->insertamum = date('Y-m-d H:i:s');
$firma->insertvon = $user;
$firma->new = true;
}
if(!$error)
{
$firma->name = $name;
$firma->adresse = $adresse;
$firma->email = $email;
$firma->telefon = $telefon;
$firma->fax = $fax;
$firma->anmerkung = $anmerkung;
$firma->firmentyp_kurzbz = $firmentyp_kurzbz;
$firma->updateamum = date('Y-m-d H:i:s');
$firma->updatevon = $user;
$firma->schule = $schule;
if($firma->save())
{
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht_firma.location.href='firma_uebersicht.php?filter='+parent.uebersicht_firma.filter+'&firmentypfilter='+parent.uebersicht_firma.firmentypfilter;";
$reloadstr .= " window.top.opener.StudentProjektarbeitFirmaRefresh();";
$reloadstr .= "</script>\n";
$messagestr='Firmendaten wurden erfolgreich gespeichert';
}
else
{
$errorstr = 'Datensatz konnte nicht gespeichert werden: '.$firma->errormsg;
}
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Firma - Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script src="../../include/js/mailcheck.js"></script>
<script src="../../include/js/datecheck.js"></script>
<script type="text/javascript">
function confdel()
{
if(confirm("Diesen Datensatz wirklich loeschen?"))
return true;
return false;
}
</script>
</head>
<body style="background-color:#eeeeee;">
<?php
//Formular fuer die Firmendaten
if($errorstr!='')
echo "<div class='inserterror'>".$errorstr."</div>\n";
elseif($messagestr!='')
echo "<div class='insertok'>".$messagestr."</div>\n";
$firma = new firma($conn);
if($firma_id!='')
{
if (!$firma->load($firma_id))
{
die('<br>Firma mit der ID <b>'.$firma_id.'</b> existiert nicht');
}
}
else
{
//Bei neuen Firmen wird standardmaessig Partnerfirma ausgewaehlt
$firma->firmentyp_kurzbz='Partnerfirma';
}
echo "<form action='firma_details.php' method='POST' name='firma'>\n";
echo "<input type='hidden' name='firma_id' value='".$firma->firma_id."'>\n";
echo "<table class='detail' style='padding-top:10px;'>\n";
echo "<tr></tr>\n";
echo " <tr>\n";
echo " <td>Name: </td>";
echo " <td colspan='3'><input type='text' name='name' value='".$firma->name."' size='80' maxlength='128' /></td>\n";
echo " <td>Typ: </td>";
echo " <td><select name='typ'>\n";
$qry = "SELECT firmentyp_kurzbz FROM public.tbl_firmentyp ORDER BY firmentyp_kurzbz";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if ($firma->firmentyp_kurzbz == $row->firmentyp_kurzbz)
$sel = " selected";
else
$sel = "";
echo " <option value='".$row->firmentyp_kurzbz."' ".$sel.">".$row->firmentyp_kurzbz."</option>";
}
}
echo " </select></td>";
echo " <td>Schule: </td>";
echo " <td><input type='checkbox' name='schule' ".($firma->schule?'checked':'')."></td>\n";
echo "</tr><tr>\n";
echo " <td>EMail: </td>";
echo " <td><input type='text' name='email' value='".$firma->email."' size='40' maxlength='128' /></td>\n";
echo " <td>Telefon: </td>";
echo " <td><input type='text' name='telefon' value='".$firma->telefon."' maxlength='32' /></td>\n";
echo " <td>Fax: </td>";
echo " <td><input type='text' name='fax' value='".$firma->fax."' maxlength='32' /></td>\n";
echo " <td>Adresse (alt): </td>";
echo " <td><input type='text' name='adresse' value='".$firma->adresse."' maxlength='256'></td>\n";
echo "</tr><tr valign='top'>";
echo " <td>Anmerkung: </td>";
echo " <td colspan='5'><textarea style='width:100%' name='anmerkung'/>".$firma->anmerkung."</textarea></td>\n";
echo " <td></td><td valign='bottom'><input type='submit' name='save' value='speichern'></td>\n";
echo " </tr></table>\n";
echo "</form>\n";
//Nationen laden
$nation_arr = array();
$nation = new nation($conn);
$nation->getAll();
foreach($nation->nation as $row)
$nation_arr[$row->code]=$row->kurztext;
$adresstyp_arr = array('h'=>'Hauptwohnsitz','n'=>'Nebenwohnsitz','f'=>'Firma',''=>'');
// Formular fuer die Adressdaten
//echo "<h3>Adressen:</h3>";
echo "<form accept-charset='UTF-8' action='".$_SERVER['PHP_SELF']."?firma_id=$firma_id' method='POST' />";
echo "<table class='liste'><tr><th>STRASSE</th><th>PLZ</th><th>ORT</th><th>GEMEINDE</th><th>NATION</th><th>TYP</th><th><font size='0'>Heimatadr.</font></th><th><font size='0'>Zustelladr.</font></th></tr>";
$adresse_obj = new adresse($conn);
$adresse_obj->load_firma($firma_id);
//Anzeigen aller Adresssen
foreach ($adresse_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->strasse</td>";
echo "<td>$row->plz</td>";
echo "<td>$row->ort</td>";
echo "<td>$row->gemeinde</td>";
echo "<td>".(isset($nation_arr[$row->nation])?$nation_arr[$row->nation]:'')."</td>";
echo "<td>".$adresstyp_arr[$row->typ]."</td>";
echo "<td>".($row->heimatadresse?'Ja':'Nein')."</td>";
echo "<td>".($row->zustelladresse?'Ja':'Nein')."</td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?editadresse=true&adresse_id=$row->adresse_id&firma_id=$firma_id'><img src='../../skin/images/application_form_edit.png' alt='bearbeiten' title='bearbeiten' /></a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?deleteadresse=true&adresse_id=$row->adresse_id&firma_id=$firma_id' onclick='return confdel()'><img src='../../skin/images/application_form_delete.png' alt='loeschen' title='loeschen'/></a></td>";
}
$savebuttonvalue='Neu';
//wenn die Adressen editiert werden dann die Adressdaten laden
if(isset($_GET['editadresse']))
{
$adresse_obj = new adresse($conn);
if($adresse_obj->load($adresse_id))
{
$strasse = $adresse_obj->strasse;
$plz = $adresse_obj->plz;
$ort = $adresse_obj->ort;
$gemeinde = $adresse_obj->gemeinde;
$nation = $adresse_obj->nation;
$typ = $adresse_obj->typ;
$heimatadresse = $adresse_obj->heimatadresse;
$zustelladresse = $adresse_obj->zustelladresse;
$firma_id = $adresse_obj->firma_id;
$savebuttonvalue='Speichern';
}
}
else
{
//bei einer neuen Adresse die Felder leeren
$strasse='';
$plz='';
$ort='';
$gemeinde='';
$nation = 'A';
$typ='';
$heimatadresse='';
$zustelladresse='';
$adresse_id='';
}
echo "<input type='hidden' name='adresse_id' value='".$adresse_id."' />";
echo '<tr class="liste1">';
echo "<td><input type='text' name='strasse' value='".$strasse."' /></td>";
echo "<td><input type='text' name='plz' size='4' value='".$plz."' /></td>";
echo "<td><input type='text' name='ort' value='".$ort."' /></td>";
echo "<td><input type='text' name='gemeinde' value='".$gemeinde."' /></td>";
echo "<td><SELECT name='nation'>";
foreach ($nation_arr as $code=>$kurzbz)
{
if($code==$nation)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><SELECT name='adresstyp'>";
foreach($adresstyp_arr as $code=>$kurzbz)
{
if($code==$typ)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='checkbox' name='heimatadresse' ".($heimatadresse?'checked':'')." /></td>";
echo "<td><input type='checkbox' name='zustelladresse' ".($zustelladresse?'checked':'')." /></td>";
echo "<td colspan='2'><input type='submit' name='saveadresse' value='$savebuttonvalue' /></td>";
echo "</table>";
echo "</form>";
//eventuell die Felder im oeffnenden Fenster aktualisieren
echo $reloadstr;
?>
</body>
<?php
/* Copyright (C) 2008 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>.
*/
/**
* Detailansicht fuer die Firmenverwaltung
* Ermoeglicht die Eingabe der Firmendaten plus zugehoeriger Adressen
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/firma.class.php');
require_once('../../include/adresse.class.php');
require_once('../../include/nation.class.php');
require_once('../../include/benutzerberechtigung.class.php');
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
// ******* INIT ********
$user = get_uid();
//Zugriffsrechte pruefen
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('preinteressent') && !$rechte->isBerechtigt('assistenz'))
die('Sie haben keine Berechtigung für diese Seite');
$htmlstr = '';
$errorstr = '';
$messagestr='';
$reloadstr = '';
$error = false;
$firma_id = (isset($_REQUEST["firma_id"])?$_REQUEST['firma_id']:'');
$name = (isset($_POST['name'])?$_POST['name']:'');
$adresse = (isset($_POST['adresse'])?$_POST['adresse']:'');
$email = (isset($_POST['email'])?$_POST['email']:'');
$telefon = (isset($_POST['telefon'])?$_POST['telefon']:'');
$fax = (isset($_POST['fax'])?$_POST['fax']:'');
$anmerkung = (isset($_POST['anmerkung'])?$_POST['anmerkung']:'');
$firmentyp_kurzbz = (isset($_POST['typ'])?$_POST['typ']:'');
$schule = isset($_POST['schule']);
$adresstyp = (isset($_POST['adresstyp'])?$_POST['adresstyp']:'');
$strasse = (isset($_POST['strasse'])?$_POST['strasse']:'');
$plz = (isset($_POST['plz'])?$_POST['plz']:'');
$ort = (isset($_POST['ort'])?$_POST['ort']:'');
$gemeinde = (isset($_POST['gemeinde'])?$_POST['gemeinde']:'');
$nation = (isset($_POST['nation'])?$_POST['nation']:'');
$heimatadresse = (isset($_POST['heimatadresse'])?true:false);
$zustelladresse = (isset($_POST['zustelladresse'])?true:false);
$zustellung = (isset($_POST['zustellung'])?true:false);
$adresse_id = (isset($_REQUEST['adresse_id'])?$_REQUEST['adresse_id']:'');
//Loeschen einer Adresse
if(isset($_GET['deleteadresse']))
{
if(is_numeric($adresse_id))
{
$adresse_obj = new adresse($conn);
if(!$adresse_obj->delete($adresse_id))
{
$errorstr = 'Fehler beim Loeschen der Adresse:'.$adresse_obj->errormsg;
}
}
}
//Speichern einer Adresse
if(isset($_POST['saveadresse']))
{
$adresse_obj = new adresse($conn);
if(is_numeric($adresse_id))
{
if($adresse_obj->load($adresse_id))
{
$adresse_obj->new = false;
}
else
{
$errorstr = 'Adresse wurde nicht gefunden:'.$adresse_id;
$error=true;
}
}
else
{
$adresse_obj->new = true;
$adresse_obj->insertamum = date('Y-m-d H:i:s');
$adresse_obj->insertvon = $user;
}
if(!$error)
{
$adresse_obj->person_id=null;
$adresse_obj->strasse = $strasse;
$adresse_obj->plz = $plz;
$adresse_obj->ort = $ort;
$adresse_obj->gemeinde = $gemeinde;
$adresse_obj->nation = $nation;
$adresse_obj->typ = $adresstyp;
$adresse_obj->heimatadresse = $heimatadresse;
$adresse_obj->zustelladresse = $zustelladresse;
$adresse_obj->firma_id = $firma_id;
$adresse_obj->updateamum = date('Y-m-d H:i:s');
$adresse_obj->updatvon = $user;
//var_dump($adresse_obj);
if(!$adresse_obj->save())
{
$errorstr = 'Fehler beim Speichern der Adresse:'.$adresse_obj->errormsg;
}
else
{
$messagestr = 'Adressdaten wurden erfolgreich gespeichert';
}
}
}
// Speichern der Firmendaten
if(isset($_POST['save']))
{
$firma = new firma($conn);
if($firma_id!='')
{
if(!$firma->load($firma_id))
{
$error = true;
}
else
{
$firma->new = false;
}
}
else
{
$firma->insertamum = date('Y-m-d H:i:s');
$firma->insertvon = $user;
$firma->new = true;
}
if(!$error)
{
$firma->name = $name;
$firma->adresse = $adresse;
$firma->email = $email;
$firma->telefon = $telefon;
$firma->fax = $fax;
$firma->anmerkung = $anmerkung;
$firma->firmentyp_kurzbz = $firmentyp_kurzbz;
$firma->updateamum = date('Y-m-d H:i:s');
$firma->updatevon = $user;
$firma->schule = $schule;
if($firma->save())
{
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht_firma.location.href='firma_uebersicht.php?filter='+parent.uebersicht_firma.filter+'&firmentypfilter='+parent.uebersicht_firma.firmentypfilter;";
$reloadstr .= " window.top.opener.StudentProjektarbeitFirmaRefresh();";
$reloadstr .= "</script>\n";
$messagestr='Firmendaten wurden erfolgreich gespeichert';
}
else
{
$errorstr = 'Datensatz konnte nicht gespeichert werden: '.$firma->errormsg;
}
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Firma - Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script src="../../include/js/mailcheck.js"></script>
<script src="../../include/js/datecheck.js"></script>
<script type="text/javascript">
function confdel()
{
if(confirm("Diesen Datensatz wirklich loeschen?"))
return true;
return false;
}
</script>
</head>
<body style="background-color:#eeeeee;">
<?php
//Formular fuer die Firmendaten
if($errorstr!='')
echo "<div class='inserterror'>".$errorstr."</div>\n";
elseif($messagestr!='')
echo "<div class='insertok'>".$messagestr."</div>\n";
$firma = new firma($conn);
if($firma_id!='')
{
if (!$firma->load($firma_id))
{
die('<br>Firma mit der ID <b>'.$firma_id.'</b> existiert nicht');
}
}
else
{
//Bei neuen Firmen wird standardmaessig Partnerfirma ausgewaehlt
$firma->firmentyp_kurzbz='Partnerfirma';
}
echo "<form action='firma_details.php' method='POST' name='firma'>\n";
echo "<input type='hidden' name='firma_id' value='".$firma->firma_id."'>\n";
echo "<table class='detail' style='padding-top:10px;'>\n";
echo "<tr></tr>\n";
echo " <tr>\n";
echo " <td>Name: </td>";
echo " <td colspan='3'><input type='text' name='name' value='".$firma->name."' size='80' maxlength='128' /></td>\n";
echo " <td>Typ: </td>";
echo " <td><select name='typ'>\n";
$qry = "SELECT firmentyp_kurzbz FROM public.tbl_firmentyp ORDER BY firmentyp_kurzbz";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if ($firma->firmentyp_kurzbz == $row->firmentyp_kurzbz)
$sel = " selected";
else
$sel = "";
echo " <option value='".$row->firmentyp_kurzbz."' ".$sel.">".$row->firmentyp_kurzbz."</option>";
}
}
echo " </select></td>";
echo " <td>Schule: </td>";
echo " <td><input type='checkbox' name='schule' ".($firma->schule?'checked':'')."></td>\n";
echo "</tr><tr>\n";
echo " <td>EMail: </td>";
echo " <td><input type='text' name='email' value='".$firma->email."' size='40' maxlength='128' /></td>\n";
echo " <td>Telefon: </td>";
echo " <td><input type='text' name='telefon' value='".$firma->telefon."' maxlength='32' /></td>\n";
echo " <td>Fax: </td>";
echo " <td><input type='text' name='fax' value='".$firma->fax."' maxlength='32' /></td>\n";
echo " <td>Adresse (alt): </td>";
echo " <td><input type='text' name='adresse' value='".$firma->adresse."' maxlength='256'></td>\n";
echo "</tr><tr valign='top'>";
echo " <td>Anmerkung: </td>";
echo " <td colspan='5'><textarea style='width:100%' name='anmerkung'/>".$firma->anmerkung."</textarea></td>\n";
echo " <td></td><td valign='bottom'><input type='submit' name='save' value='speichern'></td>\n";
echo " </tr></table>\n";
echo "</form>\n";
//Nationen laden
$nation_arr = array();
$nation = new nation($conn);
$nation->getAll();
foreach($nation->nation as $row)
$nation_arr[$row->code]=$row->kurztext;
$adresstyp_arr = array('h'=>'Hauptwohnsitz','n'=>'Nebenwohnsitz','f'=>'Firma',''=>'');
// Formular fuer die Adressdaten
//echo "<h3>Adressen:</h3>";
echo "<form accept-charset='UTF-8' action='".$_SERVER['PHP_SELF']."?firma_id=$firma_id' method='POST' />";
echo "<table class='liste'><tr><th>STRASSE</th><th>PLZ</th><th>ORT</th><th>GEMEINDE</th><th>NATION</th><th>TYP</th><th><font size='0'>Heimatadr.</font></th><th><font size='0'>Zustelladr.</font></th></tr>";
$adresse_obj = new adresse($conn);
$adresse_obj->load_firma($firma_id);
//Anzeigen aller Adresssen
foreach ($adresse_obj->result as $row)
{
echo '<tr class="liste1">';
echo "<td>$row->strasse</td>";
echo "<td>$row->plz</td>";
echo "<td>$row->ort</td>";
echo "<td>$row->gemeinde</td>";
echo "<td>".(isset($nation_arr[$row->nation])?$nation_arr[$row->nation]:'')."</td>";
echo "<td>".$adresstyp_arr[$row->typ]."</td>";
echo "<td>".($row->heimatadresse?'Ja':'Nein')."</td>";
echo "<td>".($row->zustelladresse?'Ja':'Nein')."</td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?editadresse=true&adresse_id=$row->adresse_id&firma_id=$firma_id'><img src='../../skin/images/application_form_edit.png' alt='bearbeiten' title='bearbeiten' /></a></td>";
echo "<td><a href='".$_SERVER['PHP_SELF']."?deleteadresse=true&adresse_id=$row->adresse_id&firma_id=$firma_id' onclick='return confdel()'><img src='../../skin/images/application_form_delete.png' alt='loeschen' title='loeschen'/></a></td>";
}
$savebuttonvalue='Neu';
//wenn die Adressen editiert werden dann die Adressdaten laden
if(isset($_GET['editadresse']))
{
$adresse_obj = new adresse($conn);
if($adresse_obj->load($adresse_id))
{
$strasse = $adresse_obj->strasse;
$plz = $adresse_obj->plz;
$ort = $adresse_obj->ort;
$gemeinde = $adresse_obj->gemeinde;
$nation = $adresse_obj->nation;
$typ = $adresse_obj->typ;
$heimatadresse = $adresse_obj->heimatadresse;
$zustelladresse = $adresse_obj->zustelladresse;
$firma_id = $adresse_obj->firma_id;
$savebuttonvalue='Speichern';
}
}
else
{
//bei einer neuen Adresse die Felder leeren
$strasse='';
$plz='';
$ort='';
$gemeinde='';
$nation = 'A';
$typ='';
$heimatadresse='';
$zustelladresse='';
$adresse_id='';
}
echo "<input type='hidden' name='adresse_id' value='".$adresse_id."' />";
echo '<tr class="liste1">';
echo "<td><input type='text' name='strasse' value='".$strasse."' /></td>";
echo "<td><input type='text' name='plz' size='4' value='".$plz."' /></td>";
echo "<td><input type='text' name='ort' value='".$ort."' /></td>";
echo "<td><input type='text' name='gemeinde' value='".$gemeinde."' /></td>";
echo "<td><SELECT name='nation'>";
foreach ($nation_arr as $code=>$kurzbz)
{
if($code==$nation)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><SELECT name='adresstyp'>";
foreach($adresstyp_arr as $code=>$kurzbz)
{
if($code==$typ)
$selected='selected';
else
$selected='';
echo "<OPTION value='$code' $selected>$kurzbz</OPTION>";
}
echo "</SELECT></td>";
echo "<td><input type='checkbox' name='heimatadresse' ".($heimatadresse?'checked':'')." /></td>";
echo "<td><input type='checkbox' name='zustelladresse' ".($zustelladresse?'checked':'')." /></td>";
echo "<td colspan='2'><input type='submit' name='saveadresse' value='$savebuttonvalue' /></td>";
echo "</table>";
echo "</form>";
//eventuell die Felder im oeffnenden Fenster aktualisieren
echo $reloadstr;
?>
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -35,7 +35,7 @@ if (!$conn = pg_pconnect(CONN_STRING))
$datum_obj = new datum();
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+470 -470
View File
@@ -1,471 +1,471 @@
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/reihungstest.class.php');
require_once('../../include/ort.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/pruefling.class.php');
require_once('../../include/person.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/Excel/excel.php');
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$datum_obj = new datum();
$stg_kz = (isset($_GET['stg_kz'])?$_GET['stg_kz']:'-1');
$reihungstest_id = (isset($_GET['reihungstest_id'])?$_GET['reihungstest_id']:'');
$prestudent_id = (isset($_GET['prestudent_id'])?$_GET['prestudent_id']:'');
$rtpunkte = (isset($_GET['rtpunkte'])?$_GET['rtpunkte']:'');
$neu = (isset($_GET['neu'])?true:false);
$stg_arr = array();
$error = false;
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(isset($_GET['excel']))
{
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
foreach ($studiengang->result as $stg)
$stg_arr[$stg->studiengang_kz]=$stg->kuerzel;
$reihungstest = new reihungstest($conn);
if($reihungstest->load($_GET['reihungstest_id']))
{
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Anwesenheitsliste_Reihungstest_".$reihungstest->datum.".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Reihungstest");
//Formate Definieren
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$worksheet->write(0,0,'Anwesenheitsliste Reihungstest '.$datum_obj->convertISODate($reihungstest->datum).' '.$reihungstest->uhrzeit.' Uhr '.$reihungstest->anmerkung.', erstellt am '.date('d.m.Y'), $format_bold);
//Ueberschriften
$i=0;
$worksheet->write(2,$i,"Vorname", $format_bold);
$maxlength[$i] = 7;
$worksheet->write(2,++$i,"Nachname", $format_bold);
$maxlength[$i] = 8;
$worksheet->write(2,++$i,"Geburtsdatum", $format_bold);
$maxlength[$i] = 12;
$worksheet->write(2,++$i,"Studiengang", $format_bold);
$maxlength[$i] = 11;
$worksheet->write(2,++$i,"EMail", $format_bold);
$maxlength[$i] = 5;
$worksheet->write(2,++$i,"STRASSE", $format_bold);
$maxlength[$i] = 6;
$worksheet->write(2,++$i,"PLZ", $format_bold);
$maxlength[$i] = 3;
$worksheet->write(2,++$i,"ORT", $format_bold);
$maxlength[$i] = 3;
$qry = "SELECT *, (SELECT kontakt FROM tbl_kontakt WHERE kontakttyp='email' AND person_id=tbl_prestudent.person_id AND zustellung=true LIMIT 1) as email FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) WHERE reihungstest_id='$reihungstest->reihungstest_id' ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
$zeile=3;
while($row = pg_fetch_object($result))
{
$i=0;
$worksheet->write($zeile,$i, $row->vorname);
if(strlen($row->vorname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vorname);
$worksheet->write($zeile,++$i,$row->nachname);
if(strlen($row->nachname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->nachname);
$worksheet->write($zeile,++$i,$datum_obj->convertISODate($row->gebdatum));
if(strlen($row->gebdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->gebdatum);
$worksheet->write($zeile,++$i,$stg_arr[$row->studiengang_kz]);
if(strlen($stg_arr[$row->studiengang_kz])>$maxlength[$i])
$maxlength[$i] = mb_strlen($stg_arr[$row->studiengang_kz]);
$worksheet->write($zeile,++$i,$row->email);
if(strlen($row->email)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->email);
$qry = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id' AND zustelladresse=true LIMIT 1";
if($result_adresse = pg_query($conn, $qry))
{
if($row_adresse = pg_fetch_object($result_adresse))
{
$worksheet->write($zeile,++$i,$row_adresse->strasse);
if(strlen($row_adresse->strasse)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row_adresse->strasse);
$worksheet->write($zeile,++$i,$row_adresse->plz);
if(strlen($row_adresse->plz)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row_adresse->plz);
$worksheet->write($zeile,++$i,$row_adresse->ort);
if(strlen($row_adresse->ort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row_adresse->ort);
}
}
$zeile++;
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
}
else
{
echo 'Reihungstest wurde nicht gefunden!';
}
}
else
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Reihungstest</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
<h2>Reihungstest - Verwaltung</h2>';
// Speichern eines Reihungstesttermines
if(isset($_POST['speichern']))
{
$reihungstest = new reihungstest($conn);
if(isset($_POST['reihungstest_id']) && $_POST['reihungstest_id']!='')
{
//Reihungstest laden
if(!$reihungstest->load($_POST['reihungstest_id']))
die($reihungstest->errormsg);
$reihungstest->new = false;
}
else
{
//Neuen Reihungstest anlegen
$reihungstest->new=true;
$reihungstest->insertvon = $user;
$reihungstest->insertamum = date('Y-m-d H:i:s');
}
//Datum und Uhrzeit pruefen
if($_POST['datum']!='' && !$datum_obj->checkDatum($_POST['datum']))
{
echo '<span class="input_error">Datum ist ungueltig. Das Datum muss im Format DD.MM.JJJJ eingegeben werden<br></span>';
$error = true;
}
if($_POST['uhrzeit']!='' && !$datum_obj->checkUhrzeit($_POST['uhrzeit']))
{
echo '<span class="input_error">Uhrzeit ist ungueltig:'.$_POST['uhrzeit'].'. Die Uhrzeit muss im Format HH:MM:SS angegeben werden!<br></span>';
$error = true;
}
if(!$error)
{
$reihungstest->studiengang_kz = $_POST['studiengang_kz'];
$reihungstest->ort_kurzbz = $_POST['ort_kurzbz'];
$reihungstest->anmerkung = $_POST['anmerkung'];
$reihungstest->datum = $_POST['datum'];
$reihungstest->uhrzeit = $_POST['uhrzeit'];
$reihungstest->updateamum = date('Y-m-d H:i:s');
$reihungstest->udpatevon = $user;
if($reihungstest->save())
{
echo '<b>Daten wurden erfolgreich gespeichert</b> <script>window.opener.StudentReihungstestDropDownRefresh();</script>';
$reihungstest_id = $reihungstest->reihungstest_id;
$stg_kz = $reihungstest->studiengang_kz;
}
else
{
echo '<span class="input_error">Fehler beim Speichern der Daten: '.$reihungstest->errormsg.'</span>';
}
}
$neu=false;
}
// Uebertraegt die Punkte eines Prestudenten ins FAS
if(isset($_GET['type']) && $_GET['type']=='savertpunkte')
{
$prestudent = new prestudent($conn);
$prestudent->load($prestudent_id);
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz', $prestudent->studiengang_kz, 'suid'))
{
$prestudent->rt_punkte1 = $rtpunkte;
$prestudent->punkte = $prestudent->rt_punkte1 + $prestudent->rt_punkte2;
$prestudent->save(false);
}
else
{
echo '<span class="input_error"><br>Sie haben keine Berechtigung zur Uebernahme der Punkte fuer '.$row->nachname.' '.$row->vorname.'</span>';
}
}
// Uebertraegt alle Punkte eines Reihungstests ins FAS
if(isset($_GET['type']) && $_GET['type']=='saveallrtpunkte')
{
$errormsg='';
$qry = "SELECT prestudent_id, studiengang_kz, nachname, vorname
FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id)
WHERE reihungstest_id='".addslashes($reihungstest_id)."'";
// AND (rt_punkte1='' OR rt_punkte1 is null)";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
{
$prestudent = new prestudent($conn);
$prestudent->load($row->prestudent_id);
$pruefling = new pruefling($conn);
$rtpunkte = $pruefling->getReihungstestErgebnis($row->prestudent_id);
$prestudent->rt_punkte1 = $rtpunkte;
$prestudent->punkte = $prestudent->rt_punkte1 + $prestudent->rt_punkte2;
$prestudent->save(false);
}
else
{
$errormsg .= "<br>Sie haben keine Berechtigung zur Uebernahme der Punkte fuer $row->nachname $row->vorname";
}
}
if($errormsg!='')
{
echo '<span class="input_error">'.$errormsg.'</span>';
}
}
}
echo '<br><table width="100%"><tr><td>';
//Studiengang DropDown
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
echo "<SELECT name='studiengang' onchange='window.location.href=this.value'>";
if($stg_kz==-1)
$selected='selected';
else
$selected='';
echo "<OPTION value='".$_SERVER['PHP_SELF']."?stg_kz=-1' $selected>Alle Studiengaenge</OPTION>";
foreach ($studiengang->result as $row)
{
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
if($stg_kz=='')
$stg_kz=$row->studiengang_kz;
if($row->studiengang_kz==$stg_kz)
$selected='selected';
else
$selected='';
echo "<OPTION value='".$_SERVER['PHP_SELF']."?stg_kz=$row->studiengang_kz' $selected>$row->kuerzel</OPTION>";
}
echo "</SELECT>";
//Reihungstest DropDown
$reihungstest = new reihungstest($conn);
if($stg_kz==-1)
$reihungstest->getAll(date('Y').'-01-01'); //Alle Reihungstests ab diesem Jahr laden
else
$reihungstest->getReihungstest($stg_kz);
echo "<SELECT name='reihungstest' id='reihungstest' onchange='window.location.href=this.value'>";
foreach ($reihungstest->result as $row)
{
if($reihungstest_id=='')
$reihungstest_id=$row->reihungstest_id;
if($row->reihungstest_id==$reihungstest_id)
$selected='selected';
else
$selected='';
echo "<OPTION value='".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&reihungstest_id=$row->reihungstest_id' $selected>$row->datum $row->uhrzeit $row->ort_kurzbz $row->anmerkung</OPTION>";
}
echo "</SELECT>";
echo "<INPUT type='button' value='Anzeigen' onclick='window.location.href=document.getElementById(\"reihungstest\").value;'>";
echo "</td>";
echo "<td align='right'><INPUT type='button' value='Neuen Reihungstesttermin anlegen' onclick='window.location.href=\"".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&neu=true\"' >";
echo "</td></tr></table><br>";
$reihungstest = new reihungstest($conn);
if(!$neu)
{
if(!$reihungstest->load($reihungstest_id))
die('Reihungstest existiert nicht: '.$reihungstest_id);
}
else
{
if($stg_kz!=-1 && $stg_kz!='')
$reihungstest->studiengang_kz = $stg_kz;
$reihungstest_id='';
$reihungstest->datum = date('Y-m-d');
$reihungstest->uhrzeit = date('H:i:s');
}
if($rechte->isBerechtigt('admin',0, 'suid'))
{
echo '<a href="reihungstest_administration.php">Administration</a>';
}
//Formular zum Bearbeiten des Reihungstests
echo '<HR>';
echo "<FORM method='POST'>";
echo "<input type='hidden' value='$reihungstest->reihungstest_id' name='reihungstest_id' />";
//Studiengang DropDown
echo "<table><tr><td>Studiengang</td><td><SELECT name='studiengang_kz'>";
if($reihungstest->studiengang_kz=='')
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='' $selected>-- keine Auswahl --</OPTION>";
foreach ($studiengang->result as $row)
{
if($row->studiengang_kz==$reihungstest->studiengang_kz)
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='$row->studiengang_kz' $selected>$row->kuerzel</OPTION>";
}
echo "</SELECT></TD></TR>";
//Ort DropDown
echo "<tr><td>Ort</td><td><SELECT name='ort_kurzbz'>";
if($reihungstest->ort_kurzbz=='')
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='' $selected>-- keine Auswahl --</OPTION>";
$ort = new ort($conn);
$ort->getAll();
foreach ($ort->result as $row)
{
if($row->ort_kurzbz==$reihungstest->ort_kurzbz)
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->ort_kurzbz' $selected>$row->ort_kurzbz</OPTION";
}
echo '</SELECT></td></tr>';
echo '<tr><td>Anmerkung</td><td><input type="input" name="anmerkung" value="'.$reihungstest->anmerkung.'"></td></tr>';
echo '<tr><td>Datum</td><td><input type="input" name="datum" value="'.$datum_obj->convertISODate($reihungstest->datum).'"></td></tr>';
echo '<tr><td>Uhrzeit</td><td><input type="input" name="uhrzeit" value="'.$reihungstest->uhrzeit.'"> (Format: HH:MM:SS)</td></tr>';
if(!$neu)
$val = 'Änderung Speichern';
else
$val = 'Neu anlegen';
echo '<tr><td></td><td><input type="submit" name="speichern" value="'.$val.'"></td></tr>';
echo '</table>';
echo '</FORM>';
echo '<HR>';
if($reihungstest_id!='')
{
echo '<table width="100%"><tr><td>';
echo "<a href='".$_SERVER['PHP_SELF']."?reihungstest_id=$reihungstest_id&excel=true'>Excel Export</a>";
echo '</td><td align="right">';
echo "<a href='".$_SERVER['PHP_SELF']."?reihungstest_id=$reihungstest_id&type=saveallrtpunkte'>alle Punkte ins FAS &uuml;bertragen</a>";
echo '</td></tr></table>';
//Liste der Interessenten die zum Reihungstest angemeldet sind
$qry = "SELECT *, (SELECT kontakt FROM tbl_kontakt WHERE kontakttyp='email' AND person_id=tbl_prestudent.person_id AND zustellung=true LIMIT 1) as email FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) WHERE reihungstest_id='$reihungstest_id' ORDER BY nachname, vorname";
$mailto = '';
if($result = pg_query($conn, $qry))
{
echo 'Anzahl: '.pg_num_rows($result);
$pruefling = new pruefling($conn);
echo "<table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Studiengang</th>
<th class='table-sortable:default'>Geburtsdatum</th>
<th class='table-sortable:default'>EMail</th>
<th class='table-sortable:default'>Ergebnis</th>
<th class='table-sortable:default'>FAS</th>
</tr>
</thead>
<tbody>";
while($row = pg_fetch_object($result))
{
$rtergebnis = $pruefling->getReihungstestErgebnis($row->prestudent_id);
echo "
<tr>
<td>$row->vorname</td>
<td>$row->nachname</td>
<td>".$stg_arr[$row->studiengang_kz]."</td>
<td>".$datum_obj->convertISODate($row->gebdatum)."</td>
<td><a href='mailto:$row->email'>$row->email</a></td>
<td align='right'>".($rtergebnis==0?'-':number_format($rtergebnis,2,'.',''))."</td>
<td align='right'>".($rtergebnis>0 && $row->rt_punkte1==''?'<a href="'.$_SERVER['PHP_SELF'].'?reihungstest_id='.$reihungstest_id.'&stg_kz='.$stg_kz.'&type=savertpunkte&prestudent_id='.$row->prestudent_id.'&rtpunkte='.$rtergebnis.'" >&uuml;bertragen</a>':$row->rt_punkte1)."</td>
</tr>";
$mailto.= ($mailto!=''?',':'').$row->email;
}
echo "</tbody></table>";
echo "<br><a href='mailto:?bcc=$mailto'>Mail an alle senden</a>";
}
}
echo '
</body>
</html>';
}
<?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>,
* Rudolf Hangl <rudolf.hangl@technikum-wien.at> and
* Gerald Raab <gerald.raab@technikum-wien.at>.
*/
require_once('../config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/reihungstest.class.php');
require_once('../../include/ort.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/pruefling.class.php');
require_once('../../include/person.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/Excel/excel.php');
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$datum_obj = new datum();
$stg_kz = (isset($_GET['stg_kz'])?$_GET['stg_kz']:'-1');
$reihungstest_id = (isset($_GET['reihungstest_id'])?$_GET['reihungstest_id']:'');
$prestudent_id = (isset($_GET['prestudent_id'])?$_GET['prestudent_id']:'');
$rtpunkte = (isset($_GET['rtpunkte'])?$_GET['rtpunkte']:'');
$neu = (isset($_GET['neu'])?true:false);
$stg_arr = array();
$error = false;
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(isset($_GET['excel']))
{
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
foreach ($studiengang->result as $stg)
$stg_arr[$stg->studiengang_kz]=$stg->kuerzel;
$reihungstest = new reihungstest($conn);
if($reihungstest->load($_GET['reihungstest_id']))
{
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Anwesenheitsliste_Reihungstest_".$reihungstest->datum.".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Reihungstest");
//Formate Definieren
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$worksheet->write(0,0,'Anwesenheitsliste Reihungstest '.$datum_obj->convertISODate($reihungstest->datum).' '.$reihungstest->uhrzeit.' Uhr '.$reihungstest->anmerkung.', erstellt am '.date('d.m.Y'), $format_bold);
//Ueberschriften
$i=0;
$worksheet->write(2,$i,"Vorname", $format_bold);
$maxlength[$i] = 7;
$worksheet->write(2,++$i,"Nachname", $format_bold);
$maxlength[$i] = 8;
$worksheet->write(2,++$i,"Geburtsdatum", $format_bold);
$maxlength[$i] = 12;
$worksheet->write(2,++$i,"Studiengang", $format_bold);
$maxlength[$i] = 11;
$worksheet->write(2,++$i,"EMail", $format_bold);
$maxlength[$i] = 5;
$worksheet->write(2,++$i,"STRASSE", $format_bold);
$maxlength[$i] = 6;
$worksheet->write(2,++$i,"PLZ", $format_bold);
$maxlength[$i] = 3;
$worksheet->write(2,++$i,"ORT", $format_bold);
$maxlength[$i] = 3;
$qry = "SELECT *, (SELECT kontakt FROM tbl_kontakt WHERE kontakttyp='email' AND person_id=tbl_prestudent.person_id AND zustellung=true LIMIT 1) as email FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) WHERE reihungstest_id='$reihungstest->reihungstest_id' ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
$zeile=3;
while($row = pg_fetch_object($result))
{
$i=0;
$worksheet->write($zeile,$i, $row->vorname);
if(strlen($row->vorname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->vorname);
$worksheet->write($zeile,++$i,$row->nachname);
if(strlen($row->nachname)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->nachname);
$worksheet->write($zeile,++$i,$datum_obj->convertISODate($row->gebdatum));
if(strlen($row->gebdatum)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->gebdatum);
$worksheet->write($zeile,++$i,$stg_arr[$row->studiengang_kz]);
if(strlen($stg_arr[$row->studiengang_kz])>$maxlength[$i])
$maxlength[$i] = mb_strlen($stg_arr[$row->studiengang_kz]);
$worksheet->write($zeile,++$i,$row->email);
if(strlen($row->email)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row->email);
$qry = "SELECT * FROM public.tbl_adresse WHERE person_id='$row->person_id' AND zustelladresse=true LIMIT 1";
if($result_adresse = pg_query($conn, $qry))
{
if($row_adresse = pg_fetch_object($result_adresse))
{
$worksheet->write($zeile,++$i,$row_adresse->strasse);
if(strlen($row_adresse->strasse)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row_adresse->strasse);
$worksheet->write($zeile,++$i,$row_adresse->plz);
if(strlen($row_adresse->plz)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row_adresse->plz);
$worksheet->write($zeile,++$i,$row_adresse->ort);
if(strlen($row_adresse->ort)>$maxlength[$i])
$maxlength[$i] = mb_strlen($row_adresse->ort);
}
}
$zeile++;
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
}
else
{
echo 'Reihungstest wurde nicht gefunden!';
}
}
else
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Reihungstest</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body class="Background_main">
<h2>Reihungstest - Verwaltung</h2>';
// Speichern eines Reihungstesttermines
if(isset($_POST['speichern']))
{
$reihungstest = new reihungstest($conn);
if(isset($_POST['reihungstest_id']) && $_POST['reihungstest_id']!='')
{
//Reihungstest laden
if(!$reihungstest->load($_POST['reihungstest_id']))
die($reihungstest->errormsg);
$reihungstest->new = false;
}
else
{
//Neuen Reihungstest anlegen
$reihungstest->new=true;
$reihungstest->insertvon = $user;
$reihungstest->insertamum = date('Y-m-d H:i:s');
}
//Datum und Uhrzeit pruefen
if($_POST['datum']!='' && !$datum_obj->checkDatum($_POST['datum']))
{
echo '<span class="input_error">Datum ist ungueltig. Das Datum muss im Format DD.MM.JJJJ eingegeben werden<br></span>';
$error = true;
}
if($_POST['uhrzeit']!='' && !$datum_obj->checkUhrzeit($_POST['uhrzeit']))
{
echo '<span class="input_error">Uhrzeit ist ungueltig:'.$_POST['uhrzeit'].'. Die Uhrzeit muss im Format HH:MM:SS angegeben werden!<br></span>';
$error = true;
}
if(!$error)
{
$reihungstest->studiengang_kz = $_POST['studiengang_kz'];
$reihungstest->ort_kurzbz = $_POST['ort_kurzbz'];
$reihungstest->anmerkung = $_POST['anmerkung'];
$reihungstest->datum = $_POST['datum'];
$reihungstest->uhrzeit = $_POST['uhrzeit'];
$reihungstest->updateamum = date('Y-m-d H:i:s');
$reihungstest->udpatevon = $user;
if($reihungstest->save())
{
echo '<b>Daten wurden erfolgreich gespeichert</b> <script>window.opener.StudentReihungstestDropDownRefresh();</script>';
$reihungstest_id = $reihungstest->reihungstest_id;
$stg_kz = $reihungstest->studiengang_kz;
}
else
{
echo '<span class="input_error">Fehler beim Speichern der Daten: '.$reihungstest->errormsg.'</span>';
}
}
$neu=false;
}
// Uebertraegt die Punkte eines Prestudenten ins FAS
if(isset($_GET['type']) && $_GET['type']=='savertpunkte')
{
$prestudent = new prestudent($conn);
$prestudent->load($prestudent_id);
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz', $prestudent->studiengang_kz, 'suid'))
{
$prestudent->rt_punkte1 = $rtpunkte;
$prestudent->punkte = $prestudent->rt_punkte1 + $prestudent->rt_punkte2;
$prestudent->save(false);
}
else
{
echo '<span class="input_error"><br>Sie haben keine Berechtigung zur Uebernahme der Punkte fuer '.$row->nachname.' '.$row->vorname.'</span>';
}
}
// Uebertraegt alle Punkte eines Reihungstests ins FAS
if(isset($_GET['type']) && $_GET['type']=='saveallrtpunkte')
{
$errormsg='';
$qry = "SELECT prestudent_id, studiengang_kz, nachname, vorname
FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id)
WHERE reihungstest_id='".addslashes($reihungstest_id)."'";
// AND (rt_punkte1='' OR rt_punkte1 is null)";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
if($rechte->isBerechtigt('admin') || $rechte->isBerechtigt('assistenz', $row->studiengang_kz, 'suid'))
{
$prestudent = new prestudent($conn);
$prestudent->load($row->prestudent_id);
$pruefling = new pruefling($conn);
$rtpunkte = $pruefling->getReihungstestErgebnis($row->prestudent_id);
$prestudent->rt_punkte1 = $rtpunkte;
$prestudent->punkte = $prestudent->rt_punkte1 + $prestudent->rt_punkte2;
$prestudent->save(false);
}
else
{
$errormsg .= "<br>Sie haben keine Berechtigung zur Uebernahme der Punkte fuer $row->nachname $row->vorname";
}
}
if($errormsg!='')
{
echo '<span class="input_error">'.$errormsg.'</span>';
}
}
}
echo '<br><table width="100%"><tr><td>';
//Studiengang DropDown
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbz', false);
echo "<SELECT name='studiengang' onchange='window.location.href=this.value'>";
if($stg_kz==-1)
$selected='selected';
else
$selected='';
echo "<OPTION value='".$_SERVER['PHP_SELF']."?stg_kz=-1' $selected>Alle Studiengaenge</OPTION>";
foreach ($studiengang->result as $row)
{
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
if($stg_kz=='')
$stg_kz=$row->studiengang_kz;
if($row->studiengang_kz==$stg_kz)
$selected='selected';
else
$selected='';
echo "<OPTION value='".$_SERVER['PHP_SELF']."?stg_kz=$row->studiengang_kz' $selected>$row->kuerzel</OPTION>";
}
echo "</SELECT>";
//Reihungstest DropDown
$reihungstest = new reihungstest($conn);
if($stg_kz==-1)
$reihungstest->getAll(date('Y').'-01-01'); //Alle Reihungstests ab diesem Jahr laden
else
$reihungstest->getReihungstest($stg_kz);
echo "<SELECT name='reihungstest' id='reihungstest' onchange='window.location.href=this.value'>";
foreach ($reihungstest->result as $row)
{
if($reihungstest_id=='')
$reihungstest_id=$row->reihungstest_id;
if($row->reihungstest_id==$reihungstest_id)
$selected='selected';
else
$selected='';
echo "<OPTION value='".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&reihungstest_id=$row->reihungstest_id' $selected>$row->datum $row->uhrzeit $row->ort_kurzbz $row->anmerkung</OPTION>";
}
echo "</SELECT>";
echo "<INPUT type='button' value='Anzeigen' onclick='window.location.href=document.getElementById(\"reihungstest\").value;'>";
echo "</td>";
echo "<td align='right'><INPUT type='button' value='Neuen Reihungstesttermin anlegen' onclick='window.location.href=\"".$_SERVER['PHP_SELF']."?stg_kz=$stg_kz&neu=true\"' >";
echo "</td></tr></table><br>";
$reihungstest = new reihungstest($conn);
if(!$neu)
{
if(!$reihungstest->load($reihungstest_id))
die('Reihungstest existiert nicht: '.$reihungstest_id);
}
else
{
if($stg_kz!=-1 && $stg_kz!='')
$reihungstest->studiengang_kz = $stg_kz;
$reihungstest_id='';
$reihungstest->datum = date('Y-m-d');
$reihungstest->uhrzeit = date('H:i:s');
}
if($rechte->isBerechtigt('admin',0, 'suid'))
{
echo '<a href="reihungstest_administration.php">Administration</a>';
}
//Formular zum Bearbeiten des Reihungstests
echo '<HR>';
echo "<FORM method='POST'>";
echo "<input type='hidden' value='$reihungstest->reihungstest_id' name='reihungstest_id' />";
//Studiengang DropDown
echo "<table><tr><td>Studiengang</td><td><SELECT name='studiengang_kz'>";
if($reihungstest->studiengang_kz=='')
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='' $selected>-- keine Auswahl --</OPTION>";
foreach ($studiengang->result as $row)
{
if($row->studiengang_kz==$reihungstest->studiengang_kz)
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='$row->studiengang_kz' $selected>$row->kuerzel</OPTION>";
}
echo "</SELECT></TD></TR>";
//Ort DropDown
echo "<tr><td>Ort</td><td><SELECT name='ort_kurzbz'>";
if($reihungstest->ort_kurzbz=='')
$selected = 'selected';
else
$selected = '';
echo "<OPTION value='' $selected>-- keine Auswahl --</OPTION>";
$ort = new ort($conn);
$ort->getAll();
foreach ($ort->result as $row)
{
if($row->ort_kurzbz==$reihungstest->ort_kurzbz)
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->ort_kurzbz' $selected>$row->ort_kurzbz</OPTION";
}
echo '</SELECT></td></tr>';
echo '<tr><td>Anmerkung</td><td><input type="input" name="anmerkung" value="'.$reihungstest->anmerkung.'"></td></tr>';
echo '<tr><td>Datum</td><td><input type="input" name="datum" value="'.$datum_obj->convertISODate($reihungstest->datum).'"></td></tr>';
echo '<tr><td>Uhrzeit</td><td><input type="input" name="uhrzeit" value="'.$reihungstest->uhrzeit.'"> (Format: HH:MM:SS)</td></tr>';
if(!$neu)
$val = 'Änderung Speichern';
else
$val = 'Neu anlegen';
echo '<tr><td></td><td><input type="submit" name="speichern" value="'.$val.'"></td></tr>';
echo '</table>';
echo '</FORM>';
echo '<HR>';
if($reihungstest_id!='')
{
echo '<table width="100%"><tr><td>';
echo "<a href='".$_SERVER['PHP_SELF']."?reihungstest_id=$reihungstest_id&excel=true'>Excel Export</a>";
echo '</td><td align="right">';
echo "<a href='".$_SERVER['PHP_SELF']."?reihungstest_id=$reihungstest_id&type=saveallrtpunkte'>alle Punkte ins FAS &uuml;bertragen</a>";
echo '</td></tr></table>';
//Liste der Interessenten die zum Reihungstest angemeldet sind
$qry = "SELECT *, (SELECT kontakt FROM tbl_kontakt WHERE kontakttyp='email' AND person_id=tbl_prestudent.person_id AND zustellung=true LIMIT 1) as email FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) WHERE reihungstest_id='$reihungstest_id' ORDER BY nachname, vorname";
$mailto = '';
if($result = pg_query($conn, $qry))
{
echo 'Anzahl: '.pg_num_rows($result);
$pruefling = new pruefling($conn);
echo "<table class='liste table-autosort:2 table-stripeclass:alternate table-autostripe'>
<thead>
<tr class='liste'>
<th class='table-sortable:default'>Vorname</th>
<th class='table-sortable:default'>Nachname</th>
<th class='table-sortable:default'>Studiengang</th>
<th class='table-sortable:default'>Geburtsdatum</th>
<th class='table-sortable:default'>EMail</th>
<th class='table-sortable:default'>Ergebnis</th>
<th class='table-sortable:default'>FAS</th>
</tr>
</thead>
<tbody>";
while($row = pg_fetch_object($result))
{
$rtergebnis = $pruefling->getReihungstestErgebnis($row->prestudent_id);
echo "
<tr>
<td>$row->vorname</td>
<td>$row->nachname</td>
<td>".$stg_arr[$row->studiengang_kz]."</td>
<td>".$datum_obj->convertISODate($row->gebdatum)."</td>
<td><a href='mailto:$row->email'>$row->email</a></td>
<td align='right'>".($rtergebnis==0?'-':number_format($rtergebnis,2,'.',''))."</td>
<td align='right'>".($rtergebnis>0 && $row->rt_punkte1==''?'<a href="'.$_SERVER['PHP_SELF'].'?reihungstest_id='.$reihungstest_id.'&stg_kz='.$stg_kz.'&type=savertpunkte&prestudent_id='.$row->prestudent_id.'&rtpunkte='.$rtergebnis.'" >&uuml;bertragen</a>':$row->rt_punkte1)."</td>
</tr>";
$mailto.= ($mailto!=''?',':'').$row->email;
}
echo "</tbody></table>";
echo "<br><a href='mailto:?bcc=$mailto'>Mail an alle senden</a>";
}
}
echo '
</body>
</html>';
}
?>
+224 -224
View File
@@ -1,225 +1,225 @@
<?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/globals.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/variable.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/studiensemester.class.php');
if (!$conn = @pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Sie haben keine Rechte für diese Seite');
$reloadstr = ""; // neuladen der liste im oberen frame
$htmlstr = "";
$errorstr = ""; //fehler beim insert
$name = isset($_REQUEST['name'])?$_REQUEST['name']:'';
$uid = isset($_REQUEST['uid'])?$_REQUEST['uid']:'';
$wert = isset($_REQUEST['wert'])?$_REQUEST['wert']:'';
if(isset($_GET['standard']))
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
$qrys = array(
"Insert into public.tbl_variable(name, uid, wert) values('semester_aktuell','$uid','$stsem');",
"Insert into public.tbl_variable(name, uid, wert) values('db_stpl_table','$uid','stundenplandev');",
"Insert into public.tbl_variable(name, uid, wert) values('ignore_kollision','$uid','false');",
"Insert into public.tbl_variable(name, uid, wert) values('kontofilterstg','$uid','false');",
"Insert into public.tbl_variable(name, uid, wert) values('ignore_zeitsperre','$uid','false');",
"Insert into public.tbl_variable(name, uid, wert) values('ignore_reservierung','$uid','false');"
);
$error = false;
foreach ($qrys as $qry)
{
if(!@pg_query($conn, $qry))
{
$error = true;
}
}
if($error)
$errorstr.="Es konnten nicht alle Werte angelegt werden";
$reloadstr .= "<script type='text/javascript' language='JavaScript'>\n";
$reloadstr .= " parent.uebersicht.location.href='variablen_uebersicht.php';";
$reloadstr .= "</script>\n";
}
if(isset($_POST["del"]))
{
if($name!='' && $uid!='')
{
$variable = new variable($conn);
if(!$variable->delete($name, $uid))
$errorstr .= "Datensatz konnte nicht gel&ouml;scht werden!";
else
{
$reloadstr .= "<script type='text/javascript' language='JavaScript'>\n";
$reloadstr .= " parent.uebersicht.location.href='variablen_uebersicht.php';";
$reloadstr .= "</script>\n";
}
}
else
{
die('Falsche Parameteruebergabe');
}
}
if(isset($_POST["schick"]))
{
$variable=new variable($conn);
if($variable->load($uid, $name))
$varialbe->new = false;
else
$variable->new = true;
$variable->name = $name;
$variable->uid = $uid;
$variable->wert = $wert;
if ($variable->save())
{
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht.location.href='variablen_uebersicht.php';";
$reloadstr .= "</script>\n";
}
}
$qry = "SELECT distinct name FROM public.tbl_variable order by name";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$namen[] = $row->name;
}
}
if ($uid!='')
{
$ben = new benutzer($conn);
if (!$ben->load($uid))
$htmlstr .= "<br><div class='kopf'>Benutzer <b>".$uid."</b> existiert nicht</div>";
else
{
$var = new variable($conn);
$var->getVars($uid);
$htmlstr .= "<br><div class='kopf'>Variablen für <b>".$uid."</b></div>\n";
$htmlstr .= "<table style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr><td>Name</td><td>Wert</td></tr>\n";
foreach($var->variables as $v)
{
$htmlstr .= "<form action='".$_SERVER['PHP_SELF']."' method='POST'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$v->uid."'>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td><select name='name'>\n";
foreach($namen as $val)
{
if ($val == $v->name)
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$val."' ".$sel.">".$val."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='wert' value='".$v->wert."' size='15' maxlength='64'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='speichern'></td>";
$htmlstr .= " <td><input type='submit' name='del' value='l&ouml;schen'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
}
$htmlstr .= "<form action='".$_SERVER['PHP_SELF']."' method='POST'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td><select name='name'>\n";
foreach($namen as $val)
{
$htmlstr .= " <option value='".$val."'>".$val."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='wert' value='' size='15' maxlength='64'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='neu'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
$htmlstr .="<br><br><a href='".$_SERVER['PHP_SELF']."?standard=true&uid=$uid'>Standardwerte anlegen</a>";
}
}
$htmlstr .= "<div class='inserterror'>".$errorstr."</div>\n";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Studiengang - Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script src="../../include/js/mailcheck.js"></script>
<script src="../../include/js/datecheck.js"></script>
<script type="text/javascript">
function confdel()
{
if(confirm("Diesen Datensatz wirklick loeschen?"))
return true;
return false;
}
</script>
</head>
<body style="background-color:#eeeeee;">
<?php
echo $htmlstr;
echo $reloadstr;
?>
</body>
<?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/globals.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/variable.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/studiensemester.class.php');
if (!$conn = @pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$user = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))
die('Sie haben keine Rechte für diese Seite');
$reloadstr = ""; // neuladen der liste im oberen frame
$htmlstr = "";
$errorstr = ""; //fehler beim insert
$name = isset($_REQUEST['name'])?$_REQUEST['name']:'';
$uid = isset($_REQUEST['uid'])?$_REQUEST['uid']:'';
$wert = isset($_REQUEST['wert'])?$_REQUEST['wert']:'';
if(isset($_GET['standard']))
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
$qrys = array(
"Insert into public.tbl_variable(name, uid, wert) values('semester_aktuell','$uid','$stsem');",
"Insert into public.tbl_variable(name, uid, wert) values('db_stpl_table','$uid','stundenplandev');",
"Insert into public.tbl_variable(name, uid, wert) values('ignore_kollision','$uid','false');",
"Insert into public.tbl_variable(name, uid, wert) values('kontofilterstg','$uid','false');",
"Insert into public.tbl_variable(name, uid, wert) values('ignore_zeitsperre','$uid','false');",
"Insert into public.tbl_variable(name, uid, wert) values('ignore_reservierung','$uid','false');"
);
$error = false;
foreach ($qrys as $qry)
{
if(!@pg_query($conn, $qry))
{
$error = true;
}
}
if($error)
$errorstr.="Es konnten nicht alle Werte angelegt werden";
$reloadstr .= "<script type='text/javascript' language='JavaScript'>\n";
$reloadstr .= " parent.uebersicht.location.href='variablen_uebersicht.php';";
$reloadstr .= "</script>\n";
}
if(isset($_POST["del"]))
{
if($name!='' && $uid!='')
{
$variable = new variable($conn);
if(!$variable->delete($name, $uid))
$errorstr .= "Datensatz konnte nicht gel&ouml;scht werden!";
else
{
$reloadstr .= "<script type='text/javascript' language='JavaScript'>\n";
$reloadstr .= " parent.uebersicht.location.href='variablen_uebersicht.php';";
$reloadstr .= "</script>\n";
}
}
else
{
die('Falsche Parameteruebergabe');
}
}
if(isset($_POST["schick"]))
{
$variable=new variable($conn);
if($variable->load($uid, $name))
$varialbe->new = false;
else
$variable->new = true;
$variable->name = $name;
$variable->uid = $uid;
$variable->wert = $wert;
if ($variable->save())
{
$reloadstr .= "<script type='text/javascript'>\n";
$reloadstr .= " parent.uebersicht.location.href='variablen_uebersicht.php';";
$reloadstr .= "</script>\n";
}
}
$qry = "SELECT distinct name FROM public.tbl_variable order by name";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$namen[] = $row->name;
}
}
if ($uid!='')
{
$ben = new benutzer();
if (!$ben->load($uid))
$htmlstr .= "<br><div class='kopf'>Benutzer <b>".$uid."</b> existiert nicht</div>";
else
{
$var = new variable($conn);
$var->getVars($uid);
$htmlstr .= "<br><div class='kopf'>Variablen für <b>".$uid."</b></div>\n";
$htmlstr .= "<table style='padding-top:10px;'>\n";
$htmlstr .= "<tr></tr>\n";
$htmlstr .= "<tr><td>Name</td><td>Wert</td></tr>\n";
foreach($var->variables as $v)
{
$htmlstr .= "<form action='".$_SERVER['PHP_SELF']."' method='POST'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$v->uid."'>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td><select name='name'>\n";
foreach($namen as $val)
{
if ($val == $v->name)
$sel = " selected";
else
$sel = "";
$htmlstr .= " <option value='".$val."' ".$sel.">".$val."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='wert' value='".$v->wert."' size='15' maxlength='64'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='speichern'></td>";
$htmlstr .= " <td><input type='submit' name='del' value='l&ouml;schen'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
}
$htmlstr .= "<form action='".$_SERVER['PHP_SELF']."' method='POST'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
$htmlstr .= " <tr>\n";
$htmlstr .= " <td><select name='name'>\n";
foreach($namen as $val)
{
$htmlstr .= " <option value='".$val."'>".$val."</option>";
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='wert' value='' size='15' maxlength='64'></td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='neu'></td>";
$htmlstr .= " </tr>\n";
$htmlstr .= "</form>\n";
$htmlstr .= "</table>\n";
$htmlstr .="<br><br><a href='".$_SERVER['PHP_SELF']."?standard=true&uid=$uid'>Standardwerte anlegen</a>";
}
}
$htmlstr .= "<div class='inserterror'>".$errorstr."</div>\n";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Studiengang - Details</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<script src="../../include/js/mailcheck.js"></script>
<script src="../../include/js/datecheck.js"></script>
<script type="text/javascript">
function confdel()
{
if(confirm("Diesen Datensatz wirklick loeschen?"))
return true;
return false;
}
</script>
</head>
<body style="background-color:#eeeeee;">
<?php
echo $htmlstr;
echo $reloadstr;
?>
</body>
</html>
+1 -1
View File
@@ -29,7 +29,7 @@
$user = get_uid();
$rechte = new benutzerberechtigung($conn);
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin'))