$sql = "SELECT * FROM ".TB_PREF."security_roles WHERE id='$id'";
$ret = db_query($sql, "could not retrieve security roles");
$row = db_fetch($ret);
- $row['areas'] = explode(';', $row['areas']);
- $row['modules'] = explode(';', $row['modules']);
+ if ($row != false) {
+ $row['areas'] = explode(';', $row['areas']);
+ $row['sections'] = explode(';', $row['sections']);
+ }
return $row;
}
//--------------------------------------------------------------------------------------------------
-function add_security_role($name, $description, $modules, $areas)
+function add_security_role($name, $description, $sections, $areas)
{
- $sql = "INSERT INTO ".TB_PREF."security_roles (role, description, modules, areas)
+ $sql = "INSERT INTO ".TB_PREF."security_roles (role, description, sections, areas)
VALUES ("
.db_escape($name).","
.db_escape($description).","
- .db_escape(implode(';',$modules)).","
- .db_escape(implode(';',$areas)).")";
+ .db_escape(implode(';', $sections)).","
+ .db_escape(implode(';', $areas)).")";
db_query($sql, "could not add new security role");
}
//--------------------------------------------------------------------------------------------------
-function update_security_role($id, $name, $description, $modules, $areas)
+function update_security_role($id, $name, $description, $sections, $areas)
{
$sql = "UPDATE ".TB_PREF."security_roles SET role=".db_escape($name)
.",description=".db_escape($description)
- .",modules=".db_escape(implode(';',$modules))
- .",areas=".db_escape(implode(';',$areas))
+ .",sections=".db_escape(implode(';', $sections))
+ .",areas=".db_escape(implode(';', $areas))
." WHERE id=$id";
db_query($sql, "could not update role");
}
//--------------------------------------------------------------------------------------------------
function check_role_used($id) {
- $sql = "SELECT count(*) FROM ".TB_PREF."users WHERE full_access=$id";
+ $sql = "SELECT count(*) FROM ".TB_PREF."users WHERE role_id=$id";
$ret = db_query($sql, 'cannot check role usage');
$row = db_fetch($ret);
return $row[0];
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
***********************************************************************/
-$page_security = 20;
-$path_to_root="..";
+$page_security = 'SA_SECROLES';
+$path_to_root = "..";
include_once($path_to_root . "/includes/session.inc");
page(_("Access setup"));
if ($input_error == 0)
{
- $modules = array();
+ $sections = array();
$areas = array();
foreach($_POST as $p =>$val) {
if (substr($p,0,4) == 'Area')
$areas[] = substr($p, 4);
- if (substr($p,0,6) == 'Module')
- $modules[] = substr($p, 6);
+ if (substr($p,0,6) == 'Section')
+ $sections[] = substr($p, 6);
}
sort($areas);
- sort($modules);
+ sort($sections);
if ($new_role)
{
- add_security_role($_POST['name'], $_POST['description'], $modules, $areas);
+ add_security_role($_POST['name'], $_POST['description'], $sections, $areas);
display_notification(_("New security role has been added."));
} else
{
update_security_role($_POST['role'], $_POST['name'], $_POST['description'],
- $modules, $areas);
+ $sections, $areas);
update_record_status($_POST['role'], get_post('inactive'),
'security_roles', 'id');
if (!isset($_POST['role']) || get_post('clone') || list_updated('role')) {
$id = get_post('role');
$clone = get_post('clone');
- clear_data();
+// clear_data();
+ unset($_POST);
if ($id) {
$row = get_security_role($id);
$_POST['description'] = $row['description'];
$_POST['inactive'] = $row['inactive'];
$access = $row['areas'];
- $modules = $row['modules'];
+ $sections = $row['sections'];
}
else {
$_POST['description'] = $_POST['name'] = '';
unset($_POST['inactive']);
- $access = $modules = array();
+ $access = $sections = array();
}
foreach($access as $a) $_POST['Area'.$a] = 1;
- foreach($modules as $m) $_POST['Module'.$m] = 1;
+ foreach($sections as $s) $_POST['Section'.$s] = 1;
if($clone) {
set_focus('name');
start_table("class='tablestyle_noborder'");
start_row();
security_roles_list_cells(_("Role:"). " ", 'role', null, true, true, check_value('show_inactive'));
-//$new_role = get_post('role')=='';
+$new_role = get_post('role')=='';
check_cells(_("Show inactive:"), 'show_inactive', null, true);
end_row();
end_table();
$Ajax->activate('role');
set_focus('role');
}
-if (find_submit('_Module')) {
+if (find_submit('_Section')) {
$Ajax->activate('details');
// set_focus('');
}
{ // features set selection
$m = $parms[0] & ~0xff;
label_row($security_sections[$m].':',
- checkbox( null, 'Module'.$m, null, true,
+ checkbox( null, 'Section'.$m, null, true,
_("On/off set of features")),
"class='tableheader2'", "class='tableheader'");
}
- if (check_value('Module'.$m)) {
+ if (check_value('Section'.$m)) {
alt_table_row_color($k);
check_cells($parms[1], 'Area'.$parms[0], null,
false, '', "align='center'");