fhiiqm/raum_aptyp_ed.php
author Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
Fri, 08 Jun 2012 15:04:22 +0200
changeset 27 d92bbe898f32
parent 26 3c1e3ac7089f
child 33 f1a8785434e4
permissions -rw-r--r--
+ aptyp-Gef?hrdung, fkt_ma_report, Korrekturen

<?php

/**
 * @author Bettina Schwarzer, Fritz-Haber-Institut
 * @copyright 04/2012
 * 
 * INSERT/UPDATE Raum - Arbeitsplatztyp
 */

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

	include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
	if (!isset($dbc) || !$dbc) $dbc = new dbconnection();

    $sub = $_POST["eintragen"];
    $ap  = $_POST["ap"];
    $ok  = $_POST["ok"];
    $apid = $_GET["i"]; // raum_ID
    


?>
<!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>Raum - Arbeitsplatztyp</title>

    <script type="text/javascript">
    <!--
    var counter = 0;
    var limit = 99;
    var arr = new Array();
    function addInput(divName){
         if (counter == limit)  {
              alert("Das Limit von " + counter + " zusätzlichen inputs ist erreicht");
         }
         else {
              var newdiv = document.createElement('div');
              var count;
              var opt="<option value='-1'></option>";
              for (var key in arr)  
              {
                opt = opt.concat("<option value='",key,"'>",key, " - ",arr[key],"</option>\n" );
              }
              opt += "</select>\n";
              newdiv.innerHTML += "<select name='ap[aptyp][]'>"+opt;
              document.getElementById(divName).appendChild(newdiv);
              counter++;
         }
    }
    function delInput(divId){
            var kn = document.getElementById(divId); 
            while (kn.childNodes.length>0 && kn.lastChild.nodeName != "SELECT" && kn.lastChild.nodeName != "A")
            {
//                alert ("vor "+kn.lastChild.nodeName+", nodetyp = "+ kn.lastChild.nodeType);
                var knc = kn.lastChild;
                    document.getElementById(divId).removeChild(knc);
            }
            if (kn.lastChild.nodeName == "SELECT") document.getElementById(divId).removeChild(kn.lastChild);
    }
    //-->
    </script>

</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/house.png\" border=\"0\" alt=\"Raum - Arbeitsplatztyp bearbeiten\" title=\"Raum - Arbeitsplatztyp bearbeiten\"/></div>\n";

    if ($apid) $text = "editieren"; else $text = "erfassen";
    if ($copy) $duptext = " (Kopie)";
    echo "<div align=\"center\">";
    echo "<h3>Raum - Arbeitsplatztypen $text</h3>";
    echo "</div>\n";
    if (!$sub || !isset($ap) || !$ok) 
    {
        if ($apid && !$sub && !isset($ap))
        {
            $sql = "SELECT geb_ID, r.raum_ID,a.arbplatz_typ
                    FROM Raum_Arbplatz_Typ a RIGHT OUTER JOIN Raum r ON a.raum_ID = r.raum_ID
                    WHERE r.raum_ID = $apid
                    ORDER BY a.arbplatz_typ";
            if ($res = $dbc -> queryObjectArray($sql))
            {
                foreach ($res as $row)
                {
                    $ap["geb"] = $row->geb_ID;
                    $ap["raum"] = $row->raum_ID;
                    $ap["aptyp"][] = $row->arbplatz_typ;
                }
            }
        }

        include ($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/form/raum_aptyp_form.inc.php");
        
	  	if ($sub)
        {
            $frage = "Alle Angaben ok?";
			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("re",$_SESSION["recht"]))
        {
            echo "
           	<tr><td>&nbsp;</td>\n
            	<td><input  class=\"button\" type=\"submit\" name=\"eintragen\" value=\"  eintragen  \" />";
           	echo "</td></tr>\n";
        }
    echo "</table>\n";
        echo "</div>\n";
    echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"raum_aptyp_flist.php\" target=\"_self\" title=\"Raum-Arbplatztyp-Liste\">&laquo; zur Raum-Arbplatztyp-Liste</a></p>\n"; 
    echo "</form>\n";
    }
    else
    {
//        print_r($ap); print("<br />");
        echo "<div align='center'>\n";

        if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
        
        $stmt = $dbc -> stmtinit();
        if (is_object($stmt))
        {
            $retd = 1;
            if ($apid && is_array($ap['aptyp']))
            {   //UPDATE
                // Loeschen alte Arbeitsplatztypen
                $retd = $dbc -> execute("DELETE FROM Raum_Arbplatz_Typ WHERE raum_ID = ". $ap["raum"]);
            }
            
            if ($retd && is_array($ap['aptyp']))
            {
                $rett = 1;
                $stmt -> prepare("INSERT INTO Raum_Arbplatz_Typ (raum_ID,arbplatz_typ) VALUES(?,?)");
                for ($k=0; $k<count($ap["aptyp"]); $k++)
                {
                    if ($ap["aptyp"][$k] && $ap["aptyp"][$k] != -1) 
                    {
                        $stmt -> bind_param('is',$ap["raum"], $ap["aptyp"][$k]);
                        $rett = $stmt -> execute();
                        if (!$rett) $rett = false;
                    }
                }
                if (!$rett) echo "error INSERT Arbeitsplatz-Typ: $stmt->error<br />\n";
                
            }
        }
            if ($rett)
            {
                echo "<p class='green'><b>Arbeitsplatztypen für Raum-ID '$apid' wurden erfolgreich gespeichert.</b></p>\n";
                include ("inc/raum_aptyp_dat_show.inc.php");
            }   
            else
                echo "<p class='red'><b>Arbeitsplatztypen für Raum-ID '$apid'' wurden nicht oder nur teilweise gespeichert</b></p>\n";
        
        echo "</div>";
        echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"raum_aptyp_flist.php\" target=\"_self\" title=\"Raum-Arbplatztyp-Liste\">&laquo; zur Raum-Arbplatztyp-Liste</a></p>\n"; 
    }
?>

</body>
</html>