Пример #1
0
 private function update()
 {
     $userData = $this->session->userdata('CRUD_AUTH');
     if ($userData['group']['group_name'] == "Administrators") {
         $this->load->model('admin/admin_menu');
     } else {
         $this->load->model('admin/home_menu');
     }
     $this->load->model('user/user_menu');
     $this->load->add_package_path(APPPATH . 'third_party/scrud/');
     $var = array();
     $var['update_flag'] = 1;
     if ($userData['group']['group_name'] == "Administrators") {
         $var['main_menu'] = $this->admin_menu->fetch('account');
     } else {
         $var['main_menu'] = $this->home_menu->fetch('account');
     }
     $var['user_menu'] = $this->user_menu->fetch('password');
     $errors = array();
     $crudAuth = $this->session->userdata('CRUD_AUTH');
     if ($this->input->post('current_password') == '') {
         $errors['current_password'] = '******';
     }
     if ($this->input->post('new_password') == '') {
         $errors['new_password'] = '******';
     }
     if ($this->input->post('confirm_new_password') == '') {
         $errors['confirm_new_password'] = '******';
     }
     if (count($errors) <= 0) {
         if ($this->input->post('new_password') != $this->input->post('confirm_new_password')) {
             $errors['confirm_new_password'] = '******';
         }
     }
     if (count($errors) <= 0) {
         $userDao = new ScrudDao('crud_users', $this->db);
         $params = array();
         $params['conditions'] = array('id = ? and user_password = ?', array($crudAuth['id'], sha1($this->input->post('current_password'))));
         $rs = $userDao->findFirst($params);
         if (empty($rs)) {
             $errors['current_password'] = "******";
         }
     }
     if (count($errors) <= 0) {
         $data['id'] = $crudAuth['id'];
         $data['user_password'] = sha1($this->input->post('new_password'));
         $userDao->save($data);
     }
     $var['errors'] = $errors;
     $var['main_content'] = $this->load->view('user/password', $var, true);
     $this->load->view('layouts/user/default', $var);
 }
Пример #2
0
 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);
             }
         }
     }
 }
Пример #3
0
 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);
                             }
                         }
                     }
                 }
             }
         }
     }
 }