From 93aadca487f6ee516c04d283676ee39ca2ea89e5 Mon Sep 17 00:00:00 2001 From: Gerald Simane Date: Mon, 9 Feb 2009 07:58:20 +0000 Subject: [PATCH] --- cis/private/profile/zeitsperre_resturlaub.php | 1199 +++++++++-------- 1 file changed, 628 insertions(+), 571 deletions(-) diff --git a/cis/private/profile/zeitsperre_resturlaub.php b/cis/private/profile/zeitsperre_resturlaub.php index f64ff1892..3a8bb53ba 100644 --- a/cis/private/profile/zeitsperre_resturlaub.php +++ b/cis/private/profile/zeitsperre_resturlaub.php @@ -1,572 +1,629 @@ -, - * Andreas Oesterreicher and - * Rudolf Hangl . - */ -// ** -// * @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'); - require_once('../../../include/person.class.php'); - require_once('../../../include/benutzer.class.php'); - require_once('../../../include/mitarbeiter.class.php'); - require_once('../../../include/mail.class.php'); - require_once('../../../include/benutzerberechtigung.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."); - - //Wenn User Administrator ist und UID uebergeben wurde, dann die Zeitsperren - //des uebergebenen Users anzeigen - if(isset($_GET['uid'])) - { - $rechte = new benutzerberechtigung($conn); - $rechte->getBerechtigungen($uid); - if($rechte->isBerechtigt('admin')) - { - $uid = $_GET['uid']; - } - else - { - die('Fuer diese Aktion benoetigen Sie Administratorenrechte'); - } - } - $datum_obj = new datum(); - $ma= new mitarbeiter($conn); - - //Stundentabelleholen - if(! $result_stunde=pg_query($conn, "SELECT * FROM lehre.tbl_stunde ORDER BY stunde")) - die(pg_last_error($conn)); - $num_rows_stunde=pg_num_rows($result_stunde); - -?> - - -Zeitsperre - - - - - - - - - - -
  - - - - -
 Zeitsperren
-
- - - -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->freigabeamum!='') - { - $error = true; - $error_msg.='Dieser Urlaub kann nicht mehr editiert werden, da er schon freigegeben wurde'; - } - 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_kurzbz = $_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"; - if(URLAUB_TOOLS) - { - if($zeitsperre->new && $zeitsperre->zeitsperretyp_kurzbz=='Urlaub') - { - //Beim Anlegen von neuen Urlauben wird ein Mail an den Vorgesetzten versendet um diesen Freizugeben - $vorgesetzter = $ma->getVorgesetzte($uid); - if($vorgesetzter) - { - $to=''; - foreach($ma->vorgesetzte as $vg) - $to.=$vg.'@'.DOMAIN.','; - $to = substr($to, 0, strlen($to)-1); - //$to = 'oesi@technikum-wien.at'; - $benutzer = new benutzer($conn); - $benutzer->load($uid); - $message = "Dies ist eine automatische Mail! \n". - "$benutzer->nachname $benutzer->vorname hat einen neuen Urlaub eingetragen:\n". - "$zeitsperre->bezeichnung von $zeitsperre->vondatum bis $zeitsperre->bisdatum\n\n". - "Sie können diesen unter folgender Adresse freigeben:\n". - APP_ROOT."cis/private/profile/urlaubsfreigabe.php?uid=$uid&year=".$datum_obj->formatDatum($zeitsperre->vondatum, 'Y'); - $from='vilesci@'.DOMAIN; - $mail = new mail($to, $from, 'Freigabeansuchen', $message); - if($mail->send()) - { - echo "
Freigabemail wurde an $to versandt"; - } - else - { - echo "
Fehler beim Senden des Freigabemails an $to"; - } - } - else - { - echo "
Es konnte keine Freigabemail versendet werden da kein Vorgesetzter eingetragen ist"; - } - } - } - } - else - echo "Fehler beim Speichern der Daten"; - } - else - echo "$error_msg"; -} - -//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 "Fehler beim loeschen des Eintrages"; - } - else - echo "Sie haben keine Berechtigung diesen Datensatz zu loeschen"; -} - -//zeitsperren des users laden -$zeit = new zeitsperre($conn); -$zeit->getzeitsperren($uid); -$content_table='

'; - -$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; - } -} -//liste aller zeitsperren ausgeben -if(count($zeit->result)>0) -{ - $content_table.= ''; - $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.= " - - - - - - - "; - if($row->freigabeamum=='' || $row->zeitsperretyp_kurzbz!='Urlaub') - { - $content_table.=" - "; - } - $content_table.=""; - } - $content_table.= '
BezeichnungGrundVonBisVertretungErreichbarkeitFreigegeben
$row->bezeichnung$row->zeitsperretyp_kurzbz".$datum_obj->convertISODate($row->vondatum)." ".($row->vonstunde!=''?'('.$row->vonstunde.')':'')."".$datum_obj->convertISODate($row->bisdatum)." ".($row->bisstunde!=''?'('.$row->bisstunde.')':'')."".(isset($row_vertretung->kurzbz)?$row_vertretung->kurzbz:'')."".(isset($erreichbarkeit_arr[$row->erreichbarkeit])?$erreichbarkeit_arr[$row->erreichbarkeit]:'')."".($row->freigabeamum!=''?'Ja':'')."editdelete
'; -} -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("Sie haben keine Berechtigung diese Zeitsperre zu aendern"); - } - $action = "$PHP_SELF?type=edit_sperre&id=".$_GET['id']; - } - else - { - die("Fehlerhafte Parameteruebergabe"); - } -} -//formular zum editieren und neu anlegen der zeitsperren -$content_form=''; -$content_form.= '
'; -$content_form.= "\n"; -$content_form.= ''; -$content_form.= '"; - -$content_form.= '"; - -$content_form.= "'; - -$content_form.= "'; -$content_form.= ''; -$content_form.= "
Grund'; -$content_form.= '
Bezeichnung
von '; -//dropdown fuer vonstunde -$content_form.= "Stunde (inklusive)"; - -$content_form.= "
bis '; -//dropdown fuer bisstunde -$content_form.= "Stunde (inklusive)"; -$content_form.= "
Erreichbarkeit
Vertretung
 '; - -if(isset($_GET['type']) && $_GET['type']=='edit') - $content_form.= ""; -else - $content_form.= ""; -$content_form.= '
 Achtung: Es werden alle eingegeben Tage berücksichtigt, daher müssen mehrtägige Zeitsperren
an Unterbrechungen wie Wochenenden oder Feiertagen unterteilt werden!"; -$content_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 .= 'Daten wurden gespeichert!'; - } - else - { - $content_resturlaub .= "Fehler beim Speichern der Daten: $resturlaub->errormsg"; - } - - $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=''; -*/ -//Den Bereich fuer die Resturlaubstage nur anzeigen wenn dies -//im config angegeben ist -if(URLAUB_TOOLS) -{ - $jahr=date('Y'); - if (date('m')>8) - { - $datum_beginn_iso=$jahr.'-09-01'; - $datum_beginn='1.Sept.'.$jahr; - $datum_ende_iso=($jahr+1).'-08-31'; - $datum_ende='31.Aug.'.($jahr+1); - $geschaeftsjahr=$jahr.'/'.($jahr+1); - } - else - { - $datum_beginn_iso=($jahr-1).'-09-01'; - $datum_beginn='1.Sept.'.($jahr-1); - $datum_ende_iso=$jahr.'-08-31'; - $datum_ende='31.Aug.'.$jahr; - $geschaeftsjahr=($jahr-1).'/'.$jahr; - } - $content_resturlaub.="

Urlaub im Geschäftsjahr $geschaeftsjahr

"; - /* - $content_resturlaub.='
'; - $content_resturlaub.=''; - $content_resturlaub.=''; - $content_resturlaub.=''; - $content_resturlaub.=''; - $content_resturlaub.=''; - $content_resturlaub.='
Resturlaubstage (31.08.)
Anspruch (01.09.)
Gesamturlaub
 
Aktuelle Mehrarbeitsstunden:
'; - */ - $gebuchterurlaub=0; - //Urlaub berechnen (date_part('month', vondatum)>9 AND date_part('year', vondatum)='".(date('Y')-1)."') OR (date_part('month', vondatum)<9 AND date_part('year', vondatum)='".date('Y')."') - $qry = "SELECT sum(bisdatum-vondatum+1) as anzahltage FROM campus.tbl_zeitsperre - WHERE zeitsperretyp_kurzbz='Urlaub' AND mitarbeiter_uid='$uid' AND - ( - vondatum>='$datum_beginn_iso' AND bisdatum<='$datum_ende_iso' - )"; - $tttt="\n"; - $result = pg_query($conn, $qry); - $row = pg_fetch_object($result); - $gebuchterurlaub = $row->anzahltage; - if($gebuchterurlaub=='') - $gebuchterurlaub=0; - $content_resturlaub.=""; - $content_resturlaub.=""; - $content_resturlaub.=""; - $content_resturlaub.=""; - $content_resturlaub .=""; - $content_resturlaub .=''; - $content_resturlaub.="
Anspruch$anspruch Tage   ( jährlich )
+ Resturlaub$resturlaubstage Tage   ( Stichtag: $datum_beginn )
- aktuell gebuchter Urlaub $gebuchterurlaub Tage   ( $datum_beginn - $datum_ende )
aktueller Stand".($anspruch+$resturlaubstage-$gebuchterurlaub)." Tage   ( Stichtag: $datum_ende )
[AblaufUrlaubserfassung.pdf]
"; -} -echo ''; -echo ''; -echo "'; -echo ""; -echo ''; -echo ''; -echo '
"; -echo $content_form; -echo '$content_resturlaub
'; -echo $content_table; -echo '
'; - -?> -
- +, + * Andreas Oesterreicher and + * Rudolf Hangl . + */ +// ** +// * @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'); + require_once('../../../include/person.class.php'); + require_once('../../../include/benutzer.class.php'); + require_once('../../../include/mitarbeiter.class.php'); + require_once('../../../include/mail.class.php'); + require_once('../../../include/benutzerberechtigung.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."); + + //Wenn User Administrator ist und UID uebergeben wurde, dann die Zeitsperren + //des uebergebenen Users anzeigen + if(isset($_GET['uid'])) + { + $rechte = new benutzerberechtigung($conn); + $rechte->getBerechtigungen($uid); + if($rechte->isBerechtigt('admin')) + { + $uid = $_GET['uid']; + } + else + { + die('Fuer diese Aktion benoetigen Sie Administratorenrechte'); + } + } + $datum_obj = new datum(); + $ma= new mitarbeiter($conn); + + //Stundentabelleholen + if(! $result_stunde=pg_query($conn, "SELECT * FROM lehre.tbl_stunde ORDER BY stunde")) + die(pg_last_error($conn)); + $num_rows_stunde=pg_num_rows($result_stunde); + +?> + + +Zeitsperre + + + + + + + + + + +
  + + + + +
 Zeitsperren
+
+ + + + $bisdatum) + { + $error=true; + $error_msg .= 'VON-Datum größer als Bis-Datum! '; + } + + + + $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->freigabeamum!='') + { + $error = true; + $error_msg.='Dieser Urlaub kann nicht mehr editiert werden, da er schon freigegeben wurde'; + } + 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_kurzbz = $_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"; + if(URLAUB_TOOLS) + { + if($zeitsperre->new && $zeitsperre->zeitsperretyp_kurzbz=='Urlaub') + { + //Beim Anlegen von neuen Urlauben wird ein Mail an den Vorgesetzten versendet um diesen Freizugeben + $vorgesetzter = $ma->getVorgesetzte($uid); + if($vorgesetzter) + { + $to=''; + foreach($ma->vorgesetzte as $vg) + $to.=$vg.'@'.DOMAIN.','; + $to = substr($to, 0, strlen($to)-1); + //$to = 'oesi@technikum-wien.at'; + $benutzer = new benutzer($conn); + $benutzer->load($uid); + $message = "Dies ist eine automatische Mail! \n". + "$benutzer->nachname $benutzer->vorname hat einen neuen Urlaub eingetragen:\n". + "$zeitsperre->bezeichnung von $zeitsperre->vondatum bis $zeitsperre->bisdatum\n\n". + "Sie können diesen unter folgender Adresse freigeben:\n". + APP_ROOT."cis/private/profile/urlaubsfreigabe.php?uid=$uid&year=".$datum_obj->formatDatum($zeitsperre->vondatum, 'Y'); + $from='vilesci@'.DOMAIN; + $mail = new mail($to, $from, 'Freigabeansuchen', $message); + if($mail->send()) + { + echo "
Freigabemail wurde an $to versandt"; + } + else + { + echo "
Fehler beim Senden des Freigabemails an $to"; + } + } + else + { + echo "
Es konnte keine Freigabemail versendet werden da kein Vorgesetzter eingetragen ist"; + } + } + } + } + else + echo "Fehler beim Speichern der Daten"; + } + else + echo "$error_msg"; +} + +//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 "Fehler beim loeschen des Eintrages"; + } + else + echo "Sie haben keine Berechtigung diesen Datensatz zu loeschen"; +} + +//zeitsperren des users laden +$zeit = new zeitsperre($conn); +$zeit->getzeitsperren($uid); +$content_table='

'; + +$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; + } +} +//liste aller zeitsperren ausgeben +if(count($zeit->result)>0) +{ + $content_table.= ''; + $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.= " + + + + + + + "; + if($row->freigabeamum=='' || $row->zeitsperretyp_kurzbz!='Urlaub') + { + $content_table.=" + "; + } + $content_table.=""; + } + $content_table.= '
BezeichnungGrundVonBisVertretungErreichbarkeitFreigegeben
$row->bezeichnung$row->zeitsperretyp_kurzbz".$datum_obj->convertISODate($row->vondatum)." ".($row->vonstunde!=''?'('.$row->vonstunde.')':'')."".$datum_obj->convertISODate($row->bisdatum)." ".($row->bisstunde!=''?'('.$row->bisstunde.')':'')."".(isset($row_vertretung->kurzbz)?$row_vertretung->kurzbz:'')."".(isset($erreichbarkeit_arr[$row->erreichbarkeit])?$erreichbarkeit_arr[$row->erreichbarkeit]:'')."".($row->freigabeamum!=''?'Ja':'')."editdelete
'; +} +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("Sie haben keine Berechtigung diese Zeitsperre zu aendern"); + } + $action = "$PHP_SELF?type=edit_sperre&id=".$_GET['id']; + } + else + { + die("Fehlerhafte Parameteruebergabe"); + } +} +//formular zum editieren und neu anlegen der zeitsperren +$content_form=''; +$content_form.= ''; +$content_form.= "\n"; +$content_form.= ''; +$content_form.= '"; + +$content_form.= '"; + +$content_form.= "'; + +$content_form.= "'; +$content_form.= ''; +$content_form.= "
Grund'; +$content_form.= '
Bezeichnung
von '; +//dropdown fuer vonstunde +$content_form.= "Stunde (inklusive)"; + +$content_form.= "
bis '; +//dropdown fuer bisstunde +$content_form.= "Stunde (inklusive)"; +$content_form.= "
Erreichbarkeit
Vertretung
 '; + +if(isset($_GET['type']) && $_GET['type']=='edit') + $content_form.= ""; +else + $content_form.= ""; +$content_form.= '
 Achtung: Es werden alle eingegeben Tage berücksichtigt, daher müssen mehrtägige Zeitsperren
an Unterbrechungen wie Wochenenden oder Feiertagen unterteilt werden!"; +$content_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 .= 'Daten wurden gespeichert!'; + } + else + { + $content_resturlaub .= "Fehler beim Speichern der Daten: $resturlaub->errormsg"; + } + + $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=''; +*/ +//Den Bereich fuer die Resturlaubstage nur anzeigen wenn dies +//im config angegeben ist +if(URLAUB_TOOLS) +{ + $jahr=date('Y'); + if (date('m')>8) + { + $datum_beginn_iso=$jahr.'-09-01'; + $datum_beginn='1.Sept.'.$jahr; + $datum_ende_iso=($jahr+1).'-08-31'; + $datum_ende='31.Aug.'.($jahr+1); + $geschaeftsjahr=$jahr.'/'.($jahr+1); + } + else + { + $datum_beginn_iso=($jahr-1).'-09-01'; + $datum_beginn='1.Sept.'.($jahr-1); + $datum_ende_iso=$jahr.'-08-31'; + $datum_ende='31.Aug.'.$jahr; + $geschaeftsjahr=($jahr-1).'/'.$jahr; + } + $content_resturlaub.="

Urlaub im Geschäftsjahr $geschaeftsjahr

"; + /* + $content_resturlaub.='
'; + $content_resturlaub.=''; + $content_resturlaub.=''; + $content_resturlaub.=''; + $content_resturlaub.=''; + $content_resturlaub.=''; + $content_resturlaub.='
Resturlaubstage (31.08.)
Anspruch (01.09.)
Gesamturlaub
 
Aktuelle Mehrarbeitsstunden:
'; + */ + $gebuchterurlaub=0; + //Urlaub berechnen (date_part('month', vondatum)>9 AND date_part('year', vondatum)='".(date('Y')-1)."') OR (date_part('month', vondatum)<9 AND date_part('year', vondatum)='".date('Y')."') + $qry = "SELECT sum(bisdatum-vondatum+1) as anzahltage FROM campus.tbl_zeitsperre + WHERE zeitsperretyp_kurzbz='Urlaub' AND mitarbeiter_uid='$uid' AND + ( + vondatum>='$datum_beginn_iso' AND bisdatum<='$datum_ende_iso' + )"; + $tttt="\n"; + $result = pg_query($conn, $qry); + $row = pg_fetch_object($result); + $gebuchterurlaub = $row->anzahltage; + if($gebuchterurlaub=='') + $gebuchterurlaub=0; + $content_resturlaub.=""; + $content_resturlaub.=""; + $content_resturlaub.=""; + $content_resturlaub.=""; + $content_resturlaub .=""; + $content_resturlaub .=''; + $content_resturlaub.="
Anspruch$anspruch Tage   ( jährlich )
+ Resturlaub$resturlaubstage Tage   ( Stichtag: $datum_beginn )
- aktuell gebuchter Urlaub $gebuchterurlaub Tage   ( $datum_beginn - $datum_ende )
aktueller Stand".($anspruch+$resturlaubstage-$gebuchterurlaub)." Tage   ( Stichtag: $datum_ende )
[AblaufUrlaubserfassung.pdf]
"; +} +echo ''; +echo ''; +echo "'; +echo ""; +echo ''; +echo ''; +echo '
"; +echo $content_form; +echo '$content_resturlaub
'; +echo $content_table; +echo '
'; + +?> +
+ \ No newline at end of file