public function saveUserPermission() { $this->load->library('session'); $userDao = new ScrudDao('crud_users', $this->db); $pDao = new ScrudDao('crud_user_permissions', $this->db); $data = $this->input->post('data'); $this->db->query('TRUNCATE TABLE `crud_user_permissions`'); if (count($data) > 0) { foreach ($data as $k => $v) { $user = array(); $user['user_manage_flag'] = $v['user_manage_flag']; $userDao->update($user, array('id = ?', array($v['user_id']))); $crudAuth = $this->session->userdata('CRUD_AUTH'); if ($v['user_id'] == $crudAuth['id']) { $crudAuth['user_manage_flag'] = $v['user_manage_flag']; $this->session->set_userdata('CRUD_AUTH', $crudAuth); } if (count($v['tables']) > 0) { $tables = $v['tables']; foreach ($tables as $k1 => $v1) { if (count($v1['permission_type']) > 0) { foreach ($v1['permission_type'] as $permission) { if ((int) $permission > 0) { $p = array(); $p['user_id'] = $v['user_id']; $p['table_name'] = $v1['table_name']; $p['permission_type'] = $permission; $pDao->save($p); } } } } } } } $ary = array(1, 2, 3, 4); foreach ($data as $k => $v) { foreach ($ary as $v1) { if ($v['user_manage_flag'] == 1 || $v['user_manage_flag'] == 3) { $p = array(); $p['user_id'] = $v['user_id']; $p['table_name'] = 'crud_users'; $p['permission_type'] = $v1; $pDao->save($p); } } } foreach ($data as $k => $v) { foreach ($ary as $v1) { if ($v['user_manage_flag'] == 1 || $v['user_manage_flag'] == 3) { $p = array(); $p['user_id'] = $v['user_id']; $p['table_name'] = 'crud_groups'; $p['permission_type'] = $v1; $pDao->save($p); } } } }
public function saveUserPermission() { $this->load->library('session'); $userDao = new ScrudDao('crud_users', $this->db); $pDao = new ScrudDao('crud_user_permissions', $this->db); $data = $this->input->post('data'); $this->db->delete('crud_user_permissions', array('user_id' => $data[0]['user_id'])); if (count($data) > 0) { foreach ($data as $k => $v) { $user = array(); $user['user_manage_flag'] = $v['user_manage_flag']; $user['user_setting_management'] = $v['user_setting_management']; $user['user_global_access'] = $v['user_global_access']; $userDao->update($user, array('id = ?', array($v['user_id']))); $crudAuth = $this->session->userdata('CRUD_AUTH'); if ($v['user_id'] == $crudAuth['id']) { $crudAuth['user_manage_flag'] = $v['user_manage_flag']; $crudAuth['user_setting_management'] = $v['user_setting_management']; $crudAuth['user_global_access'] = $v['user_global_access']; } if (count($v['coms']) > 0) { $coms = $v['coms']; foreach ($coms as $k1 => $v1) { if (count($v1['permission_type']) > 0) { foreach ($v1['permission_type'] as $permission) { if ((int) $permission > 0) { $p = array(); $p['user_id'] = $v['user_id']; $p['com_id'] = $v1['com_id']; $p['permission_type'] = $permission; $pDao->save($p); } } } } } } } }