--- a/fhiiqm/info_ed.php Wed Jul 31 15:10:48 2013 +0200
+++ b/fhiiqm/info_ed.php Thu Sep 12 09:04:56 2013 +0200
@@ -1,447 +1,452 @@
-<?php
-
-/**
- * @author Bettina Schwarzer, Fritz-Haber-Institut
- * @copyright 02/2012
- *
- * INSERT,UPDATE Informationen ausser Betriebsanweisung, Betriebsstoerung
- */
-
- error_reporting(E_ALL ^ E_NOTICE);
-
- session_start();
- if (! isset($_SESSION["userid"]))
- {
- include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- login($_SERVER["PHP_SELF"]);
- exit;
- }
-
- if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ir",$_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"])))
- {
- header("Location: start.php");
- exit;
- }
-
- $ityp = $_GET["t"];
-
- $infid = $_GET["i"];
-
- $zeil = $_GET["z"];
- if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
- $start = $_GET["st"]; // Start bei DS $start+1
- if (!$start) $start=0;
- $sort = $_GET["s"]; // Sortierung nach Spalte
- $dir = $_GET["d"]; // Sortierrichtung
- $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
- $filter = $_GET["b"]; // Filterbegriff
- // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
- $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
-
- $del = $_POST["del"];
- $sub = $_POST["eintragen"];
- $dup = $_POST["dup"];
- if (!$dup) $dup = $_GET["dp"];
- $copy = $_GET["c"];
- $inf = $_POST["inf"];
- $ok = $_POST["ok"];
- if (!$inf["okn"]) $ok = false;
- $duptext="";
-
-// print_r($inf); echo "ok = $ok<br /><br />";
-
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
- include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
- $dbc = new dbconnection();
-
- if ($dup)
- { // Info duplizieren
- $tab = "Info";
- $key = "info_ID";
- $val = $infid;
-// $ret=1;
- $ret = duplicate_record ($tab, $key, $val);
- if ($ret)
- {
- $infid_new=$ret;
- // Infofilename loeschen
- $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
- $retf = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
-
- // duplizieren Produkte
- $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- $retp = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
-
- // duplizieren Adressat
- $sql = "INSERT INTO Info_Adressat SELECT $infid_new,info_adr_ID FROM Info_Adressat WHERE info_ID = $infid";
- $reta = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
-
- // duplizieren Verantwortliche
- $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
- $retv = $dbc -> execute($sql);
- if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
-
- if ($ret && $retf && $retp && $reta && $retv)
- {
- $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&$getp";
- header("Location: $addr");
- exit;
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
- else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
- }
-
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
- <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
- <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
-<!--
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
--->
- <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
- <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
-
- <title>Edit Informationen</title>
-</head>
-
-<body>
-
- <script>
- $(document).ready(function() {
- $("#titel").focus();
- $("#persknr").autocomplete({
- source: "/fhiiqm/inc/ma_list_ac.inc.php",
- minLength: 2,
- select: function(event,ui){$("#pid").val(ui.item.id);}
- });
- $("#cdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#vdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("#bdat").datepicker({
- dateFormat: 'yy-mm-dd', //nur Datum
- yearRange: '2000:2025',
- changeMonth: true,
- changeYear: true,
- firstDay: 1,
- dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
- monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
- });
- $("input[id='persknr']").addClass("long20");
- $("input[id='cdat']").addClass("long10");
- $("input[id='vdat']").addClass("long10");
- $("input[id='bdat']").addClass("long10");
- });
- function addInputf(divId,anz){
- var cdiv = document.createElement('div');
- var idl = "cbl_" + anz;
- cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
- cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
- cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
- //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
- cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
- cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
- cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
- document.getElementById(divId).appendChild(cdiv);
- var delcb = document.getElementById('del');
- delcb.id = "del_" + anz;
- delcb.style.display = 'none';
- var lcb = document.getElementById('lb');
- lcb.id = "lb_" + anz;
- lcb.setAttribute("for", delcb.id);
- lcb.style.display = 'none';
- counter++;
- }
- function markdelInput(divId,anz){
- for (i=1; i<anz; i++)
- {
- var id = "del_" + i;
- var delcb = document.getElementById(id);
- delcb.style.display = 'inline';
- var idl = "lb_" + i;
- var lcb = document.getElementById(idl);
- lcb.style.display = 'inline';
- }
- }
- </script>
-
-<?php
- echo " ";
- echo "<div class=\"float-br smaller\" valign='top'>";
- echo " user: " . $_SESSION["userid"];
- echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
- echo "<div class=\"float-r\"><img src=\"/fhiiqm/img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
-
-
- echo "<div align='center'>";
- if ($infid) $text = "editieren"; else $text = "erfassen";
- if ($copy) $duptext = " (Kopie)";
- echo "<h3>Information $text$duptext<h3>";
-
- echo "</div>\n";
-
- //Filename wenn Upload?
- if (isset($_FILES["ifile"]["error"]))
- foreach ($_FILES["ifile"]["error"] as $key => $err)
- if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
-
- if (!$ok || (!$sub && !$del && !$dup))
- {
- if ($infid && (!$sub || !$del) && !isset($inf))
- { // update
- $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
- i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,betrag,
- CONCAT(nachname,', ',vorname) AS aname
- FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
- ON i.persknr=m.persknr
- WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["infid"] = $infid;
- $inf["iname"] = $row->info_name_s;
- $inf["ilong"] = $row->info_name_l;
- $inf["cdat"] = $row->info_date;
- $inf["vdat"] = $row->info_valid_from;
- $inf["bdat"] = $row->info_valid_to;
- $inf["ityp"] = $row->infotyp_ID;
- $inf["persknr"] = $row->aname;
- $inf["pers"] = $row->persknr;
- $inf["infrel"] = $row->info_rel_ID;
-// $inf["ifname"] = $row->info_file;
- $inf["lang"] = $row->lang;
- $inf["fg"] = $row->info_freigabe_ID;
- $inf["sort"] = $row->info_sort;
- $inf["betr"] = str_replace('.',',',$row->betrag);
- }
- }
- // Produkt
- $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf['prid'][] = $row->produkt_ID;
- }
- }
- // Adressat
- $sql = "SELECT info_adr_ID FROM Info_Adressat WHERE info_id = $infid";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- $inf["adr"][] = $row->info_adr_ID;
- }
- // Verantwortlicher
- $sql = "SELECT iv.persknr,prioritaet, CONCAT (nachname, ', ',vorname)
- FROM Info_Verantwortlich iv INNER JOIN Mitarbeiter m ON iv.persknr=m.persknr
- WHERE info_id = $infid
- ORDER BY 3";
- if ($result = $dbc->queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["vpers"][] = $row->persknr;
-// $inf["prio"][] = $row->prioritaet;
- $inf["prio"][$row->persknr] = $row->prioritaet;
- }
- }
- // Dokumente
- $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($result = $dbc -> queryObjectArray($sql))
- {
- foreach ($result as $row)
- {
- $inf["ifname"][] = $row->if_filename;
- $inf["swort"][] = $row->if_schlagwort;
- }
- }
-// print_r($inf); echo "<br /><br />";
-
- }
- include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_form2.inc.php");
-/* if ($sub)
- {
- echo
- "<tr>
- <td>Upload Infodokument </td>
- <td><input type=\"file\" name=\"ifile\" size=\"50\" maxlength=\"50\" value=\"" .
- $_FILES["ifile"]["name"] . "\"/></td>
- </tr>";
-
- }
-*/
- if ($sub || $del)
- {
- if ($sub)
- $frage = "Alle Angaben ok?";
- elseif ($del)
- $frage = "Information wirklich löschen?";
- echo "<tr>
- <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
- <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
- if ($ok) echo "checked=\"checked\"";
- echo " /></td>\n</tr>\n";
- }
- if (!is_null($_SESSION["recht"]) && in_array("ie",$_SESSION["recht"]))
- {
- echo "
- <tr><td> </td>\n
- <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
- if ($infid)
- {
- echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
- echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
- }
- echo "</td></tr>\n";
- }
- echo "</table>\n";
- echo "</div>\n";
-// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
- echo "</form>\n";
- }
- else
- {
- echo "<div align='center'>\n";
-
- if ($del)
- { // loescht auch m:n - Tabellen wegen Loeschweitergabe
- $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
- $retdi = $dbc -> execute($sql);
- if ($retdi)
- {
- // alte Namen Infodocumente
- $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
- if ($res = $dbc -> queryObjectArray($sql))
- foreach ($res as $row)
- $ifile_old[] = $row->if_filename;
-
- include_once ("inc/file_upload.inc.php");
- foreach ($inf['ifname'] as $key => $filename)
- $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
- if ($retdf) echo "<p class='green'><b>Infodokumente zu ID '$infid' wurde gelöscht.</b></p>\n";
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen geloeschter Infodaten
- echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
- include ("inc/info_dat_show.inc.php");
- }
- else
- {
- echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
- echo "sql = $sql<br />";
- echo "error DELETE: " . $dbc->error . "<br />";
- }
- }
- else //INSERT oder UPDATE
- {
- //daten speichern
- $inf["iname"] = substr($inf["iname"],0,300);
- $inf["ilong"] = substr($inf["ilong"],0,8000);
- $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
- if ($inf["ityp"] == -1) $inf["ityp"] = null;
-
- if ($inf["persknr"] < "!") $inf["pers"] = null;
- if ($inf["infrel"] == -1) $inf["infrel"] = null;
- if ($inf["lang"] == -1) $inf["lang"] = null;
- if ($inf["ifname"] < "!") $inf["ifname"] = null;
-
- if ($inf["cdat"] == "") $inf["cdat"] = null;
- if ($inf["vdat"] == "") $inf["vdat"] = null;
- if ($inf["bdat"] == "") $inf["bdat"] = null;
- if ($inf["fg"] == -1) $inf["fg"] = null;
- if (isset($inf['betr']) && $inf['betr']) $betrag = dbformat_wert($inf['betr']); else $betrag = null;
-
- if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
-
- $stmt = $dbc -> stmtinit();
- if (is_object($stmt))
- {
- if ($infid)
- { //UPDATE
-
- $stmt -> prepare("UPDATE fhiiqm.Info SET
- info_name_s = ?,
- info_name_l = ?,
- info_date = ?,
- info_valid_from = ?,
- info_valid_to = ?,
- infotyp_ID = ?,
- persknr = ?,
- lang = ?,
- info_freigabe_ID = ?,
- info_sort = ?,
- info_rel_ID = ?,
- betrag = ? WHERE info_ID = $infid");
- $stmt -> bind_param('sssssiisisid',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag);
- $result = $stmt -> execute();
- if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
- }
- else
- { //INSERT
- $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
- infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,betrag) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)");
- $stmt -> bind_param('sssssiisisid', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag);
- $result = $stmt -> execute();
-
- if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
- if ($result)
- { // INSERT o.k.
- // info_ID ermitteln
- $infid = $dbc -> insertId();
- }
- }
- } // stmt-Objekt
- if ($result)
- {
- // upload Files
- if ($infid) include ("inc/info_file.inc.php");
- // n:m Tabellen INSERT
- if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
- }
- if ($result && $retf && $ret && $reta && $retp && $retv) // INSERT/UPDATE Info
- {
- //Eingabe Daten, Upload File erfolgreich
- echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
- echo "<br /><br />\n";
-
- // Anzeigen gespeicherte Infodaten
- include ("inc/info_dat_show.inc.php");
- }
- } // INSERT / UPDATE
- echo "</div>";
- echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
- echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Info erfassen\">Weitere Info erfassen</a></p>\n";
-
- } // Form o.k. und submit
-?>
-
-</body>
-</html>
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 02/2012
+ *
+ * INSERT,UPDATE Informationen ausser Betriebsanweisung, Betriebsstoerung
+ */
+
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ session_start();
+ if (! isset($_SESSION["userid"]))
+ {
+ include_once ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ login($_SERVER["PHP_SELF"]);
+ exit;
+ }
+
+ if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ir",$_SESSION["recht"]) && !in_array("ie",$_SESSION["recht"])))
+ {
+ header("Location: start.php");
+ exit;
+ }
+
+ $ityp = $_GET["t"];
+
+ $infid = $_GET["i"];
+
+ $zeil = $_GET["z"];
+ if (!$zeil) $zeil = 10; // Anzahl der gezeigten Zeilen
+ $start = $_GET["st"]; // Start bei DS $start+1
+ if (!$start) $start=0;
+ $sort = $_GET["s"]; // Sortierung nach Spalte
+ $dir = $_GET["d"]; // Sortierrichtung
+ $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird
+ $filter = $_GET["b"]; // Filterbegriff
+ // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor
+ $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil";
+
+ $del = $_POST["del"];
+ $sub = $_POST["eintragen"];
+ $dup = $_POST["dup"];
+ if (!$dup) $dup = $_GET["dp"];
+ $copy = $_GET["c"];
+ $inf = $_POST["inf"];
+ $ok = $_POST["ok"];
+ if (!$inf["okn"]) $ok = false;
+ $duptext="";
+
+// print_r($inf); echo "ok = $ok<br /><br />";
+
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+ include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+ $dbc = new dbconnection();
+
+ if ($dup)
+ { // Info duplizieren
+ $tab = "Info";
+ $key = "info_ID";
+ $val = $infid;
+// $ret=1;
+ $ret = duplicate_record ($tab, $key, $val);
+ if ($ret)
+ {
+ $infid_new=$ret;
+ // Infofilename loeschen
+ $sql = "UPDATE fhiiqm.Info SET info_file = NULL WHERE info_ID = $infid_new";
+ $retf = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error loeschen Info-File: " . $dbc->error . "</p>";
+
+ // duplizieren Produkte
+ $sql = "INSERT INTO Info_Produkt SELECT $infid_new,produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ $retp = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Produkt: " . $dbc->error . "</p>";
+
+ // duplizieren Adressat
+ $sql = "INSERT INTO Info_Adressat SELECT $infid_new,info_adr_ID FROM Info_Adressat WHERE info_ID = $infid";
+ $reta = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Adressat: " . $dbc->error . "</p>";
+
+ // duplizieren Verantwortliche
+ $sql = "INSERT INTO Info_Verantwortlich SELECT $infid_new,persknr,prioritaet FROM Info_Verantwortlich WHERE info_ID = $infid";
+ $retv = $dbc -> execute($sql);
+ if ($dbc->error) echo "<p class='red'>error copy Info_Verantwortlich: " . $dbc->error . "</p>";
+
+ if ($ret && $retf && $retp && $reta && $retv)
+ {
+ $addr = $_SERVER["PHP_SELF"] . "?i=$infid_new&c=1&$getp";
+ header("Location: $addr");
+ exit;
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+ else $duptext = " - Fehler beim Duplizieren von ". $inf["iname"];
+ }
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+ <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/>
+ <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/>
+<!--
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
+-->
+ <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
+ <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
+
+ <title>Edit Informationen</title>
+</head>
+
+<body>
+
+ <script>
+ $(document).ready(function() {
+ $("#titel").focus();
+ $("#persknr").autocomplete({
+ source: "/fhiiqm/inc/ma_list_ac.inc.php",
+ minLength: 2,
+ select: function(event,ui){$("#pid").val(ui.item.id);}
+ });
+ $("#cdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#vdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("#bdat").datepicker({
+ dateFormat: 'yy-mm-dd', //nur Datum
+ yearRange: '2000:2025',
+ changeMonth: true,
+ changeYear: true,
+ firstDay: 1,
+ dayNamesMin: ['So','Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ],
+ monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez']
+ });
+ $("input[id='persknr']").addClass("long20");
+ $("input[id='cdat']").addClass("long10");
+ $("input[id='vdat']").addClass("long10");
+ $("input[id='bdat']").addClass("long10");
+ });
+ function addInputf(divId,anz){
+ var cdiv = document.createElement('div');
+ var idl = "cbl_" + anz;
+ cdiv.innerHTML = "<span></span>Dok-Name <input name='inf[ifname][]' type='text' size='50' maxlength='50' value='' />";
+ cdiv.innerHTML += " Schlagwort <input type='text' name='inf[swort][]' size='30' maxlength='50' value='' />";
+ cdiv.innerHTML += "<img src='/fhiiqm/img/nixt.gif' border='0' height='100%' />";
+ //cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='vertrag[del][]' value='1'/></span>";
+ cdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='inf[del][]' value='1'/>";
+ cdiv.innerHTML += "<label id='lb' for='del'> löschen</label></span>";
+ cdiv.innerHTML += "<br />Upload-Dokument <input type='file' name='ifile[]' size='50' maxlength='50' value='' />";
+ document.getElementById(divId).appendChild(cdiv);
+ var delcb = document.getElementById('del');
+ delcb.id = "del_" + anz;
+ delcb.style.display = 'none';
+ var lcb = document.getElementById('lb');
+ lcb.id = "lb_" + anz;
+ lcb.setAttribute("for", delcb.id);
+ lcb.style.display = 'none';
+ counter++;
+ }
+ function markdelInput(divId,anz){
+ for (i=1; i<anz; i++)
+ {
+ var id = "del_" + i;
+ var delcb = document.getElementById(id);
+ delcb.style.display = 'inline';
+ var idl = "lb_" + i;
+ var lcb = document.getElementById(idl);
+ lcb.style.display = 'inline';
+ }
+ }
+ </script>
+
+<?php
+ echo " ";
+ echo "<div class=\"float-br smaller\" valign='top'>";
+ echo " user: " . $_SESSION["userid"];
+ echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+ echo "<div class=\"float-r\"><img src=\"/fhiiqm/img/document_image_ver.png\" border=\"0\" alt=\"Infodaten ändern\" title=\"Infodaten ändern\"/></div>\n";
+
+
+ echo "<div align='center'>";
+ if ($infid) $text = "editieren"; else $text = "erfassen";
+ if ($copy) $duptext = " (Kopie)";
+ echo "<h3>Information $text$duptext<h3>";
+
+ echo "</div>\n";
+
+ //Filename wenn Upload?
+ if (isset($_FILES["ifile"]["error"]))
+ foreach ($_FILES["ifile"]["error"] as $key => $err)
+ if ($err == 0 && !$inf["ifname"][$key]) $ok = $ok && false;
+
+ if (!$ok || (!$sub && !$del && !$dup))
+ {
+ if ($infid && (!$sub || !$del) && !isset($inf))
+ { // update
+ $sql = "SELECT info_ID,info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,infotyp_ID,
+ i.persknr,lang,info_file,info_rel_ID,info_freigabe_ID,info_sort,betrag,
+ CONCAT(nachname,', ',vorname) AS aname,i.timestamp,i.userid
+ FROM fhiiqm.Info i LEFT OUTER JOIN fhiiqm.Mitarbeiter m
+ ON i.persknr=m.persknr
+ WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["infid"] = $infid;
+ $inf["iname"] = $row->info_name_s;
+ $inf["ilong"] = $row->info_name_l;
+ $inf["cdat"] = $row->info_date;
+ $inf["vdat"] = $row->info_valid_from;
+ $inf["bdat"] = $row->info_valid_to;
+ $inf["ityp"] = $row->infotyp_ID;
+ $inf["persknr"] = $row->aname;
+ $inf["pers"] = $row->persknr;
+ $inf["infrel"] = $row->info_rel_ID;
+// $inf["ifname"] = $row->info_file;
+ $inf["lang"] = $row->lang;
+ $inf["fg"] = $row->info_freigabe_ID;
+ $inf["sort"] = $row->info_sort;
+ $inf["betr"] = str_replace('.',',',$row->betrag);
+ $inf["tstmp"] = $row->timestamp;
+ $inf["uid"] = $row->userid;
+ }
+ }
+ // Produkt
+ $sql = "SELECT produkt_ID FROM Info_Produkt WHERE info_ID = $infid";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf['prid'][] = $row->produkt_ID;
+ }
+ }
+ // Adressat
+ $sql = "SELECT info_adr_ID FROM Info_Adressat WHERE info_id = $infid";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ $inf["adr"][] = $row->info_adr_ID;
+ }
+ // Verantwortlicher
+ $sql = "SELECT iv.persknr,prioritaet, CONCAT (nachname, ', ',vorname)
+ FROM Info_Verantwortlich iv INNER JOIN Mitarbeiter m ON iv.persknr=m.persknr
+ WHERE info_id = $infid
+ ORDER BY 3";
+ if ($result = $dbc->queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["vpers"][] = $row->persknr;
+// $inf["prio"][] = $row->prioritaet;
+ $inf["prio"][$row->persknr] = $row->prioritaet;
+ }
+ }
+ // Dokumente
+ $sql = "SELECT if_filename, if_schlagwort FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($result = $dbc -> queryObjectArray($sql))
+ {
+ foreach ($result as $row)
+ {
+ $inf["ifname"][] = $row->if_filename;
+ $inf["swort"][] = $row->if_schlagwort;
+ }
+ }
+// print_r($inf); echo "<br /><br />";
+
+ }
+ include($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/info_form2.inc.php");
+/* if ($sub)
+ {
+ echo
+ "<tr>
+ <td>Upload Infodokument </td>
+ <td><input type=\"file\" name=\"ifile\" size=\"50\" maxlength=\"50\" value=\"" .
+ $_FILES["ifile"]["name"] . "\"/></td>
+ </tr>";
+
+ }
+*/
+ if ($sub || $del)
+ {
+ if ($sub)
+ $frage = "Alle Angaben ok?";
+ elseif ($del)
+ $frage = "Information wirklich löschen?";
+ echo "<tr>
+ <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+ <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+ if ($ok) echo "checked=\"checked\"";
+ echo " /></td>\n</tr>\n";
+ }
+ if (!is_null($_SESSION["recht"]) && in_array("ie",$_SESSION["recht"]))
+ {
+ echo "
+ <tr><td> </td>\n
+ <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />";
+ if ($infid)
+ {
+ echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />";
+ echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
+ }
+ echo "</td></tr>\n";
+ }
+ echo "</table>\n";
+ echo "</div>\n";
+// if (!is_null($_SESSION["recht"]) && !in_array("le", $_SESSION["recht"]))
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">« zur Infoliste</a></p>\n";
+ echo "</form>\n";
+ }
+ else
+ {
+ echo "<div align='center'>\n";
+
+ if ($del)
+ { // loescht auch m:n - Tabellen wegen Loeschweitergabe
+ $sql = "DELETE FROM Info WHERE info_ID = '$infid'";
+ $retdi = $dbc -> execute($sql);
+ if ($retdi)
+ {
+ // alte Namen Infodocumente
+ $sql = "SELECT if_filename FROM Info_File WHERE info_ID = $infid ORDER BY if_ID";
+ if ($res = $dbc -> queryObjectArray($sql))
+ foreach ($res as $row)
+ $ifile_old[] = $row->if_filename;
+
+ include_once ("inc/file_upload.inc.php");
+ foreach ($inf['ifname'] as $key => $filename)
+ $retdf = $retdf && mod_file("/var/www/fhiiqm/infos",$infid,"","del",$ifile_old[$key]); // Loeschen alte Datei
+ if ($retdf) echo "<p class='green'><b>Infodokumente zu ID '$infid' wurde gelöscht.</b></p>\n";
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden gelöscht.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen geloeschter Infodaten
+ echo "<p class='green'><b>DELETE: Daten zu '".$inf["iname"]."' wurden erfolgreich gelöscht.</b></p>\n";
+ include ("inc/info_dat_show.inc.php");
+ }
+ else
+ {
+ echo "<p class='red'><b>DELETE: Daten zu '".$inf["iname"]."' konnten nicht gelöscht werden!</b></p>\n";
+ echo "sql = $sql<br />";
+ echo "error DELETE: " . $dbc->error . "<br />";
+ }
+ }
+ else //INSERT oder UPDATE
+ {
+ //daten speichern
+ $userid = $_SESSION["userid"];
+ $inf["iname"] = substr($inf["iname"],0,300);
+ $inf["ilong"] = substr($inf["ilong"],0,8000);
+ $inf["sort"] = substr($inf["sort"],0,10); // 28.03.2012 5 -> 10 Zeichen
+ if ($inf["ityp"] == -1) $inf["ityp"] = null;
+
+ if ($inf["persknr"] < "!") $inf["pers"] = null;
+ if ($inf["infrel"] == -1) $inf["infrel"] = null;
+ if ($inf["lang"] == -1) $inf["lang"] = null;
+ if ($inf["ifname"] < "!") $inf["ifname"] = null;
+
+ if ($inf["cdat"] == "") $inf["cdat"] = null;
+ if ($inf["vdat"] == "") $inf["vdat"] = null;
+ if ($inf["bdat"] == "") $inf["bdat"] = null;
+ if ($inf["fg"] == -1) $inf["fg"] = null;
+ if (isset($inf['betr']) && $inf['betr']) $betrag = dbformat_wert($inf['betr']); else $betrag = null;
+
+ if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+
+ $stmt = $dbc -> stmtinit();
+ if (is_object($stmt))
+ {
+ if ($infid)
+ { //UPDATE
+
+ $stmt -> prepare("UPDATE fhiiqm.Info SET
+ info_name_s = ?,
+ info_name_l = ?,
+ info_date = ?,
+ info_valid_from = ?,
+ info_valid_to = ?,
+ infotyp_ID = ?,
+ persknr = ?,
+ lang = ?,
+ info_freigabe_ID = ?,
+ info_sort = ?,
+ info_rel_ID = ?,
+ betrag = ?,
+ userid = ?
+ WHERE info_ID = $infid");
+ $stmt -> bind_param('sssssiisisids',$inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag,$userid);
+ $result = $stmt -> execute();
+ if ($stmt->error) echo "error UPDATE Info: " . $stmt->error . "<br><br>\n";
+ }
+ else
+ { //INSERT
+ $stmt -> prepare ("INSERT INTO Info (info_name_s,info_name_l,info_date,info_valid_from,info_valid_to,
+ infotyp_ID,persknr,lang,info_freigabe_ID,info_sort,info_rel_ID,betrag,userid) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)");
+ $stmt -> bind_param('sssssiisisids', $inf["iname"],$inf["ilong"],$inf["cdat"],$inf["vdat"],$inf["bdat"],$inf["ityp"],$inf["pers"],$inf["lang"],$inf["fg"],$inf["sort"],$inf["infrel"],$betrag,$userid);
+ $result = $stmt -> execute();
+
+ if ($stmt->error) echo "error INSERT Info: " . $stmt->error . "<br><br>\n";
+ if ($result)
+ { // INSERT o.k.
+ // info_ID ermitteln
+ $infid = $dbc -> insertId();
+ }
+ }
+ } // stmt-Objekt
+ if ($result)
+ {
+ // upload Files
+ if ($infid) include ("inc/info_file.inc.php");
+ // n:m Tabellen INSERT
+ if ($ret && $retf) include ("inc/info_tab_ins.inc.php");
+ }
+ if ($result && $retf && $ret && $reta && $retp && $retv) // INSERT/UPDATE Info
+ {
+ //Eingabe Daten, Upload File erfolgreich
+ echo "<p class='green'><b>Infodaten zu ID '$infid' wurden erfolgreich gespeichert.</b></p>\n";
+ echo "<br /><br />\n";
+
+ // Anzeigen gespeicherte Infodaten
+ include ("inc/info_dat_show.inc.php");
+ }
+ } // INSERT / UPDATE
+ echo "</div>";
+ echo "<p class='sc'> <a href=\"info_flist.php?$getp\" target=\"_self\" title=\"Infoliste\">Infoliste</a></p>\n";
+ echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Info erfassen\">Weitere Info erfassen</a></p>\n";
+
+ } // Form o.k. und submit
+?>
+
+</body>
+</html>