Пример #1
0
 function change_password()
 {
     if (isset($_POST['reset'])) {
         $reset = $_POST['reset'];
         $id = $this->nativesession->get('member_id');
         $user = $this->profile_model->get_profile_details_password($id);
         if ($user) {
             $this->load->library('PBKDF2');
             $pbkdf2 = new PBKDF2();
             if ($pbkdf2->validatePassword($reset['current_password'], $user['password'])) {
                 $password = $reset['password'];
                 $password = $pbkdf2->createHash($password);
                 $data = array('password' => $password);
                 if ($this->profile_model->update_profile($id, $data)) {
                     $this->nativesession->set_flashdata('_profile', '<div class="alert alert-success">Successfully Updated Password.</div>');
                     $this->send_email($user);
                 } else {
                     $this->nativesession->set_flashdata('_profile', '<div class="alert alert-danger">Cannot Update Password, Please try again later.</div>');
                 }
             } else {
                 $this->nativesession->set_flashdata('_profile', '<div class="alert alert-danger">Cannot Update Password, Password does not match with the current password.</div>');
             }
         } else {
             $this->nativesession->set_flashdata('_profile', '<div class="alert alert-danger">Cannot Update Password, Please try again later.</div>');
         }
     }
     redirect(base_url($this->nativesession->get('gan_admin_login_map') . '/profile'));
 }
Пример #2
0
 function login_admin()
 {
     $login_success = null;
     if (isset($_POST['login'])) {
         $login = $_POST['login'];
         $this->form_validation->set_rules('login[member_code]', 'Email / Member ID', 'required');
         $this->form_validation->set_rules('login[password]', 'required');
         if ($this->form_validation->run() == FALSE) {
             $login_success = false;
             $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">' . validation_errors() . '</div>');
             $this->index();
         } else {
             // $data = array('member_code' => $login[ 'member_code' ]);
             $potential_user = $this->admin_login_model->get_user_existing_data($login['member_code']);
             if ($potential_user) {
                 $this->load->library('PBKDF2');
                 $admin = $potential_user;
                 $pbkdf2 = new PBKDF2();
                 if ($pbkdf2->validatePassword($login['password'], $admin['password'])) {
                     if ($admin['status'] == 'active') {
                         $login_success = true;
                         if (isset($login['remember_me'])) {
                             // @TODO remember me mechanism
                         }
                         $this->nativesession->set(array('is_logged_in' => true, 'is_gan_admin_logged_in' => true, 'member_id' => $admin['id'], 'member_code' => $admin['member_code'], 'account_type' => $admin['account_type']));
                         // $country_code = function_exists( 'geoip_country_code_by_name' ) ? geoip_country_code_by_name( $_SERVER[ 'REMOTE_ADDR' ] ) : '';
                         $member_id = (string) $admin['id'];
                         $member_data = array('last_login_date' => date('Y-m-d H:i:s'), 'last_login_ip' => $_SERVER['REMOTE_ADDR'], 'last_login_country' => function_exists('geoip_country_code_by_name') ? geoip_country_code_by_name($_SERVER['REMOTE_ADDR']) : '');
                         $this->admin_login_model->update_member($member_id, $member_data);
                         redirect(base_url('admin/home'));
                     } else {
                         if ($member['status'] == 'inactive') {
                             $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">It seems that your account is inactive. please contact your administrator.</div>');
                             $login_success = false;
                             redirect(base_url('login'));
                         } else {
                             $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">Your account is suspended, please contact administrator.</div>');
                             $login_success = false;
                             redirect(base_url('admin/login'));
                         }
                     }
                 } else {
                     $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">Incorrect Email/member id or password ' . $potential_user . '.</div>');
                     $login_success = false;
                     redirect(base_url('admin/login'));
                 }
             } else {
                 $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">Incorrect Member ID or Password : Acces Denied.</div>');
                 $login_success = false;
                 redirect(base_url('admin/login'));
             }
         }
     }
 }
Пример #3
0
 public function login()
 {
     $this->load->helper(array('form', 'url'));
     $this->load->library(array('form_validation'));
     $this->load->model('login_model');
     $res = array();
     if (isset($_POST['data'])) {
         $login = $_POST['data'];
         $this->form_validation->set_rules('data[username]', 'username', 'required');
         $this->form_validation->set_rules('data[password]', 'required');
         if ($this->form_validation->run() == FALSE) {
             $login_success = false;
             $res = ['errors' => false, 'message' => validation_errors()];
         } else {
             $potential_user = $this->login_model->get_user_existing_data($login['username']);
             if ($potential_user) {
                 $this->load->library('PBKDF2');
                 $admin = $potential_user;
                 $pbkdf2 = new PBKDF2();
                 if ($pbkdf2->validatePassword($login['password'], $admin['password'])) {
                     $login_success = true;
                     if (isset($login['remember_me'])) {
                         // @TODO remember me mechanism
                     }
                     $this->nativesession->set(array('user_id' => $admin['id'], 'username' => $admin['username'], 'firstname' => $admin['firstname'], 'lastname' => $admin['lastname'], 'account_type' => $admin['account_type']));
                     // $country_code = function_exists( 'geoip_country_code_by_name' ) ? geoip_country_code_by_name( $_SERVER[ 'REMOTE_ADDR' ] ) : '';
                     /*
                     $member_data = array(
                     				'last_login_date' 	=> date( 'Y-m-d H:i:s' ),
                     				'last_login_ip' 	=> $_SERVER[ 'REMOTE_ADDR' ],
                     				'last_login_country' => function_exists( 'geoip_country_code_by_name' ) ? geoip_country_code_by_name( $_SERVER[ 'REMOTE_ADDR' ] ) : ''
                     				);
                     				
                     $this->admin_login_model->update_member($member_id, $member_data);
                     */
                     $res = ['errors' => true, 'message' => 'success', 'url' => base_url('/dashboard')];
                 } else {
                     $res = ['errors' => false, 'message' => 'Invalid password!'];
                 }
             } else {
                 $res = ['errors' => false, 'message' => 'Login failed!'];
             }
         }
     }
     echo json_encode($res);
 }
Пример #4
0
 function login_member()
 {
     $login_success = null;
     if (isset($_POST['login'])) {
         $login = $_POST['login'];
         $data = array('member_code' => $login['member_code']);
         $potential_user = $this->member_login_model->get_user_existing_data($data);
         if ($potential_user) {
             $this->load->library('PBKDF2');
             $member = $potential_user;
             $pbkdf2 = new PBKDF2();
             if ($pbkdf2->validatePassword($login['password'], $member['password'])) {
                 if ($member['status'] != 'deactivated' && $member['status'] != 'inactive') {
                     $login_success = true;
                     if (isset($login['remember_me'])) {
                         // @TODO remember me mechanism
                     }
                     $this->nativesession->set(array('is_logged_in' => true, 'is_member_logged_in' => true, 'member_id' => $member['id'], 'member_code' => $member['member_code'], 'ms_status' => $member['status']));
                     // $country_code = function_exists( 'geoip_country_code_by_name' ) ? geoip_country_code_by_name( $_SERVER[ 'REMOTE_ADDR' ] ) : '';
                     $member_id = (string) $member['id'];
                     $member_data = array('last_login_date' => date('Y-m-d H:i:s'), 'last_login_ip' => $_SERVER['REMOTE_ADDR'], 'last_login_country' => function_exists('geoip_country_code_by_name') ? geoip_country_code_by_name($_SERVER['REMOTE_ADDR']) : '');
                     $this->member_login_model->update_member($member_id, $member_data);
                     redirect(base_url('members/home'));
                 } else {
                     if ($member['status'] == 'inactive') {
                         $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">It seems that your account is inactive. please contact your administrator.</div>');
                         $login_success = false;
                         redirect(base_url('login'));
                     } else {
                         $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">Your account is suspended, please contact administrator.</div>');
                         $login_success = false;
                         redirect(base_url('login'));
                     }
                 }
             } else {
                 $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">Incorrect Member ID or Password.</div>');
                 $login_success = false;
                 redirect(base_url('login'));
             }
         } else {
             $this->nativesession->set_flashdata('login_status', '<div class="alert alert-danger">Incorrect Member ID or Password.</div>');
             $login_success = false;
             redirect(base_url('login'));
         }
     }
 }