/** * Hàm này lấy quyền của user * @param type $module_name * @param type $per_value * @param type $user_id * @return boolean */ public function checkPerModule($module_name, $per_value, $user_id = FALSE) { if (!$user_id) { $user_id = Yii::app()->user->id; } $result_per = false; $modules = Modules::model()->getOneModules($module_name); $permission = BasicPermission::model()->find('basic_permission_name = "' . $per_value . '"'); if ($modules && $permission) { // Kiểm tra quyền user được gán vào roles $roles = AccountRoles::model()->findAll('accout_id = ' . intval($user_id)); foreach ($roles as $roleItem) { $check_permisson_roles = RolesBasicPermission::model()->find('role_id = ' . intval($roleItem->role_id) . ' AND module_id = ' . intval($modules->lb_record_primary_key) . ' AND basic_permission_id = ' . intval($permission->basic_permission_id) . ' AND basic_permission_status = 1'); if (count($check_permisson_roles) > 0) { $result_per = true; } } // END Roles // Kiểm tra gan quyền trực tiếp cho user $check_permisson = AccountBasicPermission::model()->find('account_id = ' . intval($user_id) . ' AND module_id = ' . intval($modules->lb_record_primary_key) . ' AND basic_permission_id = ' . intval($permission->basic_permission_id)); if ($check_permisson) { if ($check_permisson->basic_permission_status == 1) { $result_per = true; } else { $result_per = false; } } //End modules } return $result_per; }
public function actionDeleteRoleAccount() { if (isset($_POST['role_account_id'])) { $model = AccountRoles::model()->findByPk($_POST['role_account_id']); if ($model->delete()) { echo '{"status":"success"}'; } else { echo '{"status":"fail"}'; } } }
public function checkFunction($module_name, $function_name, $user_id = false) { if (!$user_id) { $user_id = YII::app()->user->id; } $result_per = false; $modules = Modules::model()->find('module_directory = "' . $module_name . '"'); if ($modules) { $define_permission = DefinePermission::model()->find('define_permission_name = "' . $function_name . '" AND module_id = "' . $modules->lb_record_primary_key . '"'); if ($define_permission) { // Kiểm tra quyền user được gán vào roles $roles = AccountRoles::model()->findAll('accout_id = ' . intval($user_id)); foreach ($roles as $roleItem) { $check_define_roles = RolesDefinePermission::model()->find('role_id = ' . intval($roleItem->role_id) . ' AND define_permission_id = ' . intval($define_permission->define_permission_id)); if ($check_define_roles) { $result_per = true; } } // END role // Kiểm tra quyền trức tiếp user $check_define_permission = AccountDefinePermission::model()->find('account_id = ' . intval($user_id) . ' AND define_permission_id = ' . intval($define_permission->define_permission_id)); if ($check_define_permission) { $result_per = true; } //END } } return $result_per; }
public function checkHiddenModule($mod_directory) { $user_id = YII::app()->user->id; // Kiểm tra tai khoản admin $ownSub = AccountSubscription::model()->checkIsSubscriptionOwner(LBApplication::getCurrentlySelectedSubscription()); //END $criteria = new CDbCriteria(); $criteria->condition = 'module_directory = "' . $mod_directory . '" AND module_hidden = 1'; $module = $this->getOneRecords($criteria); $basic_account = array(); if ($module) { // Kierm tra user da duoc gan module nay chua $checkModule = false; $basic_account = AccountBasicPermission::model()->findAll('module_id = "' . $module->lb_record_primary_key . '" AND account_id = ' . intval($user_id)); if (count($basic_account) > 0) { $checkModule = true; } // Kiem tra uer da duoc gan role ma co module nay chua $checkModuleRole = false; $role = AccountRoles::model()->findAll('accout_id=' . intval($user_id)); foreach ($role as $roleItem) { $basic_role = RolesBasicPermission::model()->findAll('role_id=' . intval($roleItem->role_id) . ' AND module_id = ' . intval($module->lb_record_primary_key)); if (count($basic_role) > 0) { $checkModuleRole = true; } } } // Kiem tra user co dc xem modules nay ko // $assignModulesUser = AccountBasicPermission::model()->findAll('account_id = '.intval($user_id).' AND module_id='.intval($dataProvider->data->module_id)); if (count($module) > 0 && $ownSub) { return true; } else { if (count($module) > 0 && ($checkModule == true || $checkModuleRole == true)) { return true; } } return false; }
<?php /* * $account_id; */ $roleAccount = AccountRoles::model()->getRoleByAccount($account_id); ?> <table class="table table-striped table-bordered table-condensed"> <thead class="grid-header"> <tr> <td width="90%"><b>Role Name</b></td> <td></td> </tr> </thead> <tbody> <?php foreach ($roleAccount->data as $roleAccountItem) { ?> <tr> <td><?php if (isset($roleAccountItem->role->role_name)) { echo $roleAccountItem->role->role_name; } ?> </td> <td style="text-align: center;"><a href="#" onclick="deleteRoleAcount(<?php echo $roleAccountItem->lb_record_primary_key; ?> );return false;"><i class="icon-remove"></i></a></td> </tr> <?php