mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
This commit is contained in:
+19
-1
@@ -157,7 +157,25 @@ else
|
||||
<td class="tdwidth10" nowrap> </td>
|
||||
<td class="tdwrap"><a class="Item" href="lvplan/stpl_week.php" target="content"><img src="../../skin/images/menu_item.gif" width="7" height="9"> LV-Plan</a></td>
|
||||
</tr>';
|
||||
|
||||
|
||||
//Projekt-Zeitaufzeichnung
|
||||
$qry = "SELECT count(*) as anzahl FROM fue.tbl_projektbenutzer WHERE uid='$user'";
|
||||
|
||||
if($result = pg_query($db_conn, $qry))
|
||||
{
|
||||
if($row = pg_fetch_object($result))
|
||||
{
|
||||
if($row->anzahl>0)
|
||||
{
|
||||
echo '
|
||||
<tr>
|
||||
<td class="tdwidth10" nowrap> </td>
|
||||
<td class="tdwrap"><a class="Item" href="tools/zeitaufzeichnung.php" target="content"><img src="../../skin/images/menu_item.gif" width="7" height="9"> Zeitaufzeichnung</a></td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($is_student)
|
||||
{
|
||||
echo '<tr>
|
||||
|
||||
@@ -0,0 +1,342 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
require_once('../../config.inc.php');
|
||||
require_once('../../../include/functions.inc.php');
|
||||
require_once('../../../include/person.class.php');
|
||||
require_once('../../../include/benutzer.class.php');
|
||||
require_once('../../../include/studiengang.class.php');
|
||||
require_once('../../../include/fachbereich.class.php');
|
||||
require_once('../../../include/zeitaufzeichnung.class.php');
|
||||
require_once('../../../include/datum.class.php');
|
||||
|
||||
echo '
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<title>Zeitaufzeichnung</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<link href="../../../skin/style.css.php" rel="stylesheet" type="text/css">
|
||||
<script src="../../../include/js/tablesort/table.js" type="text/javascript"></script>
|
||||
<script language="JavaScript">
|
||||
function setbisdatum()
|
||||
{
|
||||
var now = new Date();
|
||||
var ret = "";
|
||||
var monat = now.getMonth();
|
||||
monat++;
|
||||
ret = foo(now.getDate());
|
||||
ret = ret + "." + foo(monat);
|
||||
ret = ret + "." + now.getFullYear();
|
||||
ret = ret + " " + foo(now.getHours());
|
||||
ret = ret + ":" + foo(now.getMinutes());
|
||||
ret = ret + ":" + foo(now.getSeconds());
|
||||
|
||||
document.getElementById("bis").value=ret;
|
||||
}
|
||||
|
||||
function foo(val)
|
||||
{
|
||||
if(val<10)
|
||||
return "0"+val;
|
||||
else
|
||||
return val;
|
||||
}
|
||||
|
||||
function confdel()
|
||||
{
|
||||
return confirm("Wollen Sie diesen Datensatz wirklich loeschen?");
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
';
|
||||
|
||||
echo '<table class="tabcontent">
|
||||
<tr>
|
||||
<td class="tdwidth10"> </td>
|
||||
<td>
|
||||
<table class="tabcontent">
|
||||
<tr>
|
||||
<td class="ContentHeader"><font class="ContentHeader">Zeitaufzeichnung</font></td>
|
||||
</tr>
|
||||
</table>
|
||||
<br>';
|
||||
|
||||
//Variablen initialisieren
|
||||
if(!$conn = pg_pconnect(CONN_STRING))
|
||||
die('Datenbankverbindung fehlgeschlagen');
|
||||
|
||||
$user = get_uid();
|
||||
$datum = new datum();
|
||||
$studiengang = new studiengang($conn);
|
||||
$studiengang->getAll('typ, kurzbz', false);
|
||||
$stg_arr = array();
|
||||
|
||||
foreach ($studiengang->result as $stg)
|
||||
{
|
||||
$stg_arr[$stg->studiengang_kz]=$stg->kuerzel;
|
||||
}
|
||||
|
||||
$zeitaufzeichnung_id = (isset($_GET['zeitaufzeichnung_id'])?$_GET['zeitaufzeichnung_id']:'');
|
||||
$projekt_kurzbz = (isset($_POST['projekt'])?$_POST['projekt']:'');
|
||||
$studiengang_kz = (isset($_POST['studiengang'])?$_POST['studiengang']:'');
|
||||
$fachbereich_kurzbz = (isset($_POST['fachbereich'])?$_POST['fachbereich']:'');
|
||||
$aktivitaet_kurzbz = (isset($_POST['aktivitaet'])?$_POST['aktivitaet']:'');
|
||||
$von = (isset($_POST['von'])?$_POST['von']:date('d.m.Y H:i:s'));
|
||||
$bis = (isset($_POST['bis'])?$_POST['bis']:date('d.m.Y H:i:s'));
|
||||
$beschreibung = (isset($_POST['beschreibung'])?$_POST['beschreibung']:'');
|
||||
|
||||
//Speichern der Daten
|
||||
if(isset($_POST['save']) || isset($_POST['edit']))
|
||||
{
|
||||
$zeit = new zeitaufzeichnung($conn);
|
||||
|
||||
if(isset($_POST['edit']))
|
||||
{
|
||||
if(!$zeit->load($zeitaufzeichnung_id))
|
||||
die('Fehler beim Laden des Datensatzes');
|
||||
|
||||
$zeit->new = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$zeit->new = true;
|
||||
$zeit->insertamum = date('Y-m-d H:i:s');
|
||||
$zeit->insertvon = $user;
|
||||
}
|
||||
|
||||
$zeit->uid = $user;
|
||||
$zeit->aktivitaet_kurzbz = $aktivitaet_kurzbz;
|
||||
$zeit->start = $von;
|
||||
$zeit->ende = $bis;
|
||||
$zeit->beschreibung = $beschreibung;
|
||||
$zeit->studiengang_kz = $studiengang_kz;
|
||||
$zeit->fachbereich_kurzbz = $fachbereich_kurzbz;
|
||||
$zeit->updateamum = date('Y-m-d H:i:s');
|
||||
$zeit->updatevon = $user;
|
||||
$zeit->projekt_kurzbz = $projekt_kurzbz;
|
||||
|
||||
if(!$zeit->save())
|
||||
{
|
||||
echo '<b>Fehler beim Speichern der Daten:'.$zeit->errormsg.'</b><br>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<b>Daten wurden gespeichert</b><br>';
|
||||
}
|
||||
}
|
||||
|
||||
//Datensatz loeschen
|
||||
if(isset($_GET['type']) && $_GET['type']=='delete')
|
||||
{
|
||||
$zeit = new zeitaufzeichnung($conn);
|
||||
|
||||
if($zeit->load($zeitaufzeichnung_id))
|
||||
{
|
||||
if($zeit->uid==$user)
|
||||
{
|
||||
if($zeit->delete($zeitaufzeichnung_id))
|
||||
echo '<b>Eintrag wurde geloescht</b><br>';
|
||||
else
|
||||
echo '<b>Fehler beim Loeschen des Eintrages</b><br>';
|
||||
}
|
||||
else
|
||||
echo '<b>Keine Berechtigung!</b><br>';
|
||||
}
|
||||
else
|
||||
echo '<b>Datensatz wurde nicht gefunden</b><br>';
|
||||
}
|
||||
|
||||
//Laden der Daten zum aendern
|
||||
if(isset($_GET['type']) && $_GET['type']=='edit')
|
||||
{
|
||||
$zeit = new zeitaufzeichnung($conn);
|
||||
|
||||
if($zeit->load($zeitaufzeichnung_id))
|
||||
{
|
||||
if($zeit->uid==$user)
|
||||
{
|
||||
$uid = $zeit->uid;
|
||||
$aktivitaet_kurzbz = $zeit->aktivitaet_kurzbz;
|
||||
$von = date('d.m.Y H:i:s', $datum->mktime_fromtimestamp($zeit->start));
|
||||
$bis = date('d.m.Y H:i:s', $datum->mktime_fromtimestamp($zeit->ende));
|
||||
$beschreibung = $zeit->beschreibung;
|
||||
$studiengang_kz = $zeit->studiengang_kz;
|
||||
$fachbereich_kurzbz = $zeit->fachbereich_kurzbz;
|
||||
$projekt_kurzbz = $zeit->projekt_kurzbz;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Projekte holen fuer zu denen der Benutzer zugeteilt ist
|
||||
$qry_projekt = "SELECT distinct tbl_projekt.* FROM fue.tbl_projektbenutzer JOIN fue.tbl_projekt USING(projekt_kurzbz) WHERE beginn<=now() AND (ende>=now() OR ende is null)";
|
||||
|
||||
if($result_projekt = pg_query($conn, $qry_projekt))
|
||||
{
|
||||
if(pg_num_rows($result_projekt)>0)
|
||||
{
|
||||
$bn = new benutzer($conn);
|
||||
if(!$bn->load($user))
|
||||
die("Benutzer $user wurde nicht gefunden");
|
||||
|
||||
echo "<table width='100%'><tr><td>Zeitaufzeichnung von <b>$bn->vorname $bn->nachname</b></td>
|
||||
<td align='right'><a href='".$_SERVER['PHP_SELF']."' class='Item'>NEU</a></td></tr></table>";
|
||||
|
||||
//Formular
|
||||
echo '<br><br><form method="POST">';
|
||||
|
||||
echo '<table>';
|
||||
//Projekt
|
||||
echo '<tr><td>Projekt</td><td><SELECT name="projekt">';
|
||||
while($row_projekt = pg_fetch_object($result_projekt))
|
||||
{
|
||||
if($projekt_kurzbz == $row_projekt->projekt_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo "<option value='$row_projekt->projekt_kurzbz' $selected>$row_projekt->titel</option>";
|
||||
}
|
||||
echo '</SELECT></td>';
|
||||
|
||||
//Studiengang
|
||||
echo '<td>Studiengang</td><td><SELECT name="studiengang">';
|
||||
$stg_obj = new studiengang($conn);
|
||||
$stg_obj->getAll('typ, kurzbz',false);
|
||||
|
||||
echo "<option value=''>-- keine Auswahl --</option>";
|
||||
|
||||
foreach ($stg_obj->result as $stg)
|
||||
{
|
||||
if($stg->studiengang_kz == $studiengang_kz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo "<option value='$stg->studiengang_kz' $selected>$stg->kuerzel ($stg->kurzbzlang)</option>";
|
||||
}
|
||||
echo '</SELECT>';
|
||||
echo '</td>';
|
||||
echo '</tr>';
|
||||
|
||||
//Aktivitaet
|
||||
echo '<tr>';
|
||||
echo '<td>Aktivität</td><td>';
|
||||
|
||||
$qry = "SELECT * FROM fue.tbl_aktivitaet ORDER by beschreibung";
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
echo '<SELECT name="aktivitaet">';
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
if($aktivitaet_kurzbz == $row->aktivitaet_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo "<option value='$row->aktivitaet_kurzbz' $selected>$row->beschreibung</option>";
|
||||
}
|
||||
echo '</SELECT>';
|
||||
}
|
||||
//Fachbereich
|
||||
echo '</td><td>Fachbereich</td><td><SELECT name="fachbereich">';
|
||||
echo '<option value="">-- keine Auswahl --</option>';
|
||||
|
||||
$fb_obj = new fachbereich($conn);
|
||||
$fb_obj->getAll();
|
||||
|
||||
foreach ($fb_obj->result as $fb)
|
||||
{
|
||||
if($fachbereich_kurzbz == $fb->fachbereich_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
|
||||
echo "<option value='$fb->fachbereich_kurzbz' $selected>$fb->bezeichnung</option>";
|
||||
}
|
||||
echo '</SELECT></td></tr>';
|
||||
echo '<tr><td> </td><td> </td></tr>';
|
||||
//Start/Ende
|
||||
echo '
|
||||
<tr>
|
||||
<td>Von</td><td><input type="text" name="von" value="'.$von.'"></td>
|
||||
<td>Bis</td><td><input type="text" id="bis" name="bis" value="'.$bis.'"><input type="button" value="now" onclick="setbisdatum()"></td>
|
||||
<tr>';
|
||||
//Beschreibung
|
||||
echo '<tr><td>Beschreibung</td><td colspan="3"><textarea name="beschreibung" cols="60">'.$beschreibung.'</textarea></td></tr>';
|
||||
echo '<tr><td></td><td></td><td></td><td align="right">';
|
||||
//SpeichernButton
|
||||
if($zeitaufzeichnung_id=='')
|
||||
echo '<input type="submit" value="Speichern" name="save"></td></tr>';
|
||||
else
|
||||
echo '<input type="submit" value="Ändern" name="edit"></td></tr>';
|
||||
echo '</table>';
|
||||
echo '</form>';
|
||||
|
||||
echo '<br><hr>';
|
||||
|
||||
//Uebersichtstabelle
|
||||
echo "<table id='t1' class='liste table-autosort:1 table-stripeclass:alternate table-autostripe'>\n";
|
||||
echo " <thead><tr class='liste'>\n";
|
||||
echo " <th class='table-sortable:numeric'>ID</th><th class='table-sortable:default'>Projekt</th><th class='table-sortable:default'>Aktivitaet</th><th class='table-sortable:default'>Start</th><th class='table-sortable:default'>Ende</th><th class='table-sortable:default'>Dauer</th><th class='table-sortable:default'>Beschreibung</th><th class='table-sortable:default'>Studiengang</th><th class='table-sortable:default'>Fachbereich</th><th colspan='2'>Aktion</th>";
|
||||
echo " </tr></thead><tbody>\n";
|
||||
|
||||
$qry = "SELECT *, ende-start as diff FROM campus.tbl_zeitaufzeichnung WHERE uid='$user' AND ende>(now() - INTERVAL '40 days') ORDER BY ende DESC";
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
$i = 0;
|
||||
while($row=pg_fetch_object($result))
|
||||
{
|
||||
echo " <tr>\n";
|
||||
echo " <td>".$row->zeitaufzeichnung_id."</td>\n";
|
||||
echo " <td>".$row->projekt_kurzbz."</td>\n";
|
||||
echo " <td>$row->aktivitaet_kurzbz</td>\n";
|
||||
echo " <td>".date('d.m.Y H:i:s', $datum->mktime_fromtimestamp($row->start))."</td>\n";
|
||||
echo " <td>".date('d.m.Y H:i:s', $datum->mktime_fromtimestamp($row->ende))."</td>\n";
|
||||
echo " <td align='right'>".$row->diff."</td>\n";
|
||||
echo " <td title='$row->beschreibung'>".(strlen($row->beschreibung)>53?substr($row->beschreibung,0,50).'...':$row->beschreibung)."</td>\n";
|
||||
echo " <td>".(isset($stg_arr[$row->studiengang_kz])?$stg_arr[$row->studiengang_kz]:$row->studiengang_kz)."</td>\n";
|
||||
echo " <td>$row->fachbereich_kurzbz</td>\n";
|
||||
echo " <td><a href='".$_SERVER['PHP_SELF']."?type=edit&zeitaufzeichnung_id=$row->zeitaufzeichnung_id' class='Item'>edit</a></td>\n";
|
||||
echo " <td><a href='".$_SERVER['PHP_SELF']."?type=delete&zeitaufzeichnung_id=$row->zeitaufzeichnung_id' class='Item' onclick='return confdel()'>delete</a></td>\n";
|
||||
echo " </tr>\n";
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
echo "</tbody></table>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Sie sind derzeit keinen Projekten zugeordnet';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
echo 'Fehler beim Ermitteln der Projekte';
|
||||
}
|
||||
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
@@ -313,6 +313,10 @@ Studenten<br>
|
||||
<hr>
|
||||
<h2>Erledigte Anforderungen</h2>
|
||||
<ul>
|
||||
<li>DiplomaSupplement - verliehener Titel ist nun geschlechtsabhängig<br>
|
||||
06.11.2007 oesi<br>
|
||||
<br>
|
||||
</li>
|
||||
<li>Das Feld Studiengang im PrestudentTab ist nun nicht mehr änderbar<br>
|
||||
05.11.2007 oesi<br>
|
||||
<br>
|
||||
|
||||
@@ -0,0 +1,272 @@
|
||||
<?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>.
|
||||
*/
|
||||
/**
|
||||
* Klasse Zeitaufzeichnung
|
||||
* @create 06-11-2007
|
||||
*/
|
||||
|
||||
class zeitaufzeichnung
|
||||
{
|
||||
var $conn; // resource DB-Handle
|
||||
var $new; // boolean
|
||||
var $errormsg; // string
|
||||
var $result = array(); // zeitaufzeichnung Objekt
|
||||
var $done=false; // boolean
|
||||
|
||||
//Tabellenspalten
|
||||
var $zeitaufzeichnung_id; // serial
|
||||
var $uid; // varchar(16)
|
||||
var $aktivitaet_kurzbz; // varchar(16)
|
||||
var $start; // timestamp
|
||||
var $ende; // timestamp
|
||||
var $beschreibung; // varchar(256)
|
||||
var $studiengang_kz; // integer
|
||||
var $fachbereich_kurzbz; // varchar(16)
|
||||
var $insertamum; // timestamp
|
||||
var $insertvon; // varchar(16)
|
||||
var $updateamum; // timestamp
|
||||
var $updatevon; // varchar(16)
|
||||
var $projekt_kurzbz; // varchar(16)
|
||||
|
||||
|
||||
|
||||
// *************************************************************************
|
||||
// * Konstruktor
|
||||
// * @param $conn Connection
|
||||
// * $zeitaufzeichnung_id ID der Zeitaufzeichnung die geladen werden soll (Default=null)
|
||||
// * $unicode wenn false dann wird das Encoding auf LATIN9 gesetzt
|
||||
// * wenn true dann auf UNICODE
|
||||
// * wenn null dann wird das Encoding nicht veraendert
|
||||
// *************************************************************************
|
||||
function zeitaufzeichnung($conn, $zeitaufzeichnung_id=null,$unicode=false)
|
||||
{
|
||||
$this->conn = $conn;
|
||||
|
||||
if($unicode!=null)
|
||||
{
|
||||
if ($unicode)
|
||||
$qry = "SET CLIENT_ENCODING TO 'UNICODE';";
|
||||
else
|
||||
$qry = "SET CLIENT_ENCODING TO 'LATIN9';";
|
||||
|
||||
if(!pg_query($conn,$qry))
|
||||
{
|
||||
$this->errormsg = "Encoding konnte nicht gesetzt werden";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if($zeitaufzeichnung_id != null)
|
||||
$this->load($zeitaufzeichnung_id);
|
||||
}
|
||||
|
||||
// ***********************************************
|
||||
// * Laedt die Zeitaufzeichnung mit der ID $zeitaufzeichnung_id
|
||||
// * @param $adress_id ID der zu ladenden Adresse
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// ***********************************************
|
||||
function load($zeitaufzeichnung_id)
|
||||
{
|
||||
|
||||
//Pruefen ob zeitaufzeichnung_id eine gueltige Zahl ist
|
||||
if(!is_numeric($zeitaufzeichnung_id) || $zeitaufzeichnung_id == '')
|
||||
{
|
||||
$this->errormsg = 'Zeitaufzeichnung_id muss eine Zahl sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
//Daten aus der Datenbank lesen
|
||||
$qry = "SELECT * FROM campus.tbl_zeitaufzeichnung WHERE zeitaufzeichnung_id='$zeitaufzeichnung_id'";
|
||||
|
||||
if(!$result = pg_query($this->conn, $qry))
|
||||
{
|
||||
$this->errormsg = 'Fehler bei einer Datenbankabfrage';
|
||||
return false;
|
||||
}
|
||||
|
||||
if($row = pg_fetch_object($result))
|
||||
{
|
||||
$this->zeitaufzeichnung_id = $row->zeitaufzeichnung_id;
|
||||
$this->uid = $row->uid;
|
||||
$this->aktivitaet_kurzbz = $row->aktivitaet_kurzbz;
|
||||
$this->start = $row->start;
|
||||
$this->ende = $row->ende;
|
||||
$this->beschreibung = $row->beschreibung;
|
||||
$this->studiengang_kz = $row->studiengang_kz;
|
||||
$this->fachbereich_kurzbz = $row->fachbereich_kurzbz;
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
$this->projekt_kurzbz = $row->projekt_kurzbz;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Es ist kein Datensatz mit dieser ID vorhanden';
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// *******************************************
|
||||
// * Prueft die Variablen auf Gueltigkeit
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// *******************************************
|
||||
function validate()
|
||||
{
|
||||
$this->errormsg = '';
|
||||
return true;
|
||||
}
|
||||
|
||||
// ************************************************
|
||||
// * wenn $var '' ist wird "null" zurueckgegeben
|
||||
// * wenn $var !='' ist werden datenbankkritische
|
||||
// * Zeichen mit backslash versehen und das Ergebnis
|
||||
// * unter Hochkomma gesetzt.
|
||||
// ************************************************
|
||||
function addslashes($var)
|
||||
{
|
||||
return ($var!=''?"'".addslashes($var)."'":'null');
|
||||
}
|
||||
|
||||
// ***********************************************************************
|
||||
// * Speichert den aktuellen Datensatz in die Datenbank
|
||||
// * Wenn $neu auf true gesetzt ist wird ein neuer Datensatz angelegt
|
||||
// * andernfalls wird der Datensatz mit der ID in $adresse_id aktualisiert
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// ***********************************************************************
|
||||
function save()
|
||||
{
|
||||
//Variablen pruefen
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($this->new)
|
||||
{
|
||||
//Neuen Datensatz einfuegen
|
||||
$qry='BEGIN;INSERT INTO campus.tbl_zeitaufzeichnung (uid, aktivitaet_kurzbz, start, ende, beschreibung,
|
||||
studiengang_kz, fachbereich_kurzbz, insertamum, insertvon, updateamum, updatevon, projekt_kurzbz) VALUES('.
|
||||
$this->addslashes($this->uid).', '.
|
||||
$this->addslashes($this->aktivitaet_kurzbz).', '.
|
||||
$this->addslashes($this->start).', '.
|
||||
$this->addslashes($this->ende).', '.
|
||||
$this->addslashes($this->beschreibung).', '.
|
||||
$this->addslashes($this->studiengang_kz).', '.
|
||||
$this->addslashes($this->fachbereich_kurzbz).','.
|
||||
$this->addslashes($this->insertamum).', '.
|
||||
$this->addslashes($this->insertvon).', '.
|
||||
$this->addslashes($this->updateamum).', '.
|
||||
$this->addslashes($this->updatevon).', '.
|
||||
$this->addslashes($this->projekt_kurzbz).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
//Updaten des bestehenden Datensatzes
|
||||
|
||||
//Pruefen ob zeitaufzeichnung_id eine gueltige Zahl ist
|
||||
if(!is_numeric($this->zeitaufzeichnung_id))
|
||||
{
|
||||
$this->errormsg = 'zeitaufzeichnung_id muss eine gueltige Zahl sein: '.$this->zeitaufzeichnung_id."\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry='UPDATE campus.tbl_zeitaufzeichnung SET'.
|
||||
' uid='.$this->addslashes($this->uid).', '.
|
||||
' aktivitaet_kurzbz='.$this->addslashes($this->aktivitaet_kurzbz).', '.
|
||||
' start='.$this->addslashes($this->start).', '.
|
||||
' ende='.$this->addslashes($this->ende).', '.
|
||||
' beschreibung='.$this->addslashes($this->beschreibung).', '.
|
||||
' studiengang_kz='.$this->addslashes($this->studiengang_kz).', '.
|
||||
' fachbereich_kurzbz='.$this->addslashes($this->fachbereich_kurzbz).', '.
|
||||
' updateamum='.$this->addslashes($this->updateamum).', '.
|
||||
' updatevon='.$this->addslashes($this->updatevon).', '.
|
||||
' projekt_kurzbz='.$this->addslashes($this->projekt_kurzbz).' '.
|
||||
'WHERE zeitaufzeichnung_id='.$this->zeitaufzeichnung_id.';';
|
||||
}
|
||||
|
||||
if(pg_query($this->conn,$qry))
|
||||
{
|
||||
if($this->new)
|
||||
{
|
||||
//naechste ID aus der Sequence holen
|
||||
$qry="SELECT currval('campus.tbl_zeitaufzeichnung_zeitaufzeichnung_id_seq') as id;";
|
||||
if($result = pg_query($this->conn, $qry))
|
||||
{
|
||||
if($row = pg_fetch_object($result))
|
||||
{
|
||||
$this->zeitaufzeichnung_id = $row->id;
|
||||
pg_query($this->conn, 'COMMIT');
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
pg_query($this->conn, 'ROLLBACK');
|
||||
$this->errormsg = "Fehler beim Auslesen der Sequence";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
pg_query($this->conn, 'ROLLBACK');
|
||||
$this->errormsg = 'Fehler beim Auslesen der Sequence';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// ********************************************************
|
||||
// * Loescht den Datenensatz mit der ID die uebergeben wird
|
||||
// * @param $zeitaufzeichnnung_id ID die geloescht werden soll
|
||||
// * @return true wenn ok, false im Fehlerfall
|
||||
// ********************************************************
|
||||
function delete($zeitaufzeichnung_id)
|
||||
{
|
||||
//Pruefen ob zeitaufzeichnung_id eine gueltige Zahl ist
|
||||
if(!is_numeric($zeitaufzeichnung_id) || $zeitaufzeichnung_id == '')
|
||||
{
|
||||
$this->errormsg = 'zeitaufzeichnung_id muss eine gueltige Zahl sein'."\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
//loeschen des Datensatzes
|
||||
$qry="DELETE FROM campus.tbl_zeitaufzeichnung WHERE zeitaufzeichnung_id='$zeitaufzeichnung_id';";
|
||||
|
||||
if(pg_query($this->conn,$qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Loeschen der Daten'."\n";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user