fhiiqm/keytyp_del_dep.php
author Bettina Schwarzer
Fri, 05 Feb 2016 14:03:40 +0100
changeset 44 d652bbba2d43
parent 39 4ce411ed28b6
permissions -rw-r--r--
fhiiqm: achilleus -> db2, Korrekturen

<?php

/**
 * @author Bettina Schwarzer, Fritz-Haber-Institut
 * @copyright 07/2013
 * 
 * Keytyp Depot - delete
 */

    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("kr",$_SESSION["recht"]) && !in_array("ke",$_SESSION["recht"])))
    {
        header("Location: start.php");
        exit;
    }    

	include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
	if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
    
    // zulaessige Depots
    $uid = $_SESSION["userid"];
    $sql = "SELECT depot_ID,edit FROM KeyDepot_userweb WHERE userid = '$uid'";
    $res = $dbc -> queryObjectArray($sql);
    foreach ($res as $row)
        if ($row->edit) $adep[] = $row->depot_ID;

    $del = $_POST["del"];
    $ky  = $_POST["ky"];
    $ok  = $_POST["ok"];

?>

<!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"/> 
	<title>Keytyp Depot entfernen</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/key.png\" border=\"0\" alt=\"Keytyp transferieren\" title=\"Depotverwaltung Schl&uuml;sseltyp\"/></div>\n";

    echo "<div align=\"center\">";
    echo "<h3>Schl&uuml;sseltyp aus Depot l&ouml;schen</h3>";
    echo "</div>\n";
    
    if (!$ok || !$del)
    {
?>
        <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_key">
        <div align="center">
        <p>Löschbar sind nur Schlüsseltypen, deren Depot-Bestand = 0 ist. </p>
    
        <?php
            if ($err) echo "<p class='red'>$err</p>\n";
        ?>
        <table width="40%" border="0" cellspacing="3" cellpadding="3">
    
            <tr>
                <td>Depot</td><td>Schl&uuml;sseltyp</td>
            </tr>
            <tr>
                <td><select name="ky[dep]" onchange="this.form.submit();">
                    <?php
                        $strdep = "'". implode("','",$adep) ."'";
                        $sql = "SELECT * FROM fhiiqm.KeyDepot WHERE depot_ID IN ($strdep)";
                        if ($res = $dbc -> queryObjectArray($sql))
                            foreach ($res as $row)
                            {
                               if (!$ky['dep'] && !$beg)  $ky['dep'] = $row->depot_ID;
                               if ($row->depot_ID == $ky['dep']) $select = "selected='selected'"; else $select = "";
    					       echo "<option $select value=\"$row->depot_ID\">$row->depot_ID: $row->depot_bez</option>\n";
                               $beg=1;
                            }
                        $beg=0;
                    ?>
                </select>
                </td>
                <td><select name="ky[kt]" onchange="this.form.submit();">
                    <?php
                        $sql = "SELECT key_level,d.keytyp_ID,keytyp_bez,
                                    SUM(CASE WHEN depot_action='get' THEN IFNULL(depot_anz,0) ELSE 0 END) - SUM(CASE WHEN depot_action='out' THEN IFNULL(depot_anz,0) ELSE 0 END) - SUM(CASE WHEN depot_action='lost' THEN IFNULL(depot_anz,0) ELSE 0 END) AS bestand
                                    FROM fhiiqm.Keytyp_Depot d INNER JOIN Keytyp k ON d.keytyp_ID=k.keytyp_ID 
                                    WHERE depot_ID = '" . $ky['dep'] . "'
                                GROUP BY key_level,d.keytyp_ID,keytyp_bez
                                HAVING SUM(CASE WHEN depot_action='get' THEN IFNULL(depot_anz,0) ELSE 0 END) - SUM(CASE WHEN depot_action='out' THEN IFNULL(depot_anz,0) ELSE 0 END) - SUM(CASE WHEN depot_action='lost' THEN IFNULL(depot_anz,0) ELSE 0 END) = 0";
                        if ($res = $dbc -> queryObjectArray($sql))
                            foreach ($res as $row)
                            {
                               if (!$ky['kt'] && !$beg)
                                    $ky['kt'] = $row->keytyp_ID;
                               if ($row->keytyp_ID == $ky['kt']) $select = "selected='selected'"; else $select = "";
    					       echo "<option $select value=\"$row->keytyp_ID\">$row->key_level - $row->keytyp_ID [$row->keytyp_bez] ($row->bestand)</option>\n";
                               $beg=1;
                            }
                        $beg=0;
                    ?>
                </select>
                </td>
            </tr>
        <?php
	  	if ($del)
        {
            $frage = "Schl&uuml;sseltyp 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=\"checked\""; 
			echo " /></td>\n</tr>\n";
        }
        if (!is_null($_SESSION["recht"]) && in_array("ke",$_SESSION["recht"]) && in_array("FHI",$adep))
        {
            echo "
           	<tr><td>&nbsp;</td><td><input class=\"buttonr\" type=\"submit\" value=\"l&ouml;schen\" name=\"del\" title=\"delete\" /></td></tr>\n";
        }
        echo "</table>\n";
        echo "</div>\n";
        echo "</form>\n";
  }
  else
  {
//        print_r($ky);
        echo "<div align='center'>\n";
        $stmt = $dbc -> stmtinit();
        if (is_object($stmt))
        {
            $stmt -> prepare("DELETE FROM Keytyp_Depot WHERE depot_ID =? AND keytyp_ID = ?");
            $stmt -> bind_param('ss',$ky["dep"], $ky["kt"]);
            $result = $stmt -> execute();
            if ($result)
                echo "<p class='green'><b>Schl&uuml;sseltyp '" . $ky["kt"] . "' wurde erfolgreich aus Depot '" . $ky["dep"] ."' gel&ouml;scht.</b> (" . $stmt->affected_rows ." Eintr&auml;ge)</p>";
            else
            {
                echo "<p class='red'><b>L&ouml;schen von Schl&uuml;sseltyp '" . $ky["kt"] . "' aus Depot '" . $ky["dep"] ."' ist fehlgeschlagen!</b></p>";
                echo $stmt -> error;
            }                
            echo "<br /><br />\n";                
        }
        echo "</div>\n";
        echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Depot-Delete\">Weiteren Schl&uuml;sseltyp aus Depot l&ouml;schen</a></p>\n";    
  }      
        ?>

</body>
</html>