2009-09-07 11:07:59 +00:00
< ? php
2008-03-09 22:49:53 +00:00
2010-06-21 04:18:06 +00:00
include ( " includes/javascript-interfacepicker.inc.php " );
2008-03-09 22:49:53 +00:00
echo ( " <div style='margin: 10px;'> " );
2011-10-18 14:41:19 +00:00
$pagetitle [] = " Edit user " ;
2011-03-17 00:09:20 +00:00
if ( $_SESSION [ 'userlevel' ] != '10' ) { include ( " includes/error-no-perm.inc.php " ); } else
{
2011-09-21 14:54:21 +00:00
if ( $vars [ 'user_id' ])
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
$user_data = dbFetchRow ( " SELECT * FROM users WHERE user_id = ? " , array ( $vars [ 'user_id' ]));
echo ( " <p><h2> " . $user_data [ 'realname' ] . " </h2><a href='edituser/'>Change...</a></p> " );
2011-03-17 00:09:20 +00:00
// Perform actions if requested
2011-09-21 14:54:21 +00:00
if ( $vars [ 'action' ] == " deldevperm " )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
if ( dbFetchCell ( " SELECT COUNT(*) FROM devices_perms WHERE `device_id` = ? AND `user_id` = ? " , array ( $vars [ 'device_id' ] , $vars [ 'user_id' ])))
2011-03-26 19:12:24 +00:00
{
2011-09-21 14:54:21 +00:00
dbDelete ( 'devices_perms' , " `device_id` = ? AND `user_id` = ? " , array ( $vars [ 'device_id' ], $vars [ 'user_id' ]));
2011-03-17 00:09:20 +00:00
}
2010-08-10 12:08:42 +00:00
}
2011-09-21 14:54:21 +00:00
if ( $vars [ 'action' ] == " adddevperm " )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
if ( ! dbFetchCell ( " SELECT COUNT(*) FROM devices_perms WHERE `device_id` = ? AND `user_id` = ? " , array ( $vars [ 'device_id' ] , $vars [ 'user_id' ])))
2011-03-26 19:12:24 +00:00
{
2011-09-21 14:54:21 +00:00
dbInsert ( array ( 'device_id' => $vars [ 'device_id' ], 'user_id' => $vars [ 'user_id' ]), 'devices_perms' );
2011-03-17 00:09:20 +00:00
}
2010-08-10 12:08:42 +00:00
}
2011-09-21 14:54:21 +00:00
if ( $vars [ 'action' ] == " delifperm " )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
if ( dbFetchCell ( " SELECT COUNT(*) FROM ports_perms WHERE `interface_id` = ? AND `user_id` = ? " , array ( $vars [ 'interface_id' ], $vars [ 'user_id' ])))
2011-03-26 19:12:24 +00:00
{
2011-09-21 14:54:21 +00:00
dbDelete ( 'ports_perms' , " `interface_id` = ? AND `user_id` = ? " , array ( $vars [ 'interface_id' ], $vars [ 'user_id' ]));
2011-03-17 00:09:20 +00:00
}
2010-08-10 12:08:42 +00:00
}
2011-09-21 14:54:21 +00:00
if ( $vars [ 'action' ] == " addifperm " )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
if ( ! dbFetchCell ( " SELECT COUNT(*) FROM ports_perms WHERE `interface_id` = ? AND `user_id` = ? " , array ( $vars [ 'interface_id' ], $vars [ 'user_id' ])))
2011-03-26 19:12:24 +00:00
{
2011-09-21 14:54:21 +00:00
dbInsert ( array ( 'interface_id' => $vars [ 'interface_id' ], 'user_id' => $vars [ 'user_id' ]), 'ports_perms' );
2011-03-17 00:09:20 +00:00
}
2010-08-10 12:08:42 +00:00
}
2011-09-21 14:54:21 +00:00
if ( $vars [ 'action' ] == " delbillperm " )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
if ( dbFetchCell ( " SELECT COUNT(*) FROM bill_perms WHERE `bill_id` = ? AND `user_id` = ? " , array ( $vars [ 'bill_id' ], $vars [ 'user_id' ])))
2011-03-26 19:12:24 +00:00
{
2011-09-21 14:54:21 +00:00
dbDelete ( 'bill_perms' , " `bill_id` = ? AND `user_id` = ? " , array ( $vars [ 'bill_id' ], $vars [ 'user_id' ]));
2011-03-17 00:09:20 +00:00
}
2010-08-10 12:08:42 +00:00
}
2011-09-21 14:54:21 +00:00
if ( $vars [ 'action' ] == " addbillperm " )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
if ( ! dbFetchCell ( " SELECT COUNT(*) FROM bill_perms WHERE `bill_id` = ? AND `user_id` = ? " , array ( $vars [ 'bill_id' ], $vars [ 'user_id' ])))
2011-03-26 19:12:24 +00:00
{
2011-09-21 14:54:21 +00:00
dbInsert ( array ( 'bill_id' => $vars [ 'bill_id' ], 'user_id' => $vars [ 'user_id' ]), 'bill_perms' );
2011-03-17 00:09:20 +00:00
}
2010-08-10 12:08:42 +00:00
}
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
echo ( " <table width=100%><tr><td valign=top width=33%> " );
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
// Display devices this users has access to
echo ( " <h3>Device Access</h3> " );
2008-03-09 22:49:53 +00:00
2011-09-21 14:54:21 +00:00
$device_perms = dbFetchRows ( " SELECT * from devices_perms as P, devices as D WHERE `user_id` = ? AND D.device_id = P.device_id " , array ( $vars [ 'user_id' ]));
2011-05-15 14:42:30 +00:00
foreach ( $device_perms as $device_perm )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
echo ( " <strong> " . $device_perm [ 'hostname' ] . " <a href='edituser/action=deldevperm/user_id= " . $vars [ 'user_id' ] . " /device_id= " . $device_perm [ 'device_id' ] . " '><img src='images/16/cross.png' align=absmiddle border=0></a></strong><br /> " );
2011-03-17 00:09:20 +00:00
$access_list [] = $device_perm [ 'device_id' ];
$permdone = " yes " ;
2008-03-09 22:49:53 +00:00
}
2011-03-17 00:09:20 +00:00
if ( ! $permdone ) { echo ( " None Configured " ); }
// Display devices this user doesn't have access to
echo ( " <h4>Grant access to new device</h4> " );
2011-09-22 18:18:15 +00:00
echo ( " <form method='post' action=''>
2011-09-21 14:54:21 +00:00
< input type = 'hidden' value = '" . $vars[' user_id '] . "' name = 'user_id' >
2011-03-17 00:09:20 +00:00
< input type = 'hidden' value = 'edituser' name = 'page' >
< input type = 'hidden' value = 'adddevperm' name = 'action' >
< select name = 'device_id' class = selector > " );
2011-05-15 14:42:30 +00:00
$devices = dbFetchRows ( " SELECT * FROM `devices` ORDER BY hostname " );
foreach ( $devices as $device )
2011-03-17 00:09:20 +00:00
{
unset ( $done );
foreach ( $access_list as $ac ) { if ( $ac == $device [ 'device_id' ]) { $done = 1 ; } }
if ( ! $done )
{
echo ( " <option value=' " . $device [ 'device_id' ] . " '> " . $device [ 'hostname' ] . " </option> " );
}
}
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
echo ( " </select> <input type='submit' name='Submit' value='Add'></form> " );
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
echo ( " </td><td valign=top width=33%> " );
echo ( " <h3>Interface Access</h3> " );
2008-03-09 22:49:53 +00:00
2011-09-21 14:54:21 +00:00
$interface_perms = dbFetchRows ( " SELECT * from ports_perms as P, ports as I, devices as D WHERE `user_id` = ? AND I.interface_id = P.interface_id AND D.device_id = I.device_id " , array ( $vars [ 'user_id' ]));
2008-03-09 22:49:53 +00:00
2011-05-15 14:42:30 +00:00
foreach ( $interface_perms as $interface_perm )
2011-03-17 00:09:20 +00:00
{
echo ( " <table><tr><td><strong> " . $interface_perm [ 'hostname' ] . " - " . $interface_perm [ 'ifDescr' ] . " </strong><br /> " .
2011-09-21 14:54:21 +00:00
" " . $interface_perm [ 'ifAlias' ] . " </td><td width=50> <a href='edituser/action=delifperm/user_id= " . $vars [ 'user_id' ] .
" /interface_id= " . $interface_perm [ 'interface_id' ] . " '><img src='images/16/cross.png' align=absmiddle border=0></a></td></tr></table> " );
2011-03-17 00:09:20 +00:00
$ipermdone = " yes " ;
}
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
if ( ! $ipermdone ) { echo ( " None Configured " ); }
// Display devices this user doesn't have access to
echo ( " <h4>Grant access to new interface</h4> " );
2011-09-22 18:18:15 +00:00
echo ( " <form action='' method='post'>
2011-09-21 14:54:21 +00:00
< input type = 'hidden' value = '" . $vars[' user_id '] . "' name = 'user_id' >
2011-03-17 00:09:20 +00:00
< input type = 'hidden' value = 'edituser' name = 'page' >
< input type = 'hidden' value = 'addifperm' name = 'action' >
< table >< tr >< td > Device : </ td >
< td >< select id = 'device' class = 'selector' name = 'device' onchange = 'getInterfaceList(this)' >
< option value = '' > Select a device </ option > " );
2011-05-15 14:42:30 +00:00
foreach ( $devices as $device )
2011-03-17 00:09:20 +00:00
{
unset ( $done );
foreach ( $access_list as $ac ) { if ( $ac == $device [ 'device_id' ]) { $done = 1 ; } }
if ( ! $done ) { echo ( " <option value=' " . $device [ 'device_id' ] . " '> " . $device [ 'hostname' ] . " </option> " ); }
}
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
echo ( " </select></td></tr><tr>
< td > Interface : </ td >< td >< select class = selector id = 'interface_id' name = 'interface_id' >
</ select ></ td >
</ tr >< tr ></ table >< input type = 'submit' name = 'Submit' value = 'Add' ></ form > " );
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
echo ( " </td><td valign=top width=33%> " );
echo ( " <h3>Bill Access</h3> " );
2008-03-09 22:49:53 +00:00
2011-09-21 14:54:21 +00:00
$bill_perms = dbFetchRows ( " SELECT * from bills AS B, bill_perms AS P WHERE P.user_id = ? AND P.bill_id = B.bill_id " , array ( $vars [ 'user_id' ]));
2008-03-09 22:49:53 +00:00
2011-05-15 14:42:30 +00:00
foreach ( $bill_perms as $bill_perm )
2011-03-17 00:09:20 +00:00
{
2011-09-21 14:54:21 +00:00
echo ( " <table><tr><td><strong> " . $bill_perm [ 'bill_name' ] . " </strong></td><td width=50> <a href='edituser/action=delbillperm/user_id= " .
$vars [ 'user_id' ] . " /bill_id= " . $bill_perm [ 'bill_id' ] . " '><img src='images/16/cross.png' align=absmiddle border=0></a></td></tr></table> " );
2011-03-17 00:09:20 +00:00
$bill_access_list [] = $bill_perm [ 'bill_id' ];
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
$bpermdone = " yes " ;
2008-03-09 22:49:53 +00:00
}
2011-03-17 00:09:20 +00:00
if ( ! $bpermdone ) { echo ( " None Configured " ); }
// Display devices this user doesn't have access to
echo ( " <h4>Grant access to new bill</h4> " );
2011-09-22 18:18:15 +00:00
echo ( " <form method='post' action=''>
2011-09-21 14:54:21 +00:00
< input type = 'hidden' value = '" . $vars[' user_id '] . "' name = 'user_id' >
2011-03-17 00:09:20 +00:00
< input type = 'hidden' value = 'edituser' name = 'page' >
< input type = 'hidden' value = 'addbillperm' name = 'action' >
< select name = 'bill_id' class = selector > " );
2011-05-25 16:40:03 +00:00
$bills = dbFetchRows ( " SELECT * FROM `bills` ORDER BY `bill_name` " );
2011-05-15 14:42:30 +00:00
foreach ( $bills as $bill )
2011-03-17 00:09:20 +00:00
{
unset ( $done );
foreach ( $bill_access_list as $ac ) { if ( $ac == $bill [ 'bill_id' ]) { $done = 1 ; } }
if ( ! $done )
{
echo ( " <option value=' " . $bill [ 'bill_id' ] . " '> " . $bill [ 'bill_name' ] . " </option> " );
}
}
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
echo ( " </select> <input type='submit' name='Submit' value='Add'></form> " );
echo ( " </td></table> " );
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
} else {
2008-03-09 22:49:53 +00:00
2011-09-22 16:46:30 +00:00
$user_list = get_userlist ();
2008-03-09 22:49:53 +00:00
2011-03-17 00:09:20 +00:00
echo ( " <h3>Select a user to edit</h3> " );
2008-03-09 22:49:53 +00:00
2011-09-22 18:18:15 +00:00
echo ( " <form method='post' action=''>
2011-03-17 00:09:20 +00:00
< input type = 'hidden' value = 'edituser' name = 'page' >
< select name = 'user_id' > " );
2011-10-04 09:10:21 +00:00
foreach ( $user_list as $user_entry )
2011-03-17 00:09:20 +00:00
{
echo ( " <option value=' " . $user_entry [ 'user_id' ] . " '> " . $user_entry [ 'username' ] . " </option> " );
}
echo ( " </select><input type='submit' name='Submit' value='Select'></form> " );
2008-03-09 22:49:53 +00:00
}
}
echo ( " </div> " );
2011-05-12 23:17:44 +00:00
?>