prognose_ludwigsburg/erf_grundgehalt.php
2023-04-26 13:17:21 +02:00

185 lines
5.9 KiB
PHP
Executable File

<?php
$jahrgang=$_COOKIE["jahrgang"];
/*
# Fuer debugging
error_reporting(E_ALL);
ini_set('display_errors', 1);
#echo __LINE__."<br>";
*/
include_once 'classes/TestProjektSmarty.class.php';
$smarty = new Smarty();
require_once("config.inc.php");
$template = "standard";
$templatename = substr(basename($_SERVER['PHP_SELF']),0,-3)."html";
require_once "language/german.inc.php";
require_once("func_rollenrechte.php");
// Rechteüberprüfung
#$db = dbconnect();
if ($user_admin == ""){ require("index.php"); exit;} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite
if(!rore($user_admin,'e_grundgeh','RE')){echo "Keine Rechte";exit;}
// Rechteüberprüfung ende
session_start();
if(isset($_GET['action'])){
$action = $_GET['action'];
}else{
$action = '';
}
if($action == ''){
if(!isset($_SESSION['funktion'])){
$_SESSION["e_grund_status"] = 'neu';
}
if(isset($_GET['edit'])){
$_SESSION["e_grund_status"] = 'edit';
$gid = $_GET['edit'];
$_SESSION["e_grund_gid"] = $gid;
}
if($_GET['editende']==1){
# Editieren ist beendet, als ein update auf einen Datensatz. Dann ist der status wieder Neu, damit wird wieder ein Insert durchgeführt
$_SESSION["e_grund_status"] = 'neu';
}
# --- Wenn Werte editiert werden ------------
if($_SESSION["e_grund_status"] == 'edit'){
$result_edit = $db->query("SELECT date_format(startdat, '%d') startdat_tag
, date_format(startdat, '%m') startdat_mon
, date_format(startdat, '%Y') startdat_jahr
, betrag
, besoldung
, stufe
FROM prog_grundgehalt
WHERE gid = $gid");
$row_edit = $result_edit->fetch_array();
$smarty->assign('e_grund_startdat_tag', "$row_edit[startdat_tag]");
$smarty->assign('e_grund_startdat_mon', "$row_edit[startdat_mon]");
$smarty->assign('e_grund_startdat_jahr', "$row_edit[startdat_jahr]");
$smarty->assign('e_grund_betrag', "$row_edit[betrag]");
$smarty->assign('e_grund_besoldung', "$row_edit[besoldung]");
$smarty->assign('e_grund_stufe', "$row_edit[stufe]");
}
# --- Wenn Werte editiert werden Ende -------
# --- Gespeicherte Bezüge ausgeben ----------
# Filter auslesen
if(isset($_GET["besoldung"])){
$filter_besoldung = $_GET["besoldung"];
$_SESSION["filter_besoldung"] = $filter_besoldung;
$smarty->assign('e_grund_filter_besoldung', $filter_besoldung);
}else{
if(isset($_SESSION["filter_besoldung"])){
$filter_besoldung = $_SESSION["filter_besoldung"];
$smarty->assign('e_grund_filter_besoldung', $filter_besoldung);
}else{
$filter_besoldung = '%';
$smarty->assign('e_grund_filter_besoldung', "alle");
}
}
if(isset($_GET["stufe"])){
$filter_stufe = $_GET["stufe"];
$_SESSION["filter_stufe"] = $filter_stufe;
$smarty->assign('e_grund_filter_stufe', $filter_stufe);
}else{
if(isset($_SESSION["filter_stufe"])){
$filter_stufe = $_SESSION["filter_stufe"];
$smarty->assign('e_grund_filter_stufe', $filter_stufe);
}else{
$filter_stufe = '%';
$smarty->assign('e_grund_filter_stufe', "alle");
}
}
$query2 = "SELECT gid
, date_format(startdat, '%d.%m.%Y') startdat_form
, betrag
, besoldung
, stufe
FROM prog_grundgehalt
WHERE besoldung like '$filter_besoldung'
AND stufe like '$filter_stufe'
ORDER BY startdat DESC, besoldung DESC, stufe DESC";
$result2 = $db->query( $query2)
or die ("Cannot execute query2");
while ($row2 = $result2->fetch_array()){
$row2['betrag'] = number_format($row2['betrag'], 2, ',', '.');
$value_ggeh[] = $row2;
}
$smarty->assign('table_data2', $value_ggeh);
# --- Gespeicherte Bezüge Ende -----
}
if($action == 'save'){
$startdat = $_POST['jahr1']."-".$_POST['mon1']."-".$_POST['tag1'];
$betrag= str_replace(",",".", $_POST['betrag']);
$besoldung= $_POST['besoldung'];
if(substr($_POST['besoldung'],0,1) == 'W'){
# Bei W-Besoldung gibt es keine Stufen
$stufe =0;
}
if(substr($_POST['besoldung'],0,1) == 'A'){
$stufe = $_POST['stufeA'];
}
if(substr($_POST['besoldung'],0,1) == 'C'){
$stufe = $_POST['stufeC'];
}
$modify_date = date("Y-m-d H:i:s");
if($_SESSION["e_grund_status"] == 'neu'){
$result = $db->query("INSERT INTO prog_grundgehalt (startdat, besoldung, betrag, stufe, modify_date) VALUES ('$startdat', '$besoldung', '$betrag', '$stufe', '$modify_date')");
}
if($_SESSION["e_grund_status"] == 'edit'){
$gid = $_SESSION["e_grund_gid"];
$result = $db->query("UPDATE prog_grundgehalt
SET startdat = '$startdat'
, besoldung = '$besoldung'
, betrag = '$betrag'
, stufe = '$stufe'
, modify_date = '$modify_date'
WHERE gid = $gid
");
unset($_SESSION['e_grund_gid']);
}
# Dann bekommts beim refresh den status neu, also es wird beim Abschicken ein Insert gemacht
$editende=1;
echo "<meta http-equiv=\"refresh\" content=\"1; URL=" . $_SERVER['PHP_SELF'] . "?editende=$editende\">";
}
if($action == 'del'){
$gid = $_GET['gid'];
$result = $db->query("DELETE FROM prog_grundgehalt
WHERE gid=$gid");
# Dann bekommts beim refresh den status neu, also es wird beim Abschicken ein Insert gemacht
$editende=1;
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?editende=$editende\">";
}
$smarty->assign('action', "$action");
$smarty->display("$template/$templatename");
?>