Refactor permission checks to utilize hierarchy levels for access control in equipment, partner, user, and mass update pages. Update conditions to validate permissions based on user hierarchy instead of fixed permission values.
This commit is contained in:
13
user.php
13
user.php
@@ -13,6 +13,8 @@ include_once './settings/settings_redirector.php';
|
||||
//SET ORIGIN FOR NAVIGATION
|
||||
$_SESSION['prev_origin_user'] = $_SERVER['REQUEST_URI'];
|
||||
|
||||
$hierarchyLevel = getHierarchyLevel(json_decode($_SESSION['authorization']['partnerhierarchy']));
|
||||
|
||||
$page = 'user';
|
||||
//Check if allowed
|
||||
if (isAllowed($page,$_SESSION['authorization']['permissions'],$_SESSION['authorization']['permission'],'R') === 0){
|
||||
@@ -437,10 +439,10 @@ $view .= '</span>
|
||||
<option value="2"'.($user->view == 2 ? ' selected' : '').'>'.($permission2 ?? 'Edit').'</option>
|
||||
<option value="1"'.($user->view == 1 ? ' selected' : '').'>'.($permission1 ?? 'View').'</option>';
|
||||
|
||||
if ($_SESSION['authorization']['permission'] == 3){
|
||||
if ($hierarchyLevel == 1){
|
||||
$view .= '<option value="4"'.($user->view == 4 ? ' selected' : '').'>'.($permission4 ?? 'Super Admin').'</option>';
|
||||
}
|
||||
if ($_SESSION['authorization']['permission'] == 4){
|
||||
if ($hierarchyLevel == 0){
|
||||
$view .= '<option value="4"'.($user->view == 4 ? ' selected' : '').'>'.($permission4 ?? 'Super Admin').'</option>
|
||||
<option value="5"'.($user->view == 5 ? ' selected' : '').'>'.($permission5 ?? 'System').'</option>';
|
||||
}
|
||||
@@ -453,7 +455,8 @@ $view .= ' </select>
|
||||
<td>
|
||||
<span class="view-mode" style="'.$view_style.'">'.($user->settings ?? '-').'</span>';
|
||||
|
||||
if ($_SESSION['authorization']['permission'] == 3 || $_SESSION['authorization']['permission'] == 4){
|
||||
|
||||
if ($hierarchyLevel == 0 || $hierarchyLevel == 1){
|
||||
$view .= '<select class="edit-mode" name="settings" style="'.$edit_style.'">
|
||||
<option value="">-</option>';
|
||||
foreach ($all_profiles as $profile) {
|
||||
@@ -490,7 +493,7 @@ $view .= '<div class="content-block">
|
||||
<div class="table order-table">
|
||||
<table>';
|
||||
|
||||
if ($_SESSION['authorization']['permission'] == 3 || $_SESSION['authorization']['permission'] == 4){
|
||||
if ($hierarchyLevel == 0 || $hierarchyLevel == 1){
|
||||
$salesid_dropdown = listPartner('salesid', $_SESSION['authorization']['permission'], $partner_data->salesid ?? '', '');
|
||||
$soldto_dropdown = listPartner('soldto', $_SESSION['authorization']['permission'], $partner_data->soldto ?? '', '');
|
||||
|
||||
@@ -560,7 +563,7 @@ if (!$is_new_user) {
|
||||
<td>
|
||||
<span class="view-mode">'.$user->login_count.'</span>';
|
||||
|
||||
if ($_SESSION['authorization']['permission'] == 3 || $_SESSION['authorization']['permission'] == 4){
|
||||
if ($hierarchyLevel == 0 || $hierarchyLevel == 1){
|
||||
$view .= '<input type="number" class="edit-mode" name="login_count" value="'.$user->login_count.'" style="display:none; width: 80px;">';
|
||||
} else {
|
||||
$view .= '<input type="hidden" name="login_count" value="'.$user->login_count.'">';
|
||||
|
||||
Reference in New Issue
Block a user