"; */ 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,'a_profbearb','RE')){echo "Keine Rechte";exit;} // Rechteüberprüfung ende session_start(); # Wenn Seite neu aufgerufen wird, dann alle Sessions, die mit "bearbeiten_" beginnen löschen if(isset($_GET['new']) AND $_GET['new'] == 1){; $search_prefix = 'bearbeiten_'; $search_len = strlen($search_prefix); foreach( $_SESSION as $key => $value){ if ( substr( $key, 0, $search_len) == $search_prefix) { unset( $_SESSION[$key]); } } } if(isset($_GET['action'])){ $action = $_GET['action']; }else{ $action = ''; } if($action == ''){ $query_prof = "SELECT did, doz_titel, doz_vorname, doz_name FROM prog_professor ORDER BY doz_name ASC"; $result_prof = $db->query($query_prof) or die ("Cannot execute query prof"); while ($row_prof = $result_prof->fetch_array()){ $value_prof[] = $row_prof; } $smarty->assign('table_data3', $value_prof); $_SESSION["prof_bearbeiten_status"] = 'neu'; $_SESSION["prof_bearbeiten_vza_status"] = 'neu'; } if($action == 'auswahl'){ $_SESSION["bearbeiten_did"] = $_POST["prof"]; if(isset($_SESSION["bearbeiten_did"])){ $did = $_SESSION["bearbeiten_did"]; } if(isset($_GET["did"])){ $did = $_GET["did"]; } $smarty->assign('prof_bearbeiten_did', $did); $_SESSION["prof_bearbeiten_did"] = $did; $result_edit = $db->query("SELECT doz_titel , doz_vorname , doz_name , date_format(geb_dat, '%d') gebtag_tag , date_format(geb_dat, '%m') gebtag_monat , date_format(geb_dat, '%Y') gebtag_jahr , date_format(zugang, '%d') zugang_tag , date_format(zugang, '%m') zugang_monat , date_format(zugang, '%Y') zugang_jahr , date_format(weggang, '%d') weggang_tag , date_format(weggang, '%m') weggang_mon , date_format(weggang, '%Y') weggang_jahr , date_format(nachbesetzung, '%d') nachbes_tag , date_format(nachbesetzung, '%m') nachbes_mon , date_format(nachbesetzung, '%Y') nachbes_jahr , anz_zulagen FROM prog_professor WHERE did = $did"); $row_edit = $result_edit->fetch_array(); # Schleife über Besoldungsstufen $query2 = "SELECT pbid , date_format(startdat, '%d.%m.%Y') startdat_form , besoldung , substr(besoldung,1,1) besform , stufe , bzid FROM prog_professor_besoldung WHERE did = $did ORDER BY startdat DESC"; $result2 = $db->query( $query2) or die ("Cannot execute query2"); while ($row2 = $result2->fetch_array()){ $result_bz = $db->query("SELECT beschreibung FROM prog_kat_besoldungszuweisung WHERE bzid = $row2[bzid]"); $row_bz = $result_bz->fetch_array(); if($row2['besform'] == "W"){ $stufeform = "-"; }elseif(($row2['besform'] == "A" or $row2['besform'] == "C") AND $row2['stufe'] == 0){ $stufeform = "unrelevant für Vergaberahmen"; }else{ $stufeform = $row2['stufe']; } $row2['stufeform'] = $stufeform; $row2['zuweisung'] = $row_bz['beschreibung']; $value_bes[] = $row2; } $smarty->assign('table_data2', $value_bes); # Schleife über Beschäftigungsgrad $query3 = "SELECT pad , date_format(startdat, '%d.%m.%Y') startdat_form , prozent FROM prog_professor_arbumfang WHERE did = $did ORDER BY startdat DESC"; $result3 = $db->query( $query3) or die ("Cannot execute query3"); while ($row3 = $result3->fetch_array()){ $row3['anz_proz'] = $row3['prozent']*100; $value_vza[] = $row3; } $smarty->assign('table_data3', $value_vza); # Schleife über Besoldungszuweisung $query4 = "SELECT bzid , beschreibung FROM prog_kat_besoldungszuweisung ORDER BY bzid ASC"; $result4 = $db->query( $query4) or die ("Cannot execute query4"); while ($row4 = $result4->fetch_array()){ $value_zuw[] = $row4; } $smarty->assign('table_data4', $value_zuw); # Daten aufbereiten für Zurückbutton if(isset($_SESSION["bearbeiten_titel"])){ $smarty->assign('prof_bearbeiten_titel', $_SESSION["bearbeiten_titel"]); }else{ $smarty->assign('prof_bearbeiten_titel', $row_edit["doz_titel"]); } if(isset($_SESSION["bearbeiten_vorname"])){ $smarty->assign('prof_bearbeiten_vorname', $_SESSION["bearbeiten_vorname"]); }else{ $smarty->assign('prof_bearbeiten_vorname', $row_edit["doz_vorname"]); } if(isset($_SESSION["bearbeiten_nachname"])){ $smarty->assign('prof_bearbeiten_nachname', $_SESSION["bearbeiten_nachname"]); }else{ $smarty->assign('prof_bearbeiten_nachname', $row_edit["doz_name"]); } if(isset($_SESSION["bearbeiten_gebtag_tag"])){ $smarty->assign('prof_bearbeiten_gebdat_tag', $_SESSION["bearbeiten_gebtag_tag"]); }else{ $smarty->assign('prof_bearbeiten_gebdat_tag', $row_edit["gebtag_tag"]); } if(isset($_SESSION["bearbeiten_gebtag_mon"])){ $smarty->assign('prof_bearbeiten_gebdat_mon', $_SESSION["bearbeiten_gebtag_mon"]); }else{ $smarty->assign('prof_bearbeiten_gebdat_mon', $row_edit["gebtag_monat"]); } if(isset($_SESSION["bearbeiten_gebtag_jahr"])){ $smarty->assign('prof_bearbeiten_gebdat_jahr', $_SESSION["bearbeiten_gebtag_jahr"]); }else{ $smarty->assign('prof_bearbeiten_gebdat_jahr', $row_edit["gebtag_jahr"]); } if(isset($_SESSION["bearbeiten_zugang_tag"])){ $smarty->assign('prof_bearbeiten_zugang_tag', $_SESSION["bearbeiten_zugang_tag"]); }else{ $smarty->assign('prof_bearbeiten_zugang_tag', $row_edit["zugang_tag"]); } if(isset($_SESSION["bearbeiten_zugang_mon"])){ $smarty->assign('prof_bearbeiten_zugang_mon', $_SESSION["bearbeiten_zugang_mon"]); }else{ $smarty->assign('prof_bearbeiten_zugang_mon', $row_edit["zugang_monat"]); } if(isset($_SESSION["bearbeiten_zugang_jahr"])){ $smarty->assign('prof_bearbeiten_zugang_jahr', $_SESSION["bearbeiten_zugang_jahr"]); }else{ $smarty->assign('prof_bearbeiten_zugang_jahr', $row_edit["zugang_jahr"]); } if(isset($_SESSION["bearbeiten_weggang_tag"])){ $smarty->assign('prof_bearbeiten_weggang_tag', $_SESSION["bearbeiten_weggang_tag"]); }else{ $smarty->assign('prof_bearbeiten_weggang_tag', $row_edit["weggang_tag"]); } if(isset($_SESSION["bearbeiten_weggang_mon"])){ $smarty->assign('prof_bearbeiten_weggang_mon', $_SESSION["bearbeiten_weggang_mon"]); }else{ $smarty->assign('prof_bearbeiten_weggang_mon', $row_edit["weggang_mon"]); } if(isset($_SESSION["bearbeiten_weggang_jahr"])){ $smarty->assign('prof_bearbeiten_weggang_jahr', $_SESSION["bearbeiten_weggang_jahr"]); }else{ $smarty->assign('prof_bearbeiten_weggang_jahr', $row_edit["weggang_jahr"]); } if(isset($_SESSION["bearbeiten_nachbes_tag"])){ $smarty->assign('prof_bearbeiten_nachbes_tag', $_SESSION["bearbeiten_nachbes_tag"]); }else{ $smarty->assign('prof_bearbeiten_nachbes_tag', $row_edit["nachbes_tag"]); } if(isset($_SESSION["bearbeiten_nachbes_mon"])){ $smarty->assign('prof_bearbeiten_nachbes_mon', $_SESSION["bearbeiten_nachbes_mon"]); }else{ $smarty->assign('prof_bearbeiten_nachbes_mon', $row_edit["nachbes_mon"]); } if(isset($_SESSION["bearbeiten_nachbes_jahr"])){ $smarty->assign('prof_bearbeiten_nachbes_jahr', $_SESSION["bearbeiten_nachbes_jahr"]); }else{ $smarty->assign('prof_bearbeiten_nachbes_jahr', $row_edit["nachbes_jahr"]); } if(isset($_SESSION["bearbeiten_deltas"])){ $smarty->assign('prof_bearbeiten_deltas', $_SESSION["bearbeiten_deltas"]); }else{ $smarty->assign('prof_bearbeiten_deltas', $row_edit["anz_zulagen"]); } # Daten aufbereiten für Zurückbutton ENDE # Edit if(isset($_GET['edit'])){ $_SESSION["prof_bearbeiten_status"] = 'edit'; $pbid = $_GET['edit']; $_SESSION["prof_bearbeiten_pbid"] = $pbid; $pad = $_SESSION["prof_bearbeiten_pad"]; } if(isset($_GET['edit_vza'])){ $_SESSION["prof_bearbeiten_vza_status"] = 'edit'; $pad = $_GET['edit_vza']; $_SESSION["prof_bearbeiten_pad"] = $pad; $pbid = $_SESSION["prof_bearbeiten_pbid"]; } 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["prof_bearbeiten_status"] = 'neu'; } if($_GET['editendevza']==1){ # Editieren von VZA ist beendet, als ein update auf einen Datensatz. Dann ist der status wieder Neu, damit wird wieder ein Insert durchgeführt $_SESSION["prof_bearbeiten_vza_status"] = 'neu'; } # --- Wenn Werte editiert werden ------------ if($_SESSION["prof_bearbeiten_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 , besoldung , stufe , bzid FROM prog_professor_besoldung WHERE pbid = $pbid"); $row_edit = $result_edit->fetch_array(); $smarty->assign('prof_bearbeiten_startdat_tag', "$row_edit[startdat_tag]"); $smarty->assign('prof_bearbeiten_startdat_mon', "$row_edit[startdat_mon]"); $smarty->assign('prof_bearbeiten_startdat_jahr', "$row_edit[startdat_jahr]"); $smarty->assign('prof_bearbeiten_besoldung', "$row_edit[besoldung]"); $smarty->assign('prof_bearbeiten_stufe', "$row_edit[stufe]"); $smarty->assign('prof_bearbeiten_zuweisung', "$row_edit[bzid]"); } # --- Wenn Werte editiert werden Ende ------- # --- Wenn Werte VZA editiert werden ------------ if($_SESSION["prof_bearbeiten_vza_status"] == 'edit'){ $result_editvza = $db->query("SELECT date_format(startdat, '%d') startdat_tag , date_format(startdat, '%m') startdat_mon , date_format(startdat, '%Y') startdat_jahr , prozent FROM prog_professor_arbumfang WHERE pad = $pad"); $row_editvza = $result_editvza->fetch_array(); $smarty->assign('prof_bearbeiten_vza_startdat_tag', "$row_editvza[startdat_tag]"); $smarty->assign('prof_bearbeiten_vza_startdat_mon', "$row_editvza[startdat_mon]"); $smarty->assign('prof_bearbeiten_vza_startdat_jahr', "$row_editvza[startdat_jahr]"); $smarty->assign('prof_bearbeiten_vza_prozent', "$row_editvza[prozent]"); } # --- Wenn Werte editiert werden Ende ------- } if($action == 'save_vza'){ # VZA speichern $prof = $_SESSION["prof_bearbeiten_did"]; $startdat = $_POST['jahr6']."-".$_POST['mon6']."-".$_POST['tag6']; $umfang = $_POST['umfang']; if($_SESSION["prof_bearbeiten_vza_status"] == 'neu'){ $result = $db->query("INSERT INTO prog_professor_arbumfang (startdat, did, prozent) VALUES ('$startdat', $prof, '$umfang')"); } if($_SESSION["prof_bearbeiten_vza_status"] == 'edit'){ $pad = $_SESSION["prof_bearbeiten_pad"]; $result = $db->query("UPDATE prog_professor_arbumfang SET startdat = '$startdat' ,prozent = '$umfang' WHERE pad = $pad "); unset($_SESSION['prof_bearbeiten_pad']); } # Dann bekommts beim refresh den status neu, also es wird beim Abschicken ein Insert gemacht $editendevza=1; echo ""; } if($action == 'del_vza'){ # Besoldung löschen $prof = $_SESSION["prof_bearbeiten_did"]; $pad = $_GET['pad']; $result = $db->query("DELETE FROM prog_professor_arbumfang WHERE pad=$pad"); # Dann bekommts beim refresh den status neu, also es wird beim Abschicken ein Insert gemacht $editendevza=1; echo ""; } if($action == 'save_besoldung'){ # Besoldung speichern $prof = $_SESSION["prof_bearbeiten_did"]; $startdat = $_POST['jahr5']."-".$_POST['mon5']."-".$_POST['tag5']; $besoldung = $_POST['besoldung']; $bzid = $_POST['zuweisung']; 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']; } if($_SESSION["prof_bearbeiten_status"] == 'neu'){ $result = $db->query("INSERT INTO prog_professor_besoldung (startdat, did, besoldung, stufe, bzid) VALUES ('$startdat', $prof, '$besoldung', '$stufe', $bzid)"); } if($_SESSION["prof_bearbeiten_status"] == 'edit'){ $pbid = $_SESSION["prof_bearbeiten_pbid"]; $result = $db->query("UPDATE prog_professor_besoldung SET startdat = '$startdat' , besoldung = '$besoldung' , stufe = '$stufe' , bzid = $bzid WHERE pbid = $pbid "); unset($_SESSION['prof_bearbeiten_pbid']); } # Dann bekommts beim refresh den status neu, also es wird beim Abschicken ein Insert gemacht $editende=1; echo ""; } if($action == 'del'){ # Besoldung löschen $prof = $_SESSION["prof_bearbeiten_did"]; $pbid = $_GET['pbid']; $result = $db->query("DELETE FROM prog_professor_besoldung WHERE pbid=$pbid"); # Dann bekommts beim refresh den status neu, also es wird beim Abschicken ein Insert gemacht $editende=1; echo ""; } if($action == 'overview'){ # Daten aus Startseite speichern if(isset($_POST['titel'])){ $_SESSION["bearbeiten_titel"] = $_POST['titel']; } if(isset($_POST['vorname'])){ $_SESSION["bearbeiten_vorname"] = $_POST['vorname']; } if(isset($_POST['nachname'])){ $_SESSION["bearbeiten_nachname"] = $_POST['nachname']; } if(isset($_POST['besoldung'])){ $_SESSION["bearbeiten_tatsbes"] = $_POST['besoldung']; } if(isset($_POST['delta'])){ $_SESSION["bearbeiten_deltas"] = $_POST['delta']; } if(isset($_POST['tag1'])){ $_SESSION["bearbeiten_gebtag_tag"] = $_POST['tag1']; } if(isset($_POST['mon1'])){ $_SESSION["bearbeiten_gebtag_mon"] = $_POST['mon1']; } if(isset($_POST['jahr1'])){ $_SESSION["bearbeiten_gebtag_jahr"] = $_POST['jahr1']; } if(isset($_POST['tag2'])){ $_SESSION["bearbeiten_zugang_tag"] = $_POST['tag2']; } if(isset($_POST['mon2'])){ $_SESSION["bearbeiten_zugang_mon"] = $_POST['mon2']; } if(isset($_POST['jahr2'])){ $_SESSION["bearbeiten_zugang_jahr"] = $_POST['jahr2']; } if(isset($_POST['tag3'])){ $_SESSION["bearbeiten_weggang_tag"] = $_POST['tag3']; } if(isset($_POST['mon3'])){ $_SESSION["bearbeiten_weggang_mon"] = $_POST['mon3']; } if(isset($_POST['jahr3'])){ $_SESSION["bearbeiten_weggang_jahr"] = $_POST['jahr3']; } if(isset($_POST['tag4'])){ $_SESSION["bearbeiten_nachbes_tag"] = $_POST['tag4']; } if(isset($_POST['mon4'])){ $_SESSION["bearbeiten_nachbes_mon"] = $_POST['mon4']; } if(isset($_POST['jahr4'])){ $_SESSION["bearbeiten_nachbes_jahr"] = $_POST['jahr4']; } # Daten aus Startseite speichern ENDE if ($_SESSION["bearbeiten_nachname"] == "" or $_SESSION["bearbeiten_vorname"] == "" or $_SESSION["bearbeiten_tatsbes"] == "" or $_SESSION["bearbeiten_deltas"] == "" or $_SESSION["bearbeiten_gebtag_tag"] == "" or $_SESSION["bearbeiten_gebtag_mon"] == "" or $_SESSION["bearbeiten_gebtag_jahr"] == "" or $_SESSION["bearbeiten_zugang_tag"] == "" or $_SESSION["bearbeiten_zugang_mon"] == "" or $_SESSION["bearbeiten_zugang_jahr"] == "" or $_SESSION["bearbeiten_weggang_tag"] == "" or $_SESSION["bearbeiten_weggang_mon"] == "" or $_SESSION["bearbeiten_weggang_jahr"] == "" ){ // Fehler, falls Pflichtfelder unausgefüllt $smarty->assign('prof_bearbeiten_mandatory', "1"); }else{ $smarty->assign('prof_bearbeiten_mandatory', "2"); if(isset($_SESSION['bearbeiten_profil'])){ $profil = $_SESSION['bearbeiten_profil']; $bezeichnung_profil = ""; for ($i=0;$iquery("SELECT bezeichnung FROM prog_admin_rolle WHERE rid='$profil[$i]'"); $row_profil = $result_profil->fetch_array(); $bezeichnung_profil .= "$row_profil[bezeichnung]
"; } } $gebtag = $_POST['tag1'].".".$_POST['mon1'].".".$_POST['jahr1']; $zugang = $_POST['tag2'].".".$_POST['mon2'].".".$_POST['jahr2']; $weggang = $_POST['tag3'].".".$_POST['mon3'].".".$_POST['jahr3']; if($_POST['tag4'] == ''){$_POST['tag4'] = "00";} if($_POST['mon4'] == ''){$_POST['mon4'] = "00";} if($_POST['jahr4'] == ''){$_POST['jahr4'] = "0000";} $nachbes = $_POST['tag4'].".".$_POST['mon4'].".".$_POST['jahr4']; $smarty->assign('prof_bearbeiten_titel', $_SESSION["bearbeiten_titel"]); $smarty->assign('prof_bearbeiten_vorname', $_SESSION["bearbeiten_vorname"]); $smarty->assign('prof_bearbeiten_nachname', $_SESSION["bearbeiten_nachname"]); $smarty->assign('prof_bearbeiten_gebtag', $gebtag); $smarty->assign('prof_bearbeiten_zugang', $zugang); $smarty->assign('prof_bearbeiten_weggang', $weggang); $smarty->assign('prof_bearbeiten_nachbes', $nachbes); $smarty->assign('prof_bearbeiten_tatsbes', $_SESSION["bearbeiten_tatsbes"]); $smarty->assign('prof_bearbeiten_deltas', $_SESSION["bearbeiten_deltas"]); } } if($action == 'save'){ # dt_patrone $bearbeiten_titel = trim($_SESSION["bearbeiten_titel"]); $bearbeiten_vorname = trim($_SESSION["bearbeiten_vorname"]); $bearbeiten_nachname = trim($_SESSION["bearbeiten_nachname"]); $bearbeiten_gebtag = trim($_SESSION["bearbeiten_gebtag_jahr"]."-".$_SESSION["bearbeiten_gebtag_mon"]."-".$_SESSION["bearbeiten_gebtag_tag"]); $bearbeiten_zugang = trim($_SESSION["bearbeiten_zugang_jahr"]."-".$_SESSION["bearbeiten_zugang_mon"]."-".$_SESSION["bearbeiten_zugang_tag"]); $bearbeiten_weggang = trim($_SESSION["bearbeiten_weggang_jahr"]."-".$_SESSION["bearbeiten_weggang_mon"]."-".$_SESSION["bearbeiten_weggang_tag"]); $bearbeiten_nachbes = trim($_SESSION["bearbeiten_nachbes_jahr"]."-".$_SESSION["bearbeiten_nachbes_mon"]."-".$_SESSION["bearbeiten_nachbes_tag"]); $bearbeiten_tatsbes = trim($_SESSION["bearbeiten_tatsbes"]); $bearbeiten_deltas = trim($_SESSION["bearbeiten_deltas"]); $did = $_SESSION["bearbeiten_did"]; # Profil $bearbeiten_profil = $_SESSION["bearbeiten_profil"]; $smarty->assign('prof_bearbeiten_exists', "2"); $sql1 = $db->query( "UPDATE prog_professor SET doz_titel = '$bearbeiten_titel' , doz_vorname = '$bearbeiten_vorname' , doz_name = '$bearbeiten_nachname' , geb_dat = '$bearbeiten_gebtag' , zugang = '$bearbeiten_zugang' , weggang = '$bearbeiten_weggang' , nachbesetzung = '$bearbeiten_nachbes' , anz_zulagen = '$bearbeiten_deltas' WHERE did = $did " ); if(!$sql1){ $error = TRUE; $smarty->assign('prof_bearbeiten_inserterr', "1"); $smarty->assign('prof_bearbeiten_reason', "$error_reason"); // Kein Mailversand $error_reason .= "Fehler beim anlegen von Stammdaten (prog_professor)
"; }else{ $error = FALSE; $smarty->assign('prof_bearbeiten_inserterr', "2"); } session_destroy(); } $smarty->assign('action', "$action"); $smarty->display("$template/$templatename"); ?>