$curr_function->loadRefsUsers(); } // Matrice des droits $perms = array(PERM_DENY => "interdit", PERM_READ => "lecture", PERM_EDIT => "ecriture"); $views = array(PERM_DENY => "caché", PERM_READ => "menu", PERM_EDIT => "administration"); $icons = array(PERM_DENY => "empty", PERM_READ => "read", PERM_EDIT => "edit"); $where = array(); $whereGeneral = array("mod_id" => "IS NULL"); $matrice = array(); foreach ($listFunctions as $curr_func) { foreach ($curr_func->_ref_users as $curr_user) { $curr_user->loadRefProfile(); $permModule = new CPermModule(); $whereGeneral["user_id"] = "= '{$curr_user->user_id}'"; $where["user_id"] = "= '{$curr_user->user_id}'"; $listPermsModules = $permModule->loadList($where); $where["user_id"] = "= '{$curr_user->_profile_id}'"; $listPermsModulesProfil = $permModule->loadList($where); $permModule->loadObject($whereGeneral); if ($permModule->_id) { $permGeneralPermission = $permModule->permission; $permGeneralView = $permModule->view; } else { $permGeneralPermission = PERM_DENY; $permGeneralView = PERM_DENY; } foreach ($listModules as $curr_mod) { $matrice[$curr_user->_id][$curr_mod->_id] = array("text" => $perms[$permGeneralPermission] . "/" . $views[$permGeneralView], "type" => "général", "permIcon" => $icons[$permGeneralPermission], "viewIcon" => $icons[$permGeneralView]); } foreach ($listPermsModulesProfil as $curr_perm) { $matrice[$curr_user->_id][$curr_perm->mod_id] = array("text" => $perms[$curr_perm->permission] . "/" . $views[$curr_perm->view], "type" => "profil", "permIcon" => $icons[$curr_perm->permission], "viewIcon" => $icons[$curr_perm->view]);
if ($user->profile_id) { $where["user_id"] = "= '{$user->profile_id}'"; $profile->loadObject($where); } $order = "mod_id"; //Droit de l'utilisateur sur les modules $whereUser = array(); $whereUser["user_id"] = "= '{$user->user_id}'"; $whereProfil = array(); $whereProfil["user_id"] = "= '{$user->profile_id}'"; // DROITS SUR LES MODULES $permModule = new CPermModule(); $permsModule = array(); $permsModuleCount = 0; // Droit du profil sur les modules foreach ($permModule->loadList($whereProfil, $order) as $_perm) { $permsModuleCount++; $_perm->_owner = "template"; $_perm->loadRefDBModule(); $permsModule[$_perm->mod_id]["profil"] = $_perm; } foreach ($permModule->loadList($whereUser, $order) as $_perm) { $permsModuleCount++; $_perm->_owner = "user"; $module = $_perm->loadRefDBModule(); if (!$module->_id) { $isAdminPermSet = true; } $permsModule[$module->_id]["user"] = $_perm; unset($modulesInstalled[$module->mod_name]); }