<?php
/**
* @author Bettina Schwarzer, Fritz-Haber-Institut
* @copyright 07/2013
*
* Liste User - Keytyp_Depot
*
*/
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();
// userid: Depot 'FHI', 'edit' = 1 -> Keytyp bearbeitbar
$redit = 0;
$uid = $_SESSION["userid"];
$sql = "SELECT edit FROM KeyDepot_userweb WHERE depot_ID = 'FHI' AND userid = '$uid'";
$redit = $dbc -> querySingleItem($sql);
$sub = $_POST["eintragen"];
$ky = $_POST["ky"];
$okn = $ky["okn"];
$ok = $_POST["ok"];
// if (!$okn) $ok=0;
$udid = $_GET["u"]; // user Depot
if ($ky["userid"]) $udid = $ky["userid"];
//print_r($ky); echo "udid=$udid, sub=$sub<br />";
?>
<!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-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>Keytyp-user bearbeiten</title>
</head>
<body>
<script>
//<--
var counter = 0;
var adep = new Array();
function addInput(divId,anz){
var newdiv = document.createElement('div');
var opt = "";
var i;
for (var key in adep)
{
opt = opt.concat("<option value='",key,"'>",adep[key],"</option>\n" );
}
opt += "</select>\n";
newdiv.innerHTML = "<span></span><select name='ky[dep][]'>"+opt;
newdiv.innerHTML += " Korrektur/Transfer <input type='checkbox' name='ky[ed][" + (counter+1) + "]' value='1' />";
newdiv.innerHTML += "<span id='cbl'> <input type='checkbox' id='del' name='ky[del][]' value='1'/>";
newdiv.innerHTML += "<label id='lb' for='del'> <i>löschen</i></label></span>\n";
document.getElementById(divId).appendChild(newdiv);
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=\"img/key.png\" border=\"0\" alt=\"Keytyp-user bearbeiten\" title=\"Schlüsseltyp-Nutzer bearbeiten\"/></div>\n";
if ($redit)
if ($udid) $text = "editieren"; else $text = "erfassen";
else $text = "Ansicht";
echo "<div align=\"center\">";
echo "<h3>Schlüsseltyp-Depot Verwalter und Rechte $text</h3>";
echo "</div>\n";
if (!$sub || !isset($ky) || !$ok)
{
if ($udid && !$sub)
{
if (!$ky["userid"]) $ky["userid"] = $udid;
$ky["dep"] = null; $ky["ed"] = null;
$sql = "SELECT depot_ID,edit FROM KeyDepot_userweb WHERE userid = '$udid'";
$result = $dbc -> queryObjectArray($sql);
foreach ($result as $row)
{
$ky["dep"][] = $row->depot_ID;
$ky["ed"][] = $row->edit;
}
}
?>
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_depotma" id="f_depotma" target="_self">
<div align="center">
<table width="50%" border="0" cellspacing="3" cellpadding="3">
<tr>
<td>Mitarbeiter</td>
<td><select name="ky[userid]" size="1" <?php if (!$sub) echo "onchange=\"this.form.submit();\""; ?>>
<?php
$okn = true;
$select = ( "-1"==$ky['userid'] ) ? " selected='selected'" : "";
echo "<option $select value=\"-1\"></option>\n";
$sql = "SELECT u.userid, CONCAT (nachname, ', ',vorname, ', ' , IFNULL(abt_name,''),' (',CASE aktiv WHEN 0 THEN 'inaktiv' ELSE 'aktiv' END, ')') AS nvname
FROM userweb u
INNER JOIN Mitarbeiter m ON u.persknr=m.persknr
LEFT OUTER JOIN user_recht r ON u.userid=r.userid
LEFT OUTER JOIN Abteilung a ON m.abt_tel=a.abt_ID
WHERE recht_ID = 'ke'";
if ($result = $dbc->queryObjectArray($sql))
{
foreach ($result as $row)
{
// if (!$ky['userid'] && !$beg) $ky['userid'] = $row->userid;
if ($row->userid == $ky['userid'])
echo "<option selected='selected' value=\"$row->userid\">$row->nvname</option>\n";
else
echo "<option value=\"$row->userid\">$row->nvname</option>\n";
// $beg = 1;
}
}
echo "</select>\n";
/*
if (isset($ky['userid']) && $ky['userid']== "-1")
{
echo "<br><span class=\"red\">Mitarbeiter ist erforderlich!</span>\n";
$okn = false;
}
*/
?>
</td>
</tr>
<tr><td>Depot</td>
<td valign="top">
<div id="adddep">
<select name="ky[dep][]">
<?php
if (isset($ky['dep'])) $anzdep = count($ky['dep']); else $anzdep = 1;
$select = ( "-1"==$ky['dep'][0] ) ? " selected='selected'" : "";
echo "<option $select value=\"-1\"></option>\n";
$sql = "SELECT * FROM fhiiqm.KeyDepot";
if ($res = $dbc -> queryObjectArray($sql))
foreach ($res as $row)
{
if ($row->depot_ID == $ky['dep'][0]) $select = "selected='selected'"; else $select = "";
echo "<option $select value=\"$row->depot_ID\">$row->depot_ID: $row->depot_bez</option>\n";
$adep .= "'".$row->depot_ID."':'".$row->depot_ID.": ".$row->depot_bez."',";
}
$adep = substr($adep,0,strlen($adep)-1);
?>
</select>
<script type="text/javascript">
<!--
adep = {<?php echo ($adep); ?>}; // Ergebnis: {key:'value',key:'value',...}
//-->
</script>
Korrektur/Transfer <input name="ky[ed][]" type="checkbox" value="1" <?php if ($ky['ed'][0]) echo "checked='checked'"; ?> />
<a href="<?php echo "javascript:addInput('adddep',$anzdep);" ?>" title="weiteres Depot"><img src="/fhiiqm/img/add.png" border="0"/></a>
<a href="<?php echo "javascript:markdelInput('adddep',$anzdep);" ?>" title="löschen letztes Depot"><img src="/fhiiqm/img/delete.png" border="0" /></a><br />
<?php
if (isset($ky) && (!$ok || $sub))
{
if (count($ky['dep'])>1 || count($ky['ed'])>1)
{
$i=0;
foreach ($ky['dep'] as $edep)
{
if ($i>0)
{
echo "<span></span><select name=\"ky[dep][]\" size=\"1\">";
foreach ($res as $row)
{
$select = ( $row->depot_ID == $edep ) ? " selected='selected'" : null;
echo "<option $select value=\"$row->depot_ID\">$row->depot_ID: $row->depot_bez</option>\n";
}
echo "</select>";
echo " Korrektur/Transfer ";
echo "<input name=\"ky[ed][$i]\" type=\"checkbox\" value=\"1\"";
$check = ($ky['ed'][$i]) ? " checked='checked'" : "" ;
echo "$check />";
if (isset($ky['del'])) $cls = "dispil"; else $cls = "pr";
if (isset($ky['del'][$i])) $chk = "checked = ' checked'"; else $chk ="";
echo "<span id='cbl_$i'> <input class='$cls' type='checkbox' id='del_$i' name='ky[del][$i]' value='1'$chk /></span>
<span id='lb_$i' class='$cls'> <i>löschen?</i></span><br />\n";
}
$i++;
}
}
}
?>
</div>
</td>
</tr>
<?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("ke",$_SESSION["recht"]) && $redit)
{
echo "
<tr><td> </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'> <a href=\"keydepot_user_list.php\" target=\"_self\" title=\"User-Liste\">« zur Schlüsseltyp-Depot Verwalter-Liste</a></p>\n";
echo "</form>\n";
}
else
{
//print_r($ky);
echo "<div align='center'>\n";
if ($ky["dep"][0] == -1) $ky["dep"][0] = null;
if ($ky["userid"] == -1) $ky["userid"] = "";
if ($ky["userid"] > "!" && count($ky["dep"]) > 0 && $ky["dep"][0] > "!")
{
$sql = "DELETE FROM KeyDepot_userweb WHERE userid = '" . $ky["userid"] ."'";
$retd = $dbc -> execute($sql);
if ($retd)
{
$ret = 1;
$stmt = $dbc -> stmtinit();
if (is_object($stmt))
{
$stmt -> prepare("INSERT INTO KeyDepot_userweb (Depot_ID,userid,edit) VALUES (?,?,?)");
for ($k=0; $k<count($ky["dep"]); $k++)
{
if ($ky["dep"][$k] && !$ky["del"][$k])
{
if (is_null($ky["ed"][$k])) $ky["ed"][$k] = 0;
$stmt -> bind_param('ssi',$ky["dep"][$k],$ky["userid"],$ky["ed"][$k]);
$ret = $ret && $stmt -> execute();
}
}
if (!$ret) echo "error INSERT Depot-Rechte: $stmt->error<br />\n";
else echo "<p class='green'>Depot-Rechte für Nutzer '".$ky["userid"]. "' wurden erfolgreich gespeichert.</p>\n";
}
}
else echo "error INSERT Depot-Rechte: $dbc->error<br />\n";
}
else
{
$sql = "SELECT COUNT(*) as anz FROM KeyDepot_userweb WHERE userid = '" . $ky["userid"] ."'";
$anz = $dbc -> querySingleItem($sql);
if ($anz >0)
{
$sql = "DELETE FROM KeyDepot_userweb WHERE userid = '" . $ky["userid"] ."'";
$retd = $dbc -> execute($sql);
if ($retd)
echo "<p class='green'>Depot-Rechte für Nutzer '".$ky["userid"]. "' wurden erfolgreich gelöscht.</p>\n";
}
else echo "<p class='red'>Es wurden keine Depot-Rechte für Nutzer '".$ky["userid"]. "' vergeben!</p>\n";
}
echo "</div>";
echo "<p class='sc'> <a href=\"keydepot_user_list.php\" target=\"_self\" title=\"User-Liste\">« zur Schlüsseltyp-Depot Verwalter-Liste</a></p>\n";
echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Depotrechte edit\">weitere Schlüsseltyp-Depotrechte bearbeiten</a></p>\n";
}
?>
</body>
</html>