(description) * @version GIT: $Id$ * @since Version 0.0.1 * @filesource * */ class Auth extends MY_Controller { /** * [__construct description] * * @method __construct */ public function __construct() { // To inherit directly the attributes of the parent class. parent::__construct(); $this->load->model('auth_model'); $this->load->model('MY_Model'); } /** * [index description] * * @method index * * @return [type] [description] */ public function index() { //echo site_url(); // Example if(check_auth()) { redirect('dashboard'); } else{ $this->layout->load_view('auth/login'); } // $this->load->view('welcome/welcome_message'); // $this->load->view('welcome_message'); } public function authendicate() { $user = $this->auth_model->validate_user(); // print_r($user);die(); // echo hash_password('password');die(); if (empty($user)) { $this->session->set_flashdata('msg', "username not avaiable"); redirect('login'); } if (!empty($user) && $user->is_active == 0) { $this->session->set_flashdata('msg', "deactivate user"); redirect('login'); } // if (!empty($user)) { // if ($user->is_active == 0) { // $this->session->set_flashdata('msg', $user); // redirect('login'); // } // else{ // $this->session->set_flashdata('msg', $user); // redirect('login'); // } // } // if (!empty($user) && $user->status == 0) { // // account pending // echo json_encode(array('st'=>2)); // exit(); // } // if (!empty($user) && $user->status == 2) { // // account suspend // echo json_encode(array('st'=>3)); // exit(); // } // if ($user->role == 'user') { // $diff = date_difference($user->created_at); // if (!empty($user) && $user->email_verified == 0 && $this->settings->enable_email_verify == 1 && $diff < 2) { // // email verify // echo json_encode(array('st'=>4)); // exit(); // } // } // if ($user->role == 'subadmin' || $user->role == 'editor' || $user->role == 'viewer') { // $user_id = $user->parent_id; // }else{ // $user_id = $user->id; // } // if valid if(password_verify($this->input->post('password'), $user->password)) { $data = array( 'id' => $user->id, 'name' => $user->name, //'thumb' => $user->thumb, 'email' =>$user->email, 'role' =>$user->role, 'action_permit' =>$user->action_permit, 'business_id' =>$user->business_id, 'logged_in' => TRUE ); $data = $this->security->xss_clean($data); $this->session->set_userdata($data); redirect('dashboard'); } // pass the value 1 when the username or password is wrong $this->session->set_flashdata('msg',"password doesn't match"); redirect('login'); } public function logout() { $this->auth_model->logout(); redirect('login'); } public function lost_your_password() { $this->layout->load_view("auth/otp_verification"); } public function send__mail(){ // otp generator $otp = rand ( 1000 , 9999 ); $data['otp'] = $otp; $mail = $this->input->post('email'); $user = $this->auth_model->validate_user(); if (empty($user)) { $data['csrf_hash'] = $this->security->get_csrf_hash(); $data['status'] = "failed"; echo json_encode($data); } else{ // $to = "suseendhiran1999@gmail.com"; // $mail // $subject = "OTP"; // $message = $otp; // $success_msg = $this->auth_model->send_email($to, $subject, $message); $data['csrf_hash'] = $this->security->get_csrf_hash(); $data['status'] = "success"; $data['id'] = $user->id; echo json_encode($data); } } public function verify_otp(){ $generate_otp = $this->input->post('hidden_otp'); $user_entered_otp = $this->input->post('otp'); $id = $this->input->post('id'); if ($generate_otp == $user_entered_otp) { $data['generate_otp'] = $generate_otp; $data['user_entered_otp'] = $user_entered_otp; $data['csrf_hash'] = $this->security->get_csrf_hash(); $data['status'] = "success"; $data['id'] = $id; $htmlPage = $this->load->view('change_password_form.php',$data,true); $data['htmlPage'] = $htmlPage; echo json_encode($data); } else { $data['csrf_hash'] = $this->security->get_csrf_hash(); $data['status'] = "failed"; echo json_encode($data); } } public function change_password() { $id = $this->input->post('id'); $data['password'] = hash_password($this->input->post('password')); $table="users"; $userData = $this->MY_Model->edit_option($data, $id, $table); redirect('login'); } }