Clasess> Access.php edit this code
public static function isGranted($role, $idProfile)
{
foreach ((array) $role as $currentRole) {
preg_match(
'/ROLE_MOD_(?P<type>[A-Z]+)_(?P<name>[A-Z0-9_]+)_(?P<auth>[A-Z]+)/i',
$currentRole,
$matches
);
if (isset($matches['type'])) {
if (strtoupper($matches['type']) == 'TAB') {
$joinTable = _DB_PREFIX_ . 'access';
} elseif (strtoupper($matches['type']) == 'MODULE') {
$joinTable = _DB_PREFIX_ . 'module_access';
} else {
throw new Exception('The slug ' . $currentRole . ' is invalid');
}
} else {
throw new Exception('The slug ' . $currentRole . ' is invalid');
}
$currentRole = Db::getInstance()->escape($currentRole);
$isCurrentGranted = (bool) Db::getInstance()->getRow('
SELECT t.`id_authorization_role`
FROM `' . _DB_PREFIX_ . 'authorization_role` t
LEFT JOIN ' . $joinTable . ' j
ON j.`id_authorization_role` = t.`id_authorization_role`
WHERE `slug` = "' . $currentRole . '"
AND j.`id_profile` = "' . (int) $idProfile . '"
');
if (!$isCurrentGranted) {
return false;
}
}
return true;
}