mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-25 16:44:28 +00:00
This commit is contained in:
@@ -236,6 +236,14 @@ else
|
|||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="tdwidth10" nowrap> </td>
|
||||||
|
<td class='tdwrap'>
|
||||||
|
<a href="profile/zeitsperre_resturlaub.php" class="Item" target="content">
|
||||||
|
<img src="../../skin/images/menu_item.gif" width="7" height="9"> Zeitsperre
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="tdwidth10" nowrap> </td>
|
<td class="tdwidth10" nowrap> </td>
|
||||||
<td class='tdwrap'>
|
<td class='tdwrap'>
|
||||||
|
|||||||
@@ -0,0 +1,433 @@
|
|||||||
|
<?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 <[email protected]>,
|
||||||
|
* Andreas Oesterreicher <[email protected]> and
|
||||||
|
* Rudolf Hangl <[email protected]>.
|
||||||
|
*/
|
||||||
|
// **
|
||||||
|
// * @brief bietet die Moeglichkeit zur Anzeige und
|
||||||
|
// * Aenderung der Zeitwuensche und Zeitsperren
|
||||||
|
|
||||||
|
require_once('../../config.inc.php');
|
||||||
|
require_once('../../../include/functions.inc.php');
|
||||||
|
require_once('../../../include/zeitsperre.class.php');
|
||||||
|
require_once('../../../include/datum.class.php');
|
||||||
|
require_once('../../../include/resturlaub.class.php');
|
||||||
|
|
||||||
|
$uid = get_uid();
|
||||||
|
|
||||||
|
$PHP_SELF = $_SERVER['PHP_SELF'];
|
||||||
|
|
||||||
|
if(isset($_GET['type']))
|
||||||
|
$type=$_GET['type'];
|
||||||
|
|
||||||
|
if (!$conn = @pg_pconnect(CONN_STRING))
|
||||||
|
die("Es konnte keine Verbindung zum Server aufgebaut werden.");
|
||||||
|
|
||||||
|
$datum_obj = new datum();
|
||||||
|
|
||||||
|
//Stundentabelleholen
|
||||||
|
if(! $result_stunde=pg_query($conn, "SET search_path TO campus; SELECT * FROM lehre.tbl_stunde ORDER BY stunde"))
|
||||||
|
die(pg_last_error($conn));
|
||||||
|
$num_rows_stunde=pg_num_rows($result_stunde);
|
||||||
|
|
||||||
|
?>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Zeitsperre</title>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<link rel="stylesheet" href="../../../skin/style.css.php" type="text/css">
|
||||||
|
<script language="Javascript">
|
||||||
|
function conf_del()
|
||||||
|
{
|
||||||
|
return confirm('Wollen Sie diesen Eintrag wirklich löschen?');
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkval()
|
||||||
|
{
|
||||||
|
if(document.getElementById('vertretung_uid').value=='')
|
||||||
|
{
|
||||||
|
alert('Bitte zuerst eine Vertretung auswählen');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
function berechnen()
|
||||||
|
{
|
||||||
|
document.getElementById('summe').value = parseInt(document.getElementById('resturlaubstage').value)+parseInt(document.getElementById('anspruch').value);
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkdatum()
|
||||||
|
{
|
||||||
|
if(document.getElementById('vondatum').value.length<10)
|
||||||
|
{
|
||||||
|
alert('Von-Datum ist ungültig. Bitte beachten Sie das führende nullen angegeben werden müssen (Beispiel: 01.01.2008)');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(document.getElementById('bisdatum').value.length<10)
|
||||||
|
{
|
||||||
|
alert('Bis-Datum ist ungültig. Bitte beachten Sie das führende nullen angegeben werden müssen (Beispiel: 01.01.2008)');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body id="inhalt">
|
||||||
|
<H2><table class="tabcontent">
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<a class="Item" href="index.php">Userprofil</a> >>
|
||||||
|
Zeitsperren
|
||||||
|
</td>
|
||||||
|
<td align="right"></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</H2>
|
||||||
|
<!-- ************* ZEITSPERREN *****************-->
|
||||||
|
<H3>Zeitsperren</h3>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
//Zeitsperre Speichern
|
||||||
|
if(isset($_GET['type']) && ($_GET['type']=='edit_sperre' || $_GET['type']=='new_sperre'))
|
||||||
|
{
|
||||||
|
$error=false;
|
||||||
|
$error_msg='';
|
||||||
|
//von-datum pruefen
|
||||||
|
if(!ereg("([0-9]{2}).([0-9]{2}).([0-9]{4})",$_POST['vondatum']))
|
||||||
|
{
|
||||||
|
$error=true;
|
||||||
|
$error_msg .= 'Von-Datum ist ungültig ';
|
||||||
|
}
|
||||||
|
//bis-datum pruefen
|
||||||
|
if(!ereg("([0-9]{2}).([0-9]{2}).([0-9]{4})",$_POST['bisdatum']))
|
||||||
|
{
|
||||||
|
$error=true;
|
||||||
|
$error_msg .= 'Bis-Datum ist ungültig ';
|
||||||
|
}
|
||||||
|
|
||||||
|
$zeitsperre = new zeitsperre($conn);
|
||||||
|
|
||||||
|
if($_GET['type']=='edit_sperre')
|
||||||
|
{
|
||||||
|
if(!is_numeric($_GET['id']))
|
||||||
|
{
|
||||||
|
$error=true;
|
||||||
|
$error_msg.='Invalid id ';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//wenn die zeitsperre bereits existiert, dann wird sie geladen
|
||||||
|
$zeitsperre->load($_GET['id']);
|
||||||
|
$zeitsperre->new=false;
|
||||||
|
$zeitsperre->zeitsperre_id = $_GET['id'];
|
||||||
|
|
||||||
|
//pruefen ob die geladene id auch von der person ist die angemeldet ist
|
||||||
|
if($zeitsperre->mitarbeiter_uid!=$uid)
|
||||||
|
die('Sie haben keine Berechtigung fuer diese Zeitsperre');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$zeitsperre->new=true;
|
||||||
|
$zeitsperre->insertamum = date('Y-m-d H:i:s');
|
||||||
|
$zeitsperre->insertvon = $uid;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!$error)
|
||||||
|
{
|
||||||
|
$zeitsperre->zeitsperretyp_kurzbz = $_POST['zeitsperretyp_kurzbz'];
|
||||||
|
$zeitsperre->mitarbeiter_uid = $uid;
|
||||||
|
$zeitsperre->bezeichnung = $_POST['bezeichnung'];
|
||||||
|
$zeitsperre->vondatum = $_POST['vondatum'];
|
||||||
|
$zeitsperre->vonstunde = $_POST['vonstunde'];
|
||||||
|
$zeitsperre->bisdatum = $_POST['bisdatum'];
|
||||||
|
$zeitsperre->bisstunde = $_POST['bisstunde'];
|
||||||
|
$zeitsperre->erreichbarkeit = $_POST['erreichbarkeit'];
|
||||||
|
$zeitsperre->vertretung_uid = $_POST['vertretung_uid'];
|
||||||
|
$zeitsperre->updateamum = date('Y-m-d H:i:s');
|
||||||
|
$zeitsperre->updatevon = $uid;
|
||||||
|
|
||||||
|
if($zeitsperre->save())
|
||||||
|
{
|
||||||
|
echo "Daten wurden erfolgreich gespeichert";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
echo "<span class='error'>Fehler beim Speichern der Daten</span>";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
echo "<span class='error'>$error_msg</span>";
|
||||||
|
}
|
||||||
|
|
||||||
|
//loeschen einer zeitsperre
|
||||||
|
if(isset($_GET['type']) && $_GET['type']=='delete_sperre')
|
||||||
|
{
|
||||||
|
$zeit = new zeitsperre($conn);
|
||||||
|
$zeit->load($_GET['id']);
|
||||||
|
//pruefen ob die person die den datensatz loeschen will auch der
|
||||||
|
//besitzer dieses datensatzes ist
|
||||||
|
if($zeit->mitarbeiter_uid==$uid)
|
||||||
|
{
|
||||||
|
if($zeit->delete($_GET['id']))
|
||||||
|
{
|
||||||
|
echo "Eintrag wurde geloescht";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
echo "<span class='error'>Fehler beim loeschen des Eintrages</span>";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
echo "<span class='error'>Sie haben keine Berechtigung diesen Datensatz zu loeschen</span>";
|
||||||
|
}
|
||||||
|
|
||||||
|
//zeitsperren des users laden
|
||||||
|
$zeit = new zeitsperre($conn);
|
||||||
|
$zeit->getzeitsperren($uid);
|
||||||
|
$content_table='';
|
||||||
|
//liste aller zeitsperren ausgeben
|
||||||
|
if(count($zeit->result)>0)
|
||||||
|
{
|
||||||
|
$content_table.= '<table><tr class="liste"><th>Bezeichnung</th><th>Grund</th><th>Von</th><th>Bis</th><th>Vertretung</th><th>Erreichbarkeit</th></tr>';
|
||||||
|
$i=0;
|
||||||
|
foreach ($zeit->result as $row)
|
||||||
|
{
|
||||||
|
$i++;
|
||||||
|
//name der vertretung holen
|
||||||
|
$qry = "SELECT vorname || ' ' || nachname as kurzbz FROM public.tbl_mitarbeiter, public.tbl_benutzer, public.tbl_person WHERE tbl_benutzer.uid=tbl_mitarbeiter.mitarbeiter_uid AND tbl_benutzer.person_id=tbl_person.person_id AND mitarbeiter_uid='$row->vertretung_uid'";
|
||||||
|
$result_vertretung = pg_query($conn, $qry);
|
||||||
|
$row_vertretung = pg_fetch_object($result_vertretung);
|
||||||
|
$content_table.= "<tr class='liste".($i%2)."'><td>$row->bezeichnung</td><td>$row->zeitsperretyp_kurzbz</td><td nowrap>".$datum_obj->convertISODate($row->vondatum)." ".($row->vonstunde!=''?'('.$row->vonstunde.')':'')."</td><td nowrap>".$datum_obj->convertISODate($row->bisdatum)." ".($row->bisstunde!=''?'('.$row->bisstunde.')':'')."</td><td>".(isset($row_vertretung->kurzbz)?$row_vertretung->kurzbz:'')."</td><td>$row->erreichbarkeit</td><td><a href='$PHP_SELF?type=edit&id=$row->zeitsperre_id' class='Item'>edit</a></td><td><a href='$PHP_SELF?type=delete_sperre&id=$row->zeitsperre_id' onclick='return conf_del()' class='Item'>delete</a></td></tr>";
|
||||||
|
}
|
||||||
|
$content_table.= '</table>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
$content_table.= "Derzeit sind keine Zeitsperren eingetragen!";
|
||||||
|
|
||||||
|
$zeitsperre = new zeitsperre($conn);
|
||||||
|
$action = "$PHP_SELF?type=new_sperre";
|
||||||
|
//wenn ein datensatz editiert werden soll, dann diesen laden
|
||||||
|
if(isset($_GET['type']) && $_GET['type']=='edit')
|
||||||
|
{
|
||||||
|
if(isset($_GET['id']) && is_numeric($_GET['id']))
|
||||||
|
{
|
||||||
|
$zeitsperre->load($_GET['id']);
|
||||||
|
//pruefen ob dieser datensatz auch dem angemeldeten user gehoert
|
||||||
|
if($zeitsperre->mitarbeiter_uid!=$uid)
|
||||||
|
{
|
||||||
|
die("<span class='error'>Sie haben keine Berechtigung diese Zeitsperre zu aendern</span>");
|
||||||
|
}
|
||||||
|
$action = "$PHP_SELF?type=edit_sperre&id=".$_GET['id'];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
die("<span class='error'>Fehlerhafte Parameteruebergabe</span>");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//formular zum editieren und neu anlegen der zeitsperren
|
||||||
|
$content_form='';
|
||||||
|
$content_form.= '<form method="POST" action="'.$action.'" onsubmit="return checkdatum()">';
|
||||||
|
$content_form.= "<table>\n";
|
||||||
|
$content_form.= '<tr><td>Grund</td><td><SELECT name="zeitsperretyp_kurzbz">';
|
||||||
|
//dropdown fuer zeitsperretyp
|
||||||
|
$qry = "SELECT * FROM campus.tbl_zeitsperretyp ORDER BY zeitsperretyp_kurzbz";
|
||||||
|
if($result = pg_query($conn, $qry))
|
||||||
|
{
|
||||||
|
while($row=pg_fetch_object($result))
|
||||||
|
{
|
||||||
|
if($zeitsperre->zeitsperretyp_kurzbz == $row->zeitsperretyp_kurzbz)
|
||||||
|
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz' selected>$row->zeitsperretyp_kurzbz - $row->beschreibung</OPTION>";
|
||||||
|
else
|
||||||
|
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz'>$row->zeitsperretyp_kurzbz - $row->beschreibung</OPTION>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$content_form.= '</SELECT>';
|
||||||
|
$content_form.= '<tr><td>Bezeichnung</td><td><input type="text" name="bezeichnung" maxlength="32" value="'.$zeitsperre->bezeichnung.'"></td></tr>';
|
||||||
|
$content_form.= '<tr><td>von</td><td><input type="text" size="10" maxlength="10" name="vondatum" id="vondatum" value="'.($zeitsperre->vondatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->vondatum)):date('d.m.Y')).'"> ';
|
||||||
|
//dropdown fuer vonstunde
|
||||||
|
$content_form.= "Stunde (inklusive)";
|
||||||
|
|
||||||
|
$content_form.= "<SELECT name='vonstunde'>\n";
|
||||||
|
if($zeitsperre->vonstunde=='')
|
||||||
|
$content_form.= "<OPTION value='' selectd>*</OPTION>\n";
|
||||||
|
else
|
||||||
|
$content_form.= "<OPTION value=''>*</OPTION>\n";
|
||||||
|
|
||||||
|
for($i=0;$i<$num_rows_stunde;$i++)
|
||||||
|
{
|
||||||
|
$row = pg_fetch_object($result_stunde, $i);
|
||||||
|
|
||||||
|
if($zeitsperre->vonstunde==$row->stunde)
|
||||||
|
$content_form.= "<OPTION value='$row->stunde' selected>$row->stunde</OPTION>\n";
|
||||||
|
else
|
||||||
|
$content_form.= "<OPTION value='$row->stunde'>$row->stunde</OPTION>\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
$content_form.= "</SELECT></td></tr>";
|
||||||
|
|
||||||
|
$content_form.= '<tr><td>bis</td><td><input type="text" size="10" maxlength="10" name="bisdatum" id="bisdatum" value="'.($zeitsperre->bisdatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->bisdatum)):date('d.m.Y')).'"> ';
|
||||||
|
//dropdown fuer bisstunde
|
||||||
|
$content_form.= "Stunde (inklusive)";
|
||||||
|
$content_form.= "<SELECT name='bisstunde'>\n";
|
||||||
|
|
||||||
|
if($zeitsperre->bisstunde=='')
|
||||||
|
$content_form.= "<OPTION value='' selectd>*</OPTION>\n";
|
||||||
|
else
|
||||||
|
$content_form.= "<OPTION value=''>*</OPTION>\n";
|
||||||
|
|
||||||
|
for($i=0;$i<$num_rows_stunde;$i++)
|
||||||
|
{
|
||||||
|
$row = pg_fetch_object($result_stunde, $i);
|
||||||
|
if($zeitsperre->bisstunde==$row->stunde)
|
||||||
|
$content_form.= "<OPTION value='$row->stunde' selected>$row->stunde</OPTION>\n";
|
||||||
|
else
|
||||||
|
$content_form.= "<OPTION value='$row->stunde'>$row->stunde</OPTION>\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
$content_form.= "</SELECT></td></tr>";
|
||||||
|
|
||||||
|
$content_form.= "<tr><td>Erreichbarkeit</td><td><SELECT name='erreichbarkeit'>";
|
||||||
|
//dropdown fuer vertretung
|
||||||
|
$qry = "SELECT * FROM campus.tbl_erreichbarkeit";
|
||||||
|
|
||||||
|
if($result = pg_query($conn, $qry))
|
||||||
|
{
|
||||||
|
while($row = pg_fetch_object($result))
|
||||||
|
{
|
||||||
|
if($zeitsperre->erreichbarkeit == $row->erreichbarkeit_kurzbz)
|
||||||
|
$content_form.= "<OPTION value='$row->erreichbarkeit_kurzbz' selected>$row->beschreibung</OPTION>\n";
|
||||||
|
else
|
||||||
|
$content_form.= "<OPTION value='$row->erreichbarkeit_kurzbz'>$row->beschreibung</OPTION>\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$content_form.= '</SELECT></td></tr>';
|
||||||
|
|
||||||
|
$content_form.= "<tr><td>Vertretung</td><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";
|
||||||
|
|
||||||
|
$content_form.= "<OPTION value=''>-- Auswahl --</OPTION>\n";
|
||||||
|
|
||||||
|
if($result = pg_query($conn, $qry))
|
||||||
|
{
|
||||||
|
while($row = pg_fetch_object($result))
|
||||||
|
{
|
||||||
|
if($zeitsperre->vertretung_uid == $row->uid)
|
||||||
|
$content_form.= "<OPTION value='$row->uid' selected>$row->nachname $row->vorname ($row->uid)</OPTION>\n";
|
||||||
|
else
|
||||||
|
$content_form.= "<OPTION value='$row->uid'>$row->nachname $row->vorname ($row->uid)</OPTION>\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$content_form.= '</SELECT></td></tr>';
|
||||||
|
$content_form.= '<tr><td> </td><td>';
|
||||||
|
|
||||||
|
if(isset($_GET['type']) && $_GET['type']=='edit')
|
||||||
|
$content_form.= "<input type='submit' name='submit_zeitsperre' value='Speichern'>";
|
||||||
|
else
|
||||||
|
$content_form.= "<input type='submit' name='submit_zeitsperre' value='Hinzufügen'>";
|
||||||
|
$content_form.= '</td></tr>';
|
||||||
|
$content_form.= '</table></form>';
|
||||||
|
|
||||||
|
// ******* RESTURLAUB ******** //
|
||||||
|
$content_resturlaub = '';
|
||||||
|
$resturlaubstage = '0';
|
||||||
|
$mehrarbeitsstunden = '0';
|
||||||
|
$anspruch = '25';
|
||||||
|
|
||||||
|
if(isset($_GET['type']) && $_GET['type']=='save_resturlaub')
|
||||||
|
{
|
||||||
|
$_POST['mehrarbeitsstunden'] = str_replace(',','.',$_POST['mehrarbeitsstunden']);
|
||||||
|
|
||||||
|
$resturlaub = new resturlaub($conn);
|
||||||
|
if($resturlaub->load($uid))
|
||||||
|
{
|
||||||
|
$resturlaub->new = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$resturlaub->new = true;
|
||||||
|
$resturlaub->insertamum = date('Y-m-d H:i:s');
|
||||||
|
$resturlaub->insertvon = $uid;
|
||||||
|
}
|
||||||
|
$resturlaub->mitarbeiter_uid = $uid;
|
||||||
|
$resturlaub->updateamum = date('Y-m-d H:i:s');
|
||||||
|
$resturlaub->updatevon = $uid;
|
||||||
|
if(isset($_POST['resturlaubstage']))
|
||||||
|
$resturlaub->resturlaubstage = $_POST['resturlaubstage'];
|
||||||
|
if(isset($_POST['anspruch']))
|
||||||
|
$resturlaub->urlaubstageprojahr = $_POST['anspruch'];
|
||||||
|
$resturlaub->mehrarbeitsstunden = $_POST['mehrarbeitsstunden'];
|
||||||
|
|
||||||
|
if($resturlaub->save())
|
||||||
|
{
|
||||||
|
$content_resturlaub .= '<b>Daten wurden gespeichert!</b>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$content_resturlaub .= "<b>Fehler beim Speichern der Daten: $resturlaub->errormsg</b>";
|
||||||
|
}
|
||||||
|
|
||||||
|
$resturlaubstage = htmlspecialchars($resturlaub->resturlaubstage,ENT_QUOTES);
|
||||||
|
$mehrarbeitsstunden = htmlspecialchars($resturlaub->mehrarbeitsstunden,ENT_QUOTES);
|
||||||
|
$anspruch = htmlspecialchars($resturlaub->urlaubstageprojahr,ENT_QUOTES);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$resturlaub = new resturlaub($conn);
|
||||||
|
|
||||||
|
if($resturlaub->load($uid))
|
||||||
|
{
|
||||||
|
$resturlaubstage = $resturlaub->resturlaubstage;
|
||||||
|
$mehrarbeitsstunden = $resturlaub->mehrarbeitsstunden;
|
||||||
|
$anspruch = $resturlaub->urlaubstageprojahr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if($anspruch=='')
|
||||||
|
$anspruch=25;
|
||||||
|
|
||||||
|
//Eingabefelder am 15.12.2007 deaktivieren
|
||||||
|
if((date('d')>=15 && date('m')>=12 && date('Y')>=2007) || date('Y')>2007)
|
||||||
|
$disabled='disabled="true"';
|
||||||
|
else
|
||||||
|
$disabled='';
|
||||||
|
|
||||||
|
$content_resturlaub.='<form method="POST" action="'.$PHP_SELF.'?type=save_resturlaub"><table>';
|
||||||
|
$content_resturlaub.='<tr><td>Resturlaubstage (31.08.)</td><td><input type="text" size="6" '.$disabled.' id="resturlaubstage" name="resturlaubstage" value="'.$resturlaubstage.'" oninput="berechnen()"/></td></tr>';
|
||||||
|
$content_resturlaub.='<tr><td>Anspruch (01.09.)</td><td><input type="text" size="6" '.$disabled.' id="anspruch" name="anspruch" value="'.$anspruch.'" oninput="berechnen()"/></td></tr>';
|
||||||
|
$content_resturlaub.='<tr><td>Gesamturlaub</td><td><input type="text" disabled="true" size="6" name="summe" id="summe" value="'.($anspruch+$resturlaubstage).'" /></td></tr>';
|
||||||
|
$content_resturlaub.='<tr><td> </td></tr>';
|
||||||
|
$content_resturlaub.='<tr><td>Aktuelle Mehrarbeitsstunden:</td><td><input type="text" size="6" name="mehrarbeitsstunden" value="'.$mehrarbeitsstunden.'" /></td></tr>';
|
||||||
|
$content_resturlaub.='<tr><td></td><td><input type="submit" name="save_resturlaub" value="Speichern" /></td></tr></table>';
|
||||||
|
|
||||||
|
echo '<table width="100%">';
|
||||||
|
echo '<tr>';
|
||||||
|
echo "<td class='tdvertical'>";
|
||||||
|
echo $content_form;
|
||||||
|
echo '</td>';
|
||||||
|
echo "<td class='tdvertical'>$content_resturlaub</td>";
|
||||||
|
echo '</tr><tr><td colspan=2>';
|
||||||
|
echo $content_table;
|
||||||
|
echo '</td>';
|
||||||
|
echo '</tr>';
|
||||||
|
echo '</table>';
|
||||||
|
|
||||||
|
?>
|
||||||
|
<body>
|
||||||
|
</html>
|
||||||
@@ -197,330 +197,60 @@ function checkdatum()
|
|||||||
<INPUT type="submit" name="Abschicken" value="Speichern">
|
<INPUT type="submit" name="Abschicken" value="Speichern">
|
||||||
</FORM>
|
</FORM>
|
||||||
<hr>
|
<hr>
|
||||||
<!-- ************* ZEITSPERREN *****************-->
|
Das Formular zum Eintragen der Zeitsperren finden Sie <a href='zeitsperre_resturlaub.php' class='Item'>hier</a>
|
||||||
<H3>Zeitsperren</h3>
|
<H3>Erklärung:</H3>
|
||||||
|
<P>Bitte kontrollieren/ändern Sie Ihre Zeitwünsche und klicken Sie anschließend
|
||||||
|
auf "Speichern"!<BR><BR>
|
||||||
|
</P>
|
||||||
|
<TABLE align="center" name="Zeitwerte">
|
||||||
|
<TR>
|
||||||
|
<TH><B>Wert</B></TH>
|
||||||
|
<TH>
|
||||||
|
<DIV align="center"><B>Bedeutung</B></DIV>
|
||||||
|
</TH>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD>
|
||||||
|
<DIV align="right">2</DIV>
|
||||||
|
</TD>
|
||||||
|
<TD>Hier möchte ich unterrichten</TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD>
|
||||||
|
<DIV align="right">1</DIV>
|
||||||
|
</TD>
|
||||||
|
<TD>Hier kann ich unterrichten</TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD>
|
||||||
|
<DIV align="right">0</DIV>
|
||||||
|
</TD>
|
||||||
|
<TD>keine Bedeutung</TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD>
|
||||||
|
<DIV align="right">-1</DIV>
|
||||||
|
</TD>
|
||||||
|
<TD>Hier nur in extremen Notfällen</TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD>
|
||||||
|
<DIV align="right">-2</DIV>
|
||||||
|
</TD>
|
||||||
|
<TD>Hier auf gar keinen Fall !!!</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<P> </P>
|
||||||
|
<H3>Folgende Punkte sind zu beachten:</H3>
|
||||||
|
<OL>
|
||||||
|
<LI> Verwenden Sie den Wert -2 nur, wenn Sie zu dieser Stunde wirklich nicht
|
||||||
|
können, um eine bessere Optimierung zu ermöglichen.</LI>
|
||||||
|
<LI>Es sollten für jede Stunde die tatsächlich unterrichtet wird,
|
||||||
|
mindestens das 3-fache an positiven Zeitwünschen angegeben werden.<BR>
|
||||||
|
Beispiel: Sie unterrichten 4 Stunden/Woche, dann sollten Sie mindestens
|
||||||
|
12 Stunden im Raster mit positiven Werten ausfüllen.</LI>
|
||||||
|
</OL>
|
||||||
|
<P>Bei Problemen wenden Sie sich bitte an die <A class="Item" href="mailto:[email protected]">LV-Koordinationsstelle</A>.</P>
|
||||||
|
|
||||||
<?php
|
|
||||||
//Zeitsperre Speichern
|
|
||||||
if(isset($_GET['type']) && ($_GET['type']=='edit_sperre' || $_GET['type']=='new_sperre'))
|
|
||||||
{
|
|
||||||
$error=false;
|
|
||||||
$error_msg='';
|
|
||||||
//von-datum pruefen
|
|
||||||
if(!ereg("([0-9]{2}).([0-9]{2}).([0-9]{4})",$_POST['vondatum']))
|
|
||||||
{
|
|
||||||
$error=true;
|
|
||||||
$error_msg .= 'Von-Datum ist ungültig ';
|
|
||||||
}
|
|
||||||
//bis-datum pruefen
|
|
||||||
if(!ereg("([0-9]{2}).([0-9]{2}).([0-9]{4})",$_POST['bisdatum']))
|
|
||||||
{
|
|
||||||
$error=true;
|
|
||||||
$error_msg .= 'Bis-Datum ist ungültig ';
|
|
||||||
}
|
|
||||||
|
|
||||||
$zeitsperre = new zeitsperre($conn);
|
|
||||||
|
|
||||||
if($_GET['type']=='edit_sperre')
|
|
||||||
{
|
|
||||||
if(!is_numeric($_GET['id']))
|
|
||||||
{
|
|
||||||
$error=true;
|
|
||||||
$error_msg.='Invalid id ';
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//wenn die zeitsperre bereits existiert, dann wird sie geladen
|
|
||||||
$zeitsperre->load($_GET['id']);
|
|
||||||
$zeitsperre->new=false;
|
|
||||||
$zeitsperre->zeitsperre_id = $_GET['id'];
|
|
||||||
|
|
||||||
//pruefen ob die geladene id auch von der person ist die angemeldet ist
|
|
||||||
if($zeitsperre->mitarbeiter_uid!=$uid)
|
|
||||||
die('Sie haben keine Berechtigung fuer diese Zeitsperre');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$zeitsperre->new=true;
|
|
||||||
$zeitsperre->insertamum = date('Y-m-d H:i:s');
|
|
||||||
$zeitsperre->insertvon = $uid;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!$error)
|
|
||||||
{
|
|
||||||
$zeitsperre->zeitsperretyp_kurzbz = $_POST['zeitsperretyp_kurzbz'];
|
|
||||||
$zeitsperre->mitarbeiter_uid = $uid;
|
|
||||||
$zeitsperre->bezeichnung = $_POST['bezeichnung'];
|
|
||||||
$zeitsperre->vondatum = $_POST['vondatum'];
|
|
||||||
$zeitsperre->vonstunde = $_POST['vonstunde'];
|
|
||||||
$zeitsperre->bisdatum = $_POST['bisdatum'];
|
|
||||||
$zeitsperre->bisstunde = $_POST['bisstunde'];
|
|
||||||
$zeitsperre->erreichbarkeit = $_POST['erreichbarkeit'];
|
|
||||||
$zeitsperre->vertretung_uid = $_POST['vertretung_uid'];
|
|
||||||
$zeitsperre->updateamum = date('Y-m-d H:i:s');
|
|
||||||
$zeitsperre->updatevon = $uid;
|
|
||||||
|
|
||||||
if($zeitsperre->save())
|
|
||||||
{
|
|
||||||
echo "Daten wurden erfolgreich gespeichert";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "<span class='error'>Fehler beim Speichern der Daten</span>";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "<span class='error'>$error_msg</span>";
|
|
||||||
}
|
|
||||||
|
|
||||||
//loeschen einer zeitsperre
|
|
||||||
if(isset($_GET['type']) && $_GET['type']=='delete_sperre')
|
|
||||||
{
|
|
||||||
$zeit = new zeitsperre($conn);
|
|
||||||
$zeit->load($_GET['id']);
|
|
||||||
//pruefen ob die person die den datensatz loeschen will auch der
|
|
||||||
//besitzer dieses datensatzes ist
|
|
||||||
if($zeit->mitarbeiter_uid==$uid)
|
|
||||||
{
|
|
||||||
if($zeit->delete($_GET['id']))
|
|
||||||
{
|
|
||||||
echo "Eintrag wurde geloescht";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "<span class='error'>Fehler beim loeschen des Eintrages</span>";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
echo "<span class='error'>Sie haben keine Berechtigung diesen Datensatz zu loeschen</span>";
|
|
||||||
}
|
|
||||||
|
|
||||||
//zeitsperren des users laden
|
|
||||||
$zeit = new zeitsperre($conn);
|
|
||||||
$zeit->getzeitsperren($uid);
|
|
||||||
$content_table='';
|
|
||||||
//liste aller zeitsperren ausgeben
|
|
||||||
if(count($zeit->result)>0)
|
|
||||||
{
|
|
||||||
$content_table.= '<table><tr class="liste"><th>Bezeichnung</th><th>Grund</th><th>Von</th><th>Bis</th><th>Vertretung</th><th>Erreichbarkeit</th></tr>';
|
|
||||||
$i=0;
|
|
||||||
foreach ($zeit->result as $row)
|
|
||||||
{
|
|
||||||
$i++;
|
|
||||||
//name der vertretung holen
|
|
||||||
$qry = "SELECT vorname || ' ' || nachname as kurzbz FROM public.tbl_mitarbeiter, public.tbl_benutzer, public.tbl_person WHERE tbl_benutzer.uid=tbl_mitarbeiter.mitarbeiter_uid AND tbl_benutzer.person_id=tbl_person.person_id AND mitarbeiter_uid='$row->vertretung_uid'";
|
|
||||||
$result_vertretung = pg_query($conn, $qry);
|
|
||||||
$row_vertretung = pg_fetch_object($result_vertretung);
|
|
||||||
$content_table.= "<tr class='liste".($i%2)."'><td>$row->bezeichnung</td><td>$row->zeitsperretyp_kurzbz</td><td nowrap>".$datum_obj->convertISODate($row->vondatum)." ".($row->vonstunde!=''?'('.$row->vonstunde.')':'')."</td><td nowrap>".$datum_obj->convertISODate($row->bisdatum)." ".($row->bisstunde!=''?'('.$row->bisstunde.')':'')."</td><td>".(isset($row_vertretung->kurzbz)?$row_vertretung->kurzbz:'')."</td><td>$row->erreichbarkeit</td><td><a href='$PHP_SELF?type=edit&id=$row->zeitsperre_id' class='Item'>edit</a></td><td><a href='$PHP_SELF?type=delete_sperre&id=$row->zeitsperre_id' onclick='return conf_del()' class='Item'>delete</a></td></tr>";
|
|
||||||
}
|
|
||||||
$content_table.= '</table>';
|
|
||||||
}
|
|
||||||
else
|
|
||||||
$content_table.= "Derzeit sind keine Zeitsperren eingetragen!";
|
|
||||||
|
|
||||||
$zeitsperre = new zeitsperre($conn);
|
|
||||||
$action = "$PHP_SELF?type=new_sperre";
|
|
||||||
//wenn ein datensatz editiert werden soll, dann diesen laden
|
|
||||||
if(isset($_GET['type']) && $_GET['type']=='edit')
|
|
||||||
{
|
|
||||||
if(isset($_GET['id']) && is_numeric($_GET['id']))
|
|
||||||
{
|
|
||||||
$zeitsperre->load($_GET['id']);
|
|
||||||
//pruefen ob dieser datensatz auch dem angemeldeten user gehoert
|
|
||||||
if($zeitsperre->mitarbeiter_uid!=$uid)
|
|
||||||
{
|
|
||||||
die("<span class='error'>Sie haben keine Berechtigung diese Zeitsperre zu aendern</span>");
|
|
||||||
}
|
|
||||||
$action = "$PHP_SELF?type=edit_sperre&id=".$_GET['id'];
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
die("<span class='error'>Fehlerhafte Parameteruebergabe</span>");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//formular zum editieren und neu anlegen der zeitsperren
|
|
||||||
$content_form='';
|
|
||||||
$content_form.= '<form method="POST" action="'.$action.'" onsubmit="return checkdatum()">';
|
|
||||||
$content_form.= "<table>\n";
|
|
||||||
$content_form.= '<tr><td>Grund</td><td><SELECT name="zeitsperretyp_kurzbz">';
|
|
||||||
//dropdown fuer zeitsperretyp
|
|
||||||
$qry = "SELECT * FROM campus.tbl_zeitsperretyp ORDER BY zeitsperretyp_kurzbz";
|
|
||||||
if($result = pg_query($conn, $qry))
|
|
||||||
{
|
|
||||||
while($row=pg_fetch_object($result))
|
|
||||||
{
|
|
||||||
if($zeitsperre->zeitsperretyp_kurzbz == $row->zeitsperretyp_kurzbz)
|
|
||||||
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz' selected>$row->zeitsperretyp_kurzbz - $row->beschreibung</OPTION>";
|
|
||||||
else
|
|
||||||
$content_form.= "<OPTION value='$row->zeitsperretyp_kurzbz'>$row->zeitsperretyp_kurzbz - $row->beschreibung</OPTION>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$content_form.= '</SELECT>';
|
|
||||||
$content_form.= '<tr><td>Bezeichnung</td><td><input type="text" name="bezeichnung" maxlength="32" value="'.$zeitsperre->bezeichnung.'"></td></tr>';
|
|
||||||
$content_form.= '<tr><td>von</td><td><input type="text" size="10" maxlength="10" name="vondatum" id="vondatum" value="'.($zeitsperre->vondatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->vondatum)):date('d.m.Y')).'"> ';
|
|
||||||
//dropdown fuer vonstunde
|
|
||||||
$content_form.= "Stunde (inklusive)";
|
|
||||||
|
|
||||||
$content_form.= "<SELECT name='vonstunde'>\n";
|
|
||||||
if($zeitsperre->vonstunde=='')
|
|
||||||
$content_form.= "<OPTION value='' selectd>*</OPTION>\n";
|
|
||||||
else
|
|
||||||
$content_form.= "<OPTION value=''>*</OPTION>\n";
|
|
||||||
|
|
||||||
for($i=0;$i<$num_rows_stunde;$i++)
|
|
||||||
{
|
|
||||||
$row = pg_fetch_object($result_stunde, $i);
|
|
||||||
|
|
||||||
if($zeitsperre->vonstunde==$row->stunde)
|
|
||||||
$content_form.= "<OPTION value='$row->stunde' selected>$row->stunde</OPTION>\n";
|
|
||||||
else
|
|
||||||
$content_form.= "<OPTION value='$row->stunde'>$row->stunde</OPTION>\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
$content_form.= "</SELECT></td></tr>";
|
|
||||||
|
|
||||||
$content_form.= '<tr><td>bis</td><td><input type="text" size="10" maxlength="10" name="bisdatum" id="bisdatum" value="'.($zeitsperre->bisdatum!=''?date('d.m.Y',$datum_obj->mktime_fromdate($zeitsperre->bisdatum)):date('d.m.Y')).'"> ';
|
|
||||||
//dropdown fuer bisstunde
|
|
||||||
$content_form.= "Stunde (inklusive)";
|
|
||||||
$content_form.= "<SELECT name='bisstunde'>\n";
|
|
||||||
|
|
||||||
if($zeitsperre->bisstunde=='')
|
|
||||||
$content_form.= "<OPTION value='' selectd>*</OPTION>\n";
|
|
||||||
else
|
|
||||||
$content_form.= "<OPTION value=''>*</OPTION>\n";
|
|
||||||
|
|
||||||
for($i=0;$i<$num_rows_stunde;$i++)
|
|
||||||
{
|
|
||||||
$row = pg_fetch_object($result_stunde, $i);
|
|
||||||
if($zeitsperre->bisstunde==$row->stunde)
|
|
||||||
$content_form.= "<OPTION value='$row->stunde' selected>$row->stunde</OPTION>\n";
|
|
||||||
else
|
|
||||||
$content_form.= "<OPTION value='$row->stunde'>$row->stunde</OPTION>\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
$content_form.= "</SELECT></td></tr>";
|
|
||||||
|
|
||||||
$content_form.= "<tr><td>Erreichbarkeit</td><td><SELECT name='erreichbarkeit'>";
|
|
||||||
//dropdown fuer vertretung
|
|
||||||
$qry = "SELECT * FROM campus.tbl_erreichbarkeit";
|
|
||||||
|
|
||||||
if($result = pg_query($conn, $qry))
|
|
||||||
{
|
|
||||||
while($row = pg_fetch_object($result))
|
|
||||||
{
|
|
||||||
if($zeitsperre->erreichbarkeit == $row->erreichbarkeit_kurzbz)
|
|
||||||
$content_form.= "<OPTION value='$row->erreichbarkeit_kurzbz' selected>$row->beschreibung</OPTION>\n";
|
|
||||||
else
|
|
||||||
$content_form.= "<OPTION value='$row->erreichbarkeit_kurzbz'>$row->beschreibung</OPTION>\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$content_form.= '</SELECT></td></tr>';
|
|
||||||
|
|
||||||
$content_form.= "<tr><td>Vertretung</td><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";
|
|
||||||
|
|
||||||
$content_form.= "<OPTION value=''>-- Auswahl --</OPTION>\n";
|
|
||||||
|
|
||||||
if($result = pg_query($conn, $qry))
|
|
||||||
{
|
|
||||||
while($row = pg_fetch_object($result))
|
|
||||||
{
|
|
||||||
if($zeitsperre->vertretung_uid == $row->uid)
|
|
||||||
$content_form.= "<OPTION value='$row->uid' selected>$row->nachname $row->vorname ($row->uid)</OPTION>\n";
|
|
||||||
else
|
|
||||||
$content_form.= "<OPTION value='$row->uid'>$row->nachname $row->vorname ($row->uid)</OPTION>\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$content_form.= '</SELECT></td></tr>';
|
|
||||||
$content_form.= '<tr><td> </td><td>';
|
|
||||||
|
|
||||||
if(isset($_GET['type']) && $_GET['type']=='edit')
|
|
||||||
$content_form.= "<input type='submit' name='submit_zeitsperre' value='Speichern'>";
|
|
||||||
else
|
|
||||||
$content_form.= "<input type='submit' name='submit_zeitsperre' value='Hinzufügen'>";
|
|
||||||
$content_form.= '</td></tr>';
|
|
||||||
$content_form.= '</table></form>';
|
|
||||||
|
|
||||||
// ******* RESTURLAUB ******** //
|
|
||||||
$content_resturlaub = '';
|
|
||||||
$resturlaubstage = '0';
|
|
||||||
$mehrarbeitsstunden = '0';
|
|
||||||
$anspruch = '25';
|
|
||||||
|
|
||||||
if(isset($_GET['type']) && $_GET['type']=='save_resturlaub')
|
|
||||||
{
|
|
||||||
$_POST['mehrarbeitsstunden'] = str_replace(',','.',$_POST['mehrarbeitsstunden']);
|
|
||||||
|
|
||||||
$resturlaub = new resturlaub($conn);
|
|
||||||
if($resturlaub->load($uid))
|
|
||||||
{
|
|
||||||
$resturlaub->new = false;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$resturlaub->new = true;
|
|
||||||
$resturlaub->insertamum = date('Y-m-d H:i:s');
|
|
||||||
$resturlaub->insertvon = $uid;
|
|
||||||
}
|
|
||||||
$resturlaub->mitarbeiter_uid = $uid;
|
|
||||||
$resturlaub->updateamum = date('Y-m-d H:i:s');
|
|
||||||
$resturlaub->updatevon = $uid;
|
|
||||||
if(isset($_POST['resturlaubstage']))
|
|
||||||
$resturlaub->resturlaubstage = $_POST['resturlaubstage'];
|
|
||||||
if(isset($_POST['anspruch']))
|
|
||||||
$resturlaub->urlaubstageprojahr = $_POST['anspruch'];
|
|
||||||
$resturlaub->mehrarbeitsstunden = $_POST['mehrarbeitsstunden'];
|
|
||||||
|
|
||||||
if($resturlaub->save())
|
|
||||||
{
|
|
||||||
$content_resturlaub .= '<b>Daten wurden gespeichert!</b>';
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$content_resturlaub .= "<b>Fehler beim Speichern der Daten: $resturlaub->errormsg</b>";
|
|
||||||
}
|
|
||||||
|
|
||||||
$resturlaubstage = htmlspecialchars($resturlaub->resturlaubstage,ENT_QUOTES);
|
|
||||||
$mehrarbeitsstunden = htmlspecialchars($resturlaub->mehrarbeitsstunden,ENT_QUOTES);
|
|
||||||
$anspruch = htmlspecialchars($resturlaub->urlaubstageprojahr,ENT_QUOTES);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$resturlaub = new resturlaub($conn);
|
|
||||||
|
|
||||||
if($resturlaub->load($uid))
|
|
||||||
{
|
|
||||||
$resturlaubstage = $resturlaub->resturlaubstage;
|
|
||||||
$mehrarbeitsstunden = $resturlaub->mehrarbeitsstunden;
|
|
||||||
$anspruch = $resturlaub->urlaubstageprojahr;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if($anspruch=='')
|
|
||||||
$anspruch=25;
|
|
||||||
|
|
||||||
//Eingabefelder am 15.12.2007 deaktivieren
|
|
||||||
if(date('d')>=15 && date('m')>=12 && date('Y')>=2007)
|
|
||||||
$disabled='disabled="true"';
|
|
||||||
else
|
|
||||||
$disabled='';
|
|
||||||
|
|
||||||
$content_resturlaub.='<form method="POST" action="'.$PHP_SELF.'?type=save_resturlaub"><table>';
|
|
||||||
$content_resturlaub.='<tr><td>Resturlaubstage (31.08.)</td><td><input type="text" size="6" '.$disabled.' id="resturlaubstage" name="resturlaubstage" value="'.$resturlaubstage.'" oninput="berechnen()"/></td></tr>';
|
|
||||||
$content_resturlaub.='<tr><td>Anspruch (01.09.)</td><td><input type="text" size="6" '.$disabled.' id="anspruch" name="anspruch" value="'.$anspruch.'" oninput="berechnen()"/></td></tr>';
|
|
||||||
$content_resturlaub.='<tr><td>Gesamturlaub</td><td><input type="text" disabled="true" size="6" name="summe" id="summe" value="'.($anspruch+$resturlaubstage).'" /></td></tr>';
|
|
||||||
$content_resturlaub.='<tr><td> </td></tr>';
|
|
||||||
$content_resturlaub.='<tr><td>Aktuelle Mehrarbeitsstunden:</td><td><input type="text" size="6" name="mehrarbeitsstunden" value="'.$mehrarbeitsstunden.'" /></td></tr>';
|
|
||||||
$content_resturlaub.='<tr><td></td><td><input type="submit" name="save_resturlaub" value="Speichern" /></td></tr></table>';
|
|
||||||
|
|
||||||
echo '<table width="100%">';
|
|
||||||
echo '<tr>';
|
|
||||||
echo "<td class='tdvertical'>";
|
|
||||||
echo $content_form;
|
|
||||||
echo '</td>';
|
|
||||||
echo "<td class='tdvertical'>$content_resturlaub</td>";
|
|
||||||
echo '</tr><tr><td colspan=2>';
|
|
||||||
echo $content_table;
|
|
||||||
echo '</td>';
|
|
||||||
echo '</tr>';
|
|
||||||
echo '</table>';
|
|
||||||
?>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1517,9 +1517,13 @@ function LehrveranstaltungNotenMove()
|
|||||||
if (!val.dbdml_return)
|
if (!val.dbdml_return)
|
||||||
{
|
{
|
||||||
if(val.dbdml_errormsg=='')
|
if(val.dbdml_errormsg=='')
|
||||||
alert(response)
|
alert(response);
|
||||||
else
|
else
|
||||||
alert(val.dbdml_errormsg)
|
alert(val.dbdml_errormsg);
|
||||||
|
|
||||||
|
LehrveranstaltungNotenTreeDatasource.Refresh(false); //non blocking
|
||||||
|
SetStatusBarText('Daten wurden gespeichert');
|
||||||
|
LehrveranstaltungNotenDetailDisableFields(true);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1683,9 +1687,12 @@ function LehrveranstaltungNotenImport()
|
|||||||
if (!val.dbdml_return)
|
if (!val.dbdml_return)
|
||||||
{
|
{
|
||||||
if(val.dbdml_errormsg=='')
|
if(val.dbdml_errormsg=='')
|
||||||
alert(response)
|
alert(response);
|
||||||
else
|
else
|
||||||
alert(val.dbdml_errormsg)
|
alert(val.dbdml_errormsg);
|
||||||
|
|
||||||
|
LehrveranstaltungNotenTreeDatasource.Refresh(false); //non blocking
|
||||||
|
SetStatusBarText('Daten wurden gespeichert');
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1726,4 +1733,54 @@ function LehrveranstaltungFFZertifikatPrint()
|
|||||||
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&uid='+paramList+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
url = '<?php echo APP_ROOT; ?>content/pdfExport.php?xml=zertifikat.rdf.php&xsl=Zertifikat&uid='+paramList+'&ss='+ss+'&lvid='+lvid+'&'+gettimestamp();
|
||||||
window.location.href = url;
|
window.location.href = url;
|
||||||
//prompt('test:',url);
|
//prompt('test:',url);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ****
|
||||||
|
// * Loescht die markierte Note
|
||||||
|
// ****
|
||||||
|
function LehrveranstaltungNotenDelete()
|
||||||
|
{
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||||
|
tree = document.getElementById('lehrveranstaltung-noten-tree');
|
||||||
|
|
||||||
|
col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-student_uid"] : "lehrveranstaltung-noten-tree-student_uid";
|
||||||
|
uid = tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
|
||||||
|
col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-lehrveranstaltung_id"] : "lehrveranstaltung-noten-tree-lehrveranstaltung_id";
|
||||||
|
lvid = tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
|
||||||
|
col = tree.columns ? tree.columns["lehrveranstaltung-noten-tree-studiensemester_kurzbz"] : "lehrveranstaltung-noten-tree-studiensemester_kurzbz";
|
||||||
|
stsem = tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
|
||||||
|
if(confirm('Wollen Sie diese Note wirklich löschen'))
|
||||||
|
{
|
||||||
|
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
|
||||||
|
var req = new phpRequest(url,'','');
|
||||||
|
|
||||||
|
req.add('type', 'deletenote');
|
||||||
|
|
||||||
|
req.add('lehrveranstaltung_id', lvid);
|
||||||
|
req.add('student_uid', uid);
|
||||||
|
req.add('studiensemester_kurzbz', stsem);
|
||||||
|
|
||||||
|
var response = req.executePOST();
|
||||||
|
|
||||||
|
var val = new ParseReturnValue(response)
|
||||||
|
|
||||||
|
if (!val.dbdml_return)
|
||||||
|
{
|
||||||
|
if(val.dbdml_errormsg=='')
|
||||||
|
alert(response);
|
||||||
|
else
|
||||||
|
alert(val.dbdml_errormsg);
|
||||||
|
|
||||||
|
LehrveranstaltungNotenTreeDatasource.Refresh(false); //non blocking
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
LehrveranstaltungNotenTreeDatasource.Refresh(false); //non blocking
|
||||||
|
LehrveranstaltungNotenDetailDisableFields(true);
|
||||||
|
SetStatusBarText('Eintrag wurde geloescht');
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -2059,6 +2059,87 @@ if(!$error)
|
|||||||
else
|
else
|
||||||
$return = false;
|
$return = false;
|
||||||
}
|
}
|
||||||
|
elseif(isset($_POST['type']) && $_POST['type']=='deletenote')
|
||||||
|
{
|
||||||
|
//Loescht einen Noteneintrag
|
||||||
|
|
||||||
|
$noten = new zeugnisnote($conn);
|
||||||
|
|
||||||
|
if(isset($_POST['lehrveranstaltung_id']) && isset($_POST['student_uid']) && isset($_POST['studiensemester_kurzbz']))
|
||||||
|
{
|
||||||
|
//Berechtigung pruefen
|
||||||
|
$qry = "SELECT studiengang_kz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id='".addslashes($_POST['lehrveranstaltung_id'])."'";
|
||||||
|
if($result = pg_query($conn, $qry))
|
||||||
|
{
|
||||||
|
if($row = pg_fetch_object($result))
|
||||||
|
{
|
||||||
|
$stg_lva = $row->studiengang_kz;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$return = false;
|
||||||
|
$error = true;
|
||||||
|
$errormsg = 'Fehler beim Ermitteln der LVA';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$return = false;
|
||||||
|
$error = true;
|
||||||
|
$errormsg = 'Fehler beim Ermitteln der LVA';
|
||||||
|
}
|
||||||
|
|
||||||
|
$qry = "SELECT studiengang_kz FROM public.tbl_student WHERE student_uid='".addslashes($_POST['student_uid'])."'";
|
||||||
|
if($result = pg_query($conn, $qry))
|
||||||
|
{
|
||||||
|
if($row = pg_fetch_object($result))
|
||||||
|
{
|
||||||
|
$stg_std = $row->studiengang_kz;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$return = false;
|
||||||
|
$error = true;
|
||||||
|
$errormsg = 'Fehler beim Ermitteln des Studenten';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$return = false;
|
||||||
|
$error = true;
|
||||||
|
$errormsg = 'Fehler beim Ermitteln des Studenten';
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!$error)
|
||||||
|
{
|
||||||
|
if(!$rechte->isBerechtigt('admin', $stg_lva, 'suid') && !$rechte->isBerechtigt('admin', $stg_std, 'suid') &&
|
||||||
|
!$rechte->isBerechtigt('assistenz', $stg_lva, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_std, 'suid'))
|
||||||
|
{
|
||||||
|
$return = false;
|
||||||
|
$error = true;
|
||||||
|
$errormsg = 'Sie haben keine Berechtigung';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
if($noten->delete($_POST['lehrveranstaltung_id'], $_POST['student_uid'], $_POST['studiensemester_kurzbz']))
|
||||||
|
{
|
||||||
|
$return = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$return = false;
|
||||||
|
$errormsg = $noten->errormsg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$return = false;
|
||||||
|
$errormsg = 'Fehlerhafte Parameteruebergabe';
|
||||||
|
}
|
||||||
|
}
|
||||||
elseif(isset($_POST['type']) && $_POST['type']=='deletepruefung') // **** PRUEFUNGEN **** //
|
elseif(isset($_POST['type']) && $_POST['type']=='deletepruefung') // **** PRUEFUNGEN **** //
|
||||||
{
|
{
|
||||||
//Loescht einen Pruefungs Eintrag
|
//Loescht einen Pruefungs Eintrag
|
||||||
|
|||||||
@@ -3021,9 +3021,13 @@ function StudentNotenMove()
|
|||||||
if (!val.dbdml_return)
|
if (!val.dbdml_return)
|
||||||
{
|
{
|
||||||
if(val.dbdml_errormsg=='')
|
if(val.dbdml_errormsg=='')
|
||||||
alert(response)
|
alert(response);
|
||||||
else
|
else
|
||||||
alert(val.dbdml_errormsg)
|
alert(val.dbdml_errormsg);
|
||||||
|
|
||||||
|
StudentNotenTreeDatasource.Refresh(false); //non blocking
|
||||||
|
SetStatusBarText('Daten wurden gespeichert');
|
||||||
|
StudentNoteDetailDisableFields(true);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -3033,6 +3037,58 @@ function StudentNotenMove()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ****
|
||||||
|
// * Loescht die markierte Note
|
||||||
|
// ****
|
||||||
|
function StudentNotenDelete()
|
||||||
|
{
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||||
|
var tree = document.getElementById('student-noten-tree');
|
||||||
|
|
||||||
|
col = tree.columns ? tree.columns["student-noten-tree-student_uid"] : "student-noten-tree-student_uid";
|
||||||
|
uid = tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
|
||||||
|
col = tree.columns ? tree.columns["student-noten-tree-lehrveranstaltung_id"] : "student-noten-tree-lehrveranstaltung_id";
|
||||||
|
lvid = tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
|
||||||
|
col = tree.columns ? tree.columns["student-noten-tree-studiensemester_kurzbz"] : "student-noten-tree-studiensemester_kurzbz";
|
||||||
|
stsem = tree.view.getCellText(tree.currentIndex,col);
|
||||||
|
|
||||||
|
if(confirm('Wollen Sie diese Note wirklich löschen'))
|
||||||
|
{
|
||||||
|
var url = '<?php echo APP_ROOT ?>content/student/studentDBDML.php';
|
||||||
|
var req = new phpRequest(url,'','');
|
||||||
|
|
||||||
|
req.add('type', 'deletenote');
|
||||||
|
|
||||||
|
req.add('lehrveranstaltung_id', lvid);
|
||||||
|
req.add('student_uid', uid);
|
||||||
|
req.add('studiensemester_kurzbz', stsem);
|
||||||
|
|
||||||
|
var response = req.executePOST();
|
||||||
|
|
||||||
|
var val = new ParseReturnValue(response)
|
||||||
|
|
||||||
|
if (!val.dbdml_return)
|
||||||
|
{
|
||||||
|
if(val.dbdml_errormsg=='')
|
||||||
|
alert(response);
|
||||||
|
else
|
||||||
|
alert(val.dbdml_errormsg);
|
||||||
|
|
||||||
|
StudentNotenTreeDatasource.Refresh(false); //non blocking
|
||||||
|
StudentNoteDetailDisableFields(true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
StudentNotenTreeDatasource.Refresh(false); //non blocking
|
||||||
|
SetStatusBarText('Eintrag wurde geloescht');
|
||||||
|
StudentNoteDetailDisableFields(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// **************** PRUEFUNG ************** //
|
// **************** PRUEFUNG ************** //
|
||||||
|
|
||||||
// ****
|
// ****
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ if(!$error)
|
|||||||
$stundenplan->unr = $_POST['unr'];
|
$stundenplan->unr = $_POST['unr'];
|
||||||
$stundenplan->verband = $_POST['verband'];
|
$stundenplan->verband = $_POST['verband'];
|
||||||
$stundenplan->gruppe = $_POST['gruppe'];
|
$stundenplan->gruppe = $_POST['gruppe'];
|
||||||
$stundenplan->gruppe_kurzbz = $_POST['gruppe_kurzbz;'];
|
$stundenplan->gruppe_kurzbz = $_POST['gruppe_kurzbz'];
|
||||||
$stundenplan->ort_kurzbz = $_POST['ort_kurzbz'];
|
$stundenplan->ort_kurzbz = $_POST['ort_kurzbz'];
|
||||||
$stundenplan->datum = $_POST['datum'];
|
$stundenplan->datum = $_POST['datum'];
|
||||||
$stundenplan->stunde = $_POST['stunde'];
|
$stundenplan->stunde = $_POST['stunde'];
|
||||||
|
|||||||
@@ -303,7 +303,8 @@ class zeitsperre
|
|||||||
{
|
{
|
||||||
$beginn=$datum_obj->mktime_fromdate($zs->vondatum);
|
$beginn=$datum_obj->mktime_fromdate($zs->vondatum);
|
||||||
$ende=$datum_obj->mktime_fromdate($zs->bisdatum);
|
$ende=$datum_obj->mktime_fromdate($zs->bisdatum);
|
||||||
if ($datum>=$beginn && (int)($datum/60/60/24)<=(int)($ende/60/60/24))
|
|
||||||
|
if ($datum>=$beginn && ((int)($datum/60/60/24)<=(int)($ende/60/60/24) || date('Y-m-d', $datum)==date('Y-m-d', $ende)))
|
||||||
$typ.=$zs->zeitsperretyp_kurzbz;
|
$typ.=$zs->zeitsperretyp_kurzbz;
|
||||||
}
|
}
|
||||||
return $typ;
|
return $typ;
|
||||||
@@ -321,7 +322,7 @@ class zeitsperre
|
|||||||
{
|
{
|
||||||
$beginn=$datum_obj->mktime_fromdate($zs->vondatum);
|
$beginn=$datum_obj->mktime_fromdate($zs->vondatum);
|
||||||
$ende=$datum_obj->mktime_fromdate($zs->bisdatum);
|
$ende=$datum_obj->mktime_fromdate($zs->bisdatum);
|
||||||
if ($datum>=$beginn && (int)($datum/60/60/24)<=(int)($ende/60/60/24))
|
if ($datum>=$beginn && ((int)($datum/60/60/24)<=(int)($ende/60/60/24) || date('Y-m-d', $datum)==date('Y-m-d', $ende)))
|
||||||
$erbk.=$zs->erreichbarkeit;
|
$erbk.=$zs->erreichbarkeit;
|
||||||
}
|
}
|
||||||
return $erbk;
|
return $erbk;
|
||||||
|
|||||||
Reference in New Issue
Block a user