<?php /** * Created by PhpStorm. * User: Administrator * Date: 25/12/2015 * Time: 2:13 CH */ class AdminSetting extends CI_Controller { public function __construct(){ parent::__construct(); // date_default_timezone_set("Asia/Ho_Chi_Minh"); // $this->load->model('admin_model'); $this->load->model('actionlog_model'); // } //================================================================================================================== public function changePassword($id){ $this->_data['adminById'] = $this->admin_model->getById($id); $userAdmin = $this->_data['adminById']; // Kiểm tra quyền sửa: nếu là dcv_super_admin thì chỉ người đó mới có quyền sửa if($this->session->userdata('id') != $id){ // Ghi log $this->actionlog_model->add('RESET_PASSWORD', 'Cố ý cập nhật mật khẩu người khác có ID='.$id, 'AdminModel', 'admin', $id); // $this->session->set_flashdata('error', 'Bạn không có quyền cập nhật mật khẩu của user khác.'); redirect(base_url().'usersetting/changePassword/'.$this->session->userdata('id')); } // Kiểm tra trùng giá trị nếu thay đổi ở form if($this->input->post('password') != ''){ $pwd_validate = '|required|min_length[8]'; $re_pwd_validate = '|required||min_length[8]|matches[password]'; } else{ $pwd_validate = ''; $re_pwd_validate = ''; } // Thiết lập validate $this->form_validation->set_rules('old_password', 'Mật khẩu cũ', 'required|trim|max_length[32]|xss_clean|callback_check_admin_old_password' ); $this->form_validation->set_rules('password', 'Mật khẩu', 'required|trim|max_length[32]|xss_clean'.$pwd_validate ); $this->form_validation->set_rules('password2', 'Nhập lại mật khẩu', 'required|trim|max_length[32]|xss_clean'.$re_pwd_validate ); // Thiết lập message $this->form_validation->set_message('required', '<li>Bắt buộc nhập hoặc chọn.</li>'); $this->form_validation->set_message('is_unique', '<li>Đã tồn tại.</li>'); $this->form_validation->set_message('max_length', '<li>Tối đa 32 ký tự.</li>'); $this->form_validation->set_message('min_length', '<li>Tối thiểu 8 ký tự.</li>'); $this->form_validation->set_message('matches', '<li>Nhập lại mật khẩu không đúng.</li>'); // Xử lý form đăng nhập if($this->form_validation->run($this) == FALSE){ $this->_data['old_password'] = $this->input->post('old_password'); $this->_data['password'] = $this->input->post('password'); $this->_data['password2'] = $this->input->post('password2'); // $this->_data['functionName'] = 'Người dùng hệ thống'; $this->_data['action'] = 'changePassword'; $this->_data['titlePage'] = 'Người dùng hệ thống'; $this->_data['loadPage'] = 'backend/admin_setting/change_pwd_admin_view'; $this->load->view('backend/admin_template_view', $this->_data); }else{ // Insert Nhóm vào DB $dataUpdate = array(); if(trim($this->input->post('password')) != ''){ $dataUpdate['password'] = MyHelper::genKeyCode(trim($this->input->post('password'))); $this->admin_model->update($id, $dataUpdate); $this->session->set_flashdata('success', 'Cập nhật thành công mật khẩu.'); // Ghi log $this->actionlog_model->add('RESET_PASSWORD', 'Cập nhật mật khẩu người dùng', 'AdminModel', 'admin', $id); // } redirect(base_url('adminSetting/changePassword/'.$userAdmin[0]['id'])); } } public function check_admin_old_password($pwd){ $userAdmin = $this->_data['adminById']; if(MyHelper::genKeyCode($pwd) != $userAdmin[0]['password']){ $this->form_validation->set_message('check_admin_old_password', '<li>Mật khẩu cũ không đúng.</li>'); return FALSE; }else{ return TRUE; } } public function userInfo($id){ // Kiểm tra quyền xem: chỉ xem thông tin của mình if($this->session->userdata('id') != $id){ // Ghi log $this->actionlog_model->add('SHOW_USER_INFO', 'Cố ý xem thông tin cá nhân người khác có ID='.$id, 'AdminModel', 'admin', $id); // $this->session->set_flashdata('error', 'Bạn không có quyền xem thông tin cá nhân người khác.'); redirect(base_url('adminSetting/userInfo/'.$this->session->userdata('id'))); } // $this->_data['adminById'] = $this->admin_model->getById($id); // $this->_data['functionName'] = 'Người dùng hệ thống'; $this->_data['action'] = 'userInfo'; $this->_data['titlePage'] = 'Thông tin tài khoản'; $this->_data['loadPage'] = 'backend/admin_setting/admin_info_view'; $this->load->view('backend/admin_template_view', $this->_data); } }