fhiiqm/recht_ed.php
author Bettina Schwarzer
Thu, 12 Sep 2013 09:04:56 +0200
changeset 40 6f4b105daa24
parent 28 8d8bce56918f
child 43 70cea8f0e807
permissions -rw-r--r--
+Keytyp Korrekturen, LDAP Authentifizierung
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
40
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     1
<?php
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     2
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     3
/**
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     4
 * @author Bettina Schwarzer, Fritz-Haber-Institut
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     5
 * @copyright 10/2011
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     6
 *
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     7
 * INSERT/UPDATE/DELETE Rechte   
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     8
 */
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
     9
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    10
    error_reporting(E_ALL ^ E_NOTICE);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    11
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    12
    session_start();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    13
    if (! isset($_SESSION["userid"]))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    14
    { 
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    15
        include_once ("inc/func_lib.inc.php");	
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    16
        login($_SERVER["PHP_SELF"]);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    17
        exit;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    18
    }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    19
    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    20
    if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("rte",$_SESSION["recht"]) && !in_array("rtr",$_SESSION["recht"])))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    21
    {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    22
        header("Location: start.php");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    23
        exit;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    24
    }    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    25
    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    26
?>    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    27
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    28
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    29
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    30
<head>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    31
	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    32
    <link type="text/css" href="/fhiiqm/css/db.css" rel="Stylesheet" media="screen"/>	
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    33
    <link type="text/css" href="/fhiiqm/css/db_print.css" rel="Stylesheet" media="print"/>	
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    34
<!--
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    35
    <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness/jquery-ui-1.8.16.custom.css" rel="Stylesheet" />	
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    36
    <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.6.2.min.js"></script>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    37
    <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.16.custom.min.js"></script>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    38
-->
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    39
    <link type="text/css" href="/fhiiqm/css/jquery/ui-lightness-1.8.21/jquery-ui-1.8.21.custom.css" rel="Stylesheet" />	
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    40
    <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-1.7.2.min.js"></script>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    41
    <script type="text/javascript" src="/fhiiqm/js/jquery/jquery-ui-1.8.21.custom.min.js"></script>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    42
	<title>Nutzer &amp; Rechte</title>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    43
</head>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    44
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    45
<body>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    46
    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    47
    <script>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    48
      $(document).ready(function() {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    49
        $("#persknr").focus();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    50
        $("#persknr").autocomplete({
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    51
                source: "/fhiiqm/inc/ma_list_ac.inc.php",
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    52
    			minLength: 2,
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    53
                select: function(event,ui){$("#pid").val(ui.item.id);}
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    54
    		});
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    55
        $("input").filter("long20").addClass("long20");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    56
        });
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    57
    </script>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    58
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    59
<?php
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    60
    echo "&nbsp;";  
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    61
    echo "<div class=\"float-br smaller\" valign='top'>";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    62
    echo "&nbsp;&nbsp;&nbsp;user: " . $_SESSION["userid"];
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    63
    echo "&nbsp;&nbsp;&nbsp;<a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    64
    echo "<div class=\"float-r\"><img src=\"img/user_go.png\" border=\"0\" alt=\"User, Rechte eingeben\" title=\"User, Rechte eingeben\"/></div>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    65
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    66
	include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    67
	if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    68
    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    69
	$pget   = $_GET["pid"];
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    70
    $ok     = $_POST["ok"];
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    71
	$ins	= $_POST["ins"];
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    72
	$del	= $_POST["del"];
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    73
    $rt     = $_POST["rt"];
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    74
    if (!$rt['okn']) $ok=false;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    75
// print_r($rt); echo "$ins, $del<br />";    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    76
    if (!$ok || (!$ins && !$del))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    77
    {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    78
        if ($pget && !$ins && !$del)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    79
        {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    80
            // Daten zu Mitarbeiter bereitstellen
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    81
            $rt["pid"] = $pget;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    82
            $sql = "SELECT userid FROM fhiiqm.userweb WHERE persknr = $pget";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    83
            if ($userid = $dbc->querySingleItem($sql))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    84
            {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    85
                $rt["userid"] = $userid;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    86
                $sql = "SELECT CONCAT (nachname, ', ',vorname) AS ma FROM fhiiqm.Mitarbeiter WHERE persknr = $pget";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    87
                if ($result = $dbc -> queryObjectArray($sql))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    88
                    foreach ($result as $row)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    89
                        $rt["pers"] = $row->ma;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    90
                $sql = "SELECT recht_ID FROM fhiiqm.user_recht WHERE userid = '$userid'";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    91
                if ($resr = $dbc -> queryObjectArray($sql))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    92
                    foreach ($resr as $row)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    93
                        $rt["recht"][] = $row->recht_ID;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    94
                $sql = "SELECT prod_group_ID FROM fhiiqm.user_prodgroup WHERE userid = '$userid'";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    95
                if ($resg = $dbc -> queryObjectArray($sql))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    96
                    foreach ($resg as $row)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    97
                        $rt["prodg"][] = $row->prod_group_ID;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    98
            }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
    99
        }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   100
        
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   101
        include_once("form/recht_form.inc.php");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   102
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   103
        if ($ins || $del)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   104
		{
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   105
    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   106
		  	if ($ins) $frage = "Alle Angaben ok?"; else $frage = "Nutzer und seine Rechte wirklich löschen?";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   107
			echo "<tr>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   108
			  <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   109
			        <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   110
			        if ($ok)  echo "checked"; 
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   111
			echo "></td>\n</tr>\n"; 
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   112
		}
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   113
		
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   114
        if (!is_null($_SESSION["recht"]) && in_array("rte", $_SESSION["recht"]))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   115
        {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   116
    		if ($pget || $rt["pget"]) $sub = "&auml;ndern"; else $sub = "eingeben";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   117
                
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   118
            echo "<tr>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   119
    		echo "
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   120
    		  <td>&nbsp;</td>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   121
    		  <td><input class=\"button\" type=\"submit\" value=\"$sub\" name=\"ins\" title=\"$sub\" />";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   122
            if ($pget || $rt["pget"])
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   123
                echo "&nbsp;&nbsp;&nbsp;<input class=\"buttonr\" type=\"submit\" value=\"l&ouml;schen\" name=\"del\" title=\"delete\" />";         
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   124
            echo  "</td>\n";;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   125
    		echo "</tr>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   126
        }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   127
        echo "</table>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   128
        echo "</div>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   129
//        if (!is_null($_SESSION["recht"]) && !in_array("rte", $_SESSION["recht"]))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   130
            echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"recht_list.php\" target=\"_self\" title=\"Nutzerliste\">&laquo; zur Nutzerliste</a></p>\n"; 
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   131
        echo "</form>\n";	
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   132
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   133
    }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   134
    elseif ($ok && ($ins || $del))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   135
    {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   136
        echo "<div align='center'>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   137
        //daten speichern
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   138
        
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   139
        if ($ins == "eingeben")
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   140
        {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   141
            $resu=1;            
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   142
            // pruefen, ob userid schon existiert
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   143
            $sql = "SELECT persknr, userid FROM fhiiqm.userweb WHERE userid = '" . $rt["userid"] . "'";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   144
            if ($result = $dbc ->queryObjectArray($sql))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   145
            {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   146
                foreach ($result as $row)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   147
                { 
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   148
                    echo "<p class='red'>User-ID '<b>" . $rt["userid"] ."</b>' ist schon vorhanden!</p>";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   149
                    $erruid = 1;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   150
                }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   151
            }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   152
        }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   153
        else
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   154
        {   //update
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   155
            $sql = "SELECT userid FROM fhiiqm.userweb WHERE persknr = $pget";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   156
            if ($userid = $dbc->querySingleItem($sql))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   157
            {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   158
                $resu=1; $resr=1; $resp=1;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   159
                if ($userid != $rt["userid"])
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   160
                {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   161
                    // alte userid und Rechte dazu loeschen -> CASCADE DELETE
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   162
                    $resu = $dbc -> execute("DELETE FROM fhiiqm.userweb WHERE userid ='" . $userid . "'");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   163
                }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   164
                else
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   165
                {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   166
                    // alte Rechte loeschen
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   167
                    $sql = "DELETE FROM fhiiqm.user_recht WHERE userid ='" . $userid . "'";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   168
                    $resr = $dbc -> execute($sql);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   169
                    $sql = "DELETE FROM fhiiqm.user_prodgroup WHERE userid ='" . $userid . "'";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   170
                    $resp = $dbc -> execute($sql);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   171
                }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   172
            }    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   173
            if (!$resu || !$resr || !$resp) $erruid = 1;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   174
                
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   175
        }    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   176
        if ($del)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   177
        {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   178
            // User loeschen
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   179
            $sql = "DELETE FROM fhiiqm.userweb WHERE userid ='" . $rt["userid"] . "'";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   180
            $res = $dbc -> execute($sql);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   181
            if ($res) 
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   182
                echo "<p class='green'><b>User-ID '".$rt["userid"]."' und zugeordete Rechte wurden gel&ouml;scht.</b></p>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   183
            else
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   184
                 echo "<p class='red'><b>L&ouml;schen von User-ID '".$rt["userid"]."' und zugeordeter Rechte ist fehlgeschlagen.</b></p>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   185
            $erruid = 1;    // 
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   186
        }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   187
        if (!$erruid)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   188
        {   // Rechte speichern
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   189
            $stmt = $dbc -> stmtinit();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   190
            if (is_object($stmt))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   191
            {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   192
                $result = 1;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   193
                if ($ins == "eingeben" || $userid != $rt["userid"])
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   194
                {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   195
                    $stmt -> prepare("INSERT INTO fhiiqm.userweb (persknr, userid) VALUES (?,?)");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   196
                    $stmt -> bind_param('is',$rt["pid"],$rt["userid"]);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   197
                    $result = $stmt -> execute();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   198
                    if ($stmt->error) echo "error userweb: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   199
                    $stmt -> reset();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   200
                }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   201
                if ($result)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   202
                {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   203
                    $resr = 1;
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   204
                    if (is_array($rt["recht"]) && !is_null($rt["recht"]))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   205
                    {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   206
                        $stmt -> prepare("INSERT INTO fhiiqm.user_recht (userid,recht_ID) VALUES (?,?)");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   207
                        foreach ($rt["recht"] as $re)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   208
                        {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   209
                                $stmt -> bind_param('ss',$rt["userid"],$re);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   210
                                $resr = $stmt -> execute();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   211
                        }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   212
                        if ($stmt->error) echo "error user_recht: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   213
                        $stmt -> reset();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   214
                    }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   215
                    $resp = 1;            
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   216
                    if (is_array($rt["prodg"]) && !is_null($rt["prodg"]))
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   217
                    {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   218
                        $stmt -> prepare("INSERT INTO fhiiqm.user_prodgroup (userid,prod_group_ID) VALUES (?,?)");
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   219
                        foreach ($rt["prodg"] as $re)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   220
                        {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   221
                                $stmt -> bind_param('ss',$rt["userid"],$re);
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   222
                                $resp = $stmt -> execute();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   223
                        }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   224
                    }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   225
                    if ($stmt->error) echo "error user_prodgroup: " . $stmt->errno." -> ".$stmt->error . "<br><br>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   226
                    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   227
                }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   228
//                $stmt -> close();      
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   229
            }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   230
            if ($result && $resu && $resr && $resp)
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   231
                echo "<p class='green'><b>User-ID '".$rt["userid"]."' und zugeordete Rechte wurden erfolgreich gespeichert.</b></p>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   232
            else
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   233
            {
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   234
                echo "<p class='red'><b>Speichern von User-ID '".$rt["userid"]."' und zugeordeter Rechte war nicht erfolgreich.</b></p>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   235
                echo "result = $result, resu=$res, resr=$resr, resp=$resp<br />";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   236
            }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   237
        }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   238
        $dbc -> close();
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   239
        echo "</div>\n";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   240
        echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Rechte erfassen\">Weiteren Nutzer & Rechte erfassen</a></p>\n";    
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   241
        echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href='/fhiiqm/recht_list.php' title='Nutzerliste'>zur Nutzerliste</a></p>";
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   242
    }
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   243
?>
6f4b105daa24 +Keytyp Korrekturen, LDAP Authentifizierung
Bettina Schwarzer
parents: 28
diff changeset
   244
</body>
16
3ebe66308a00 nochmal Recht, Prodgroup->Vertrag edit
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff changeset
   245
</html>