fhiiqm/anlage_ed.php
changeset 19 33ee23fafd4d
child 20 5877137431e4
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/anlage_ed.php	Fri Dec 09 14:33:22 2011 +0100
@@ -0,0 +1,234 @@
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 11/2011
+ */
+
+    error_reporting(E_ALL ^ E_NOTICE);
+    
+    session_start();
+    if (! isset($_SESSION["userid"]))
+    { 
+        include_once ("inc/func_lib.inc.php");	
+        login($_SERVER["PHP_SELF"]);
+        exit;
+    }
+    
+    if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("ar",$_SESSION["recht"]) && !in_array("ae",$_SESSION["recht"])))
+    {
+        header("Location: start.php");
+        exit;
+    }    
+    
+    include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php");
+    if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
+?>
+
+<!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 type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" />	
+    <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>
+    <title>Anlage</title>
+ </head>
+ 
+ <body>
+
+<?php
+    echo "&nbsp;";  
+    echo "<div class=\"float-br smaller\" valign='top'>";
+    echo "&nbsp;&nbsp;&nbsp;user: " . $_SESSION["userid"];
+    echo "&nbsp;&nbsp;&nbsp;<a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
+    echo "<div class=\"float-r\"><img src=\"img/rotate_01.png\" border=\"0\" alt=\"Anlage\" title=\"Anlage\"/></div>\n";
+?>
+
+    <div align='center'>
+
+    <script>
+      $(document).ready(function() {
+        $("#albez").focus();
+        $("#persknr").autocomplete({
+                source: "/fhiiqm/inc/ma_list_ac.inc.php",
+    			minLength: 2,
+                select: function(event,ui){$("#pid").val(ui.item.id);}
+    		});
+        $("input").persknr("long20").addClass("long20");
+        });
+    </script>
+
+    <?php
+        $al     = $_POST["al"];
+        $alid   = $_GET["i"];
+        $sub    = $_POST["eintragen"];
+        $del    = $_POST["del"];
+    	$ok		= $_POST["ok"];
+        if (!$al['okn']) $ok=false;
+//        print_r($al);
+        
+        if ($alid) $text = "editieren"; else $text = "erfassen";
+        echo "<h3>Anlage $text<h3>";
+        
+        echo "</div>\n";
+        
+        if (!$ok || (!$sub && !$del))
+        {
+            if ($alid && (!$sub || !$del) && !isset($al))
+            { // update
+                $sql = "SELECT al_ID,al_bez,al_beschreibung,al_kat_ID,al_befgrad_ID,al_pruefart_ID,al_pruefintv_ID,
+                            a.raum_ID,geb_ID,a.persknr, CONCAT(nachname,', ',vorname) AS vname 
+                        FROM `fhiiqm`.`Anlage` a LEFT OUTER JOIN fhiiqm.Mitarbeiter m ON 
+                            a.persknr = m.persknr  LEFT OUTER JOIN fhiiqm.Raum r ON
+                            a.raum_ID=r.raum_ID
+                        WHERE al_ID = $alid";
+                if ($result = $dbc -> queryObjectArray($sql))
+                {
+                    foreach ($result as $row)
+                    {
+                        $al["bez"]  = $row->al_bez;
+                        $al["beschr"]   = $row->al_beschreibung;
+                        $al["kat"]  = $row->al_kat_ID;
+                        $al["befg"] = $row->al_befgrad_ID;
+                        $al["part"] = $row->al_pruefart_ID;
+                        $al["pintv"] = $row->al_pruefintv_ID;
+                        $al["geb"] = $row->geb_ID;
+                        $al["raum"] = $row->raum_ID;
+                        $al["pid"]  = $row->persknr;
+                        $al["persknr"] = $row->vname;
+                     }
+                 } 
+                        
+            }
+            include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/anlage_form.inc.php");     
+            if ($sub || $del)
+    		{
+    		  	if ($sub)
+                    $frage = "Alle Angaben ok?";
+                elseif ($del)
+                    $frage = "Anlage wirklich l&ouml;schen?";
+    			echo "<tr>
+    			  <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
+    			        <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
+    			        if ($ok)  echo "checked"; 
+    			echo "></td>\n</tr>\n"; 
+    		}
+            if (!is_null($_SESSION["recht"]) && in_array("ae",$_SESSION["recht"]))
+            {
+                echo "
+               	<tr><td>&nbsp;</td>\n
+                	<td><input  class=\"button\" type=\"submit\" name=\"eintragen\" value=\"  eintragen  \" />";
+                if ($alid)
+                    echo "&nbsp;&nbsp;&nbsp;<input class=\"button\" type=\"submit\" value=\"l&ouml;schen\" name=\"del\" title=\"delete\" />";
+               	echo "</td></tr>\n";
+            }
+            echo "</table>\n";
+            echo "</div>\n";
+            if (!is_null($_SESSION["recht"]) && !in_array("ae", $_SESSION["recht"]))
+                echo "<p>&nbsp;&nbsp;&nbsp;<a href=\"anlage_flist.php\" target=\"_self\" title=\"Anlagen\">&laquo; zur Anlagenliste</a></p>\n"; 
+            echo "</form>\n";   
+
+        }
+        else
+        {            
+            echo "<div align='center'>\n";
+            
+            if ($del)
+            {
+                // sind Pruefprotokolle vorhanden zu alid?
+                $sql = "SELECT alp_ID FROM `fhiiqm`.`A_Pruefung` WHERE al_ID=$alid";
+                $result = $dbc -> queryObjectArray($sql);
+//                print_r ($result);
+                // Anlage loeschen
+                $sql = "DELETE FROM Anlage WHERE al_ID = $alid";
+                $retad = $dbc -> execute($sql);
+                if ($retad)
+                {
+                    echo "<p class='green'><b>DELETE: Daten  zu '".$al["bez"]."' wurden erfolgreich gel&ouml;scht.</b></p>\n";
+                    {
+                        if ($result) // vorhandene Protokolle auf Server physisch loeschen
+                        {
+                            include ("inc/file_upload.inc.php");
+                            foreach ($result as $row)
+                            {
+                                $retdf  = mod_file("/var/www/fhiiqm/alprot",$row->alp_ID,"","del");  // Loeschen Protokoll
+                                if (!$retdf) $strpdel .= ",".$row->alp_ID;
+                            }
+                        }
+                    }
+                    if ($strpdel > "") 
+                        echo "<p class='red><b>Pruefprotokoll(e) zu '".$al["bez"]."' mit ID(s)" . substr($strpdel,1) . "konnte(n) nicht gel&ouml;scht werden!</b></p>\n";
+                    else 
+                        echo "<p class='green'><b>Pruefprotokolle zu '".$al["bez"]."' wurden gel&ouml;scht (Server u. DB).</b></p>\n";
+                    include ("inc/anlage_dat_show.inc.php");
+                }                    
+                else
+                    echo "<p class='red'><b>DELETE: Daten  zu '".$al["bez"]."' konnten nicht gel&ouml;scht werden!</b></p>\n";
+            }
+            else //INSERT oder UPDATE
+            {
+                if ($al["beschr"]) $al["beschr"] = substr($al["beschr"],0,250); else $al["beschr"] = null;
+                if ($al["kat"]== -1) $al["kat"] = null;
+                if ($al["befg"]== -1) $al["befg"] = null;
+                if ($al["part"]== -1) $al["part"] = null;
+                if ($al["pintv"]== -1) $al["pintv"] = null;
+                if ($al["raum"]== -1) $al["raum"] = null;
+                $stmt = $dbc -> stmtinit();
+                if (is_object($stmt))
+                {
+                    if ($alid)
+                    {
+                        //edit
+                        $stmt -> prepare("UPDATE fhiiqm.Anlage SET
+                                    al_bez = ?,
+                                    al_beschreibung = ?,
+                                    al_kat_ID = ?,
+                                    al_befgrad_ID = ?,
+                                    al_pruefart_ID = ?,
+                                    al_pruefintv_ID = ?,
+                                    raum_ID = ?,
+                                    persknr = ? 
+                                    WHERE al_ID = $alid");
+                        $stmt -> bind_param('sssssiii',$al["bez"],$al["beschr"],$al["kat"],$al["befg"],$al["part"],$al["pintv"],$al["raum"],$al["pid"]);
+                        $res = $stmt -> execute();
+    //                            print_r($stmt);
+                        if ($stmt->error) echo "UPDATE Anlage, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
+                        if ($res)
+                            echo "<p class='green'><b>UPDATE: Daten  zu '".$al["bez"]."' wurden erfolgreich gespeichert.</b></p>\n";
+                        else
+                            echo "<p class='red'><b>UPDATE: Daten  zu '".$al["bez"]."' konnten nicht gespeichert werden!</b></p>\n";
+                    }
+                    else
+                    {
+                        //insert
+                        $stmt -> prepare("INSERT INTO fhiiqm.Anlage (al_bez, al_beschreibung, al_kat_ID, al_befgrad_ID, al_pruefart_ID, al_pruefintv_ID, raum_ID, persknr) 
+                                    VALUES (?,?,?,?,?,?,?,?)");
+                        $stmt -> bind_param('sssssiii',$al["bez"],$al["beschr"],$al["kat"],$al["befg"],$al["part"],$al["pintv"],$al["raum"],$al["pid"]);
+                        $res = $stmt -> execute();
+    //                    $res = 1;
+                        if ($stmt->error) echo "INSERT Anlage, error: " . $stmt->errno . " - ". $stmt->error . "<br><br>\n";
+                        if ($res)
+                        {
+                            // anlagen_ID ermitteln
+                            $alid = $dbc -> insertId();
+                            echo "<p class='green'><b>INSERT: Daten  zu '".$al["bez"]."' wurden erfolgreich gespeichert.</b></p>\n";
+                        }    
+                        else
+                            echo "<p class='red'><b>INSERT: Daten  zu '".$al["bez"]."' konnten nicht gespeichert werden!</b></p>\n";
+                    }
+                    if ($res) include ("inc/anlage_dat_show.inc.php");
+                }
+            }
+            echo "</div>\n";       
+            echo "<p>&nbsp;&nbsp;&nbsp;<a href=\"anlage_flist.php\" target=\"_self\" title=\"Anlagen\">Anlagenenliste</a>\n";    
+            echo "&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;<a href=\"anlage_ed.php\" target=\"_self\" title=\"Anlage erfassen\">Weitere Anlage erfassen</a></p>";    
+            echo "<p>&nbsp;&nbsp;&nbsp;<a href=\"/fhiiqm/alpruef_flist.php\" target=\"_self\" title=\"Anlagenpruefung-Liste\" class=\"sc\">Liste Anlagenpr&uuml;fungen</a>";    
+            echo "&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;<a href=\"/fhiiqm/alpruef_ed.php\" target=\"_self\" title=\"Anlagenpruefung erfassen\" class=\"sc\">Anlagenpr&uuml;fung erfassen</a></p>\n";    
+        }      
+
+ ?>
+ </body>
+ </html>