load->library('facebook'); //$this->load->helper('url'); $this->load->library(array('session', 'lib_login')); } public function index() { $data["login_message"] = ""; $this->load->library('form_validation'); $this->form_validation->set_rules('username', 'Username', 'required'); $this->form_validation->set_rules('password', 'Password', 'required'); if ($this->form_validation->run() !== false) { $data['username'] = strtolower($this->input->post('username')); // '08174596144'; $data['password'] = $this->input->post('password'); //'7978'; $data['sessionid'] = rand(10000, 99999) . "A" . rand(10000, 99999); $data['action'] = WRENCHBOARD_ACCOUNT_LOGIN; $this->load->model('backend_model'); $out = array(); // $res = $this->backend_model->wrenchboard_api($data, $out); $res = $this->wrenchboard_api($data, $out); $is_live = $this->backend_model->cfgReadChar("system.live"); // var_dump($out); // print_r($out); if ($res == PHP_LOGIN_OK) { $this->load->model('account_model'); $ret = $this->account_model->username_data($data); if ($res !== false) { $data["login_message"] = "Welcome..."; // yes person has an account $_SESSION['session_id'] = $out["session"]; $_SESSION['username'] = $this->input->post('username'); $_SESSION['name'] = $this->input->post('username'); $_SESSION['firstname'] = $ret->firstname; $_SESSION['lastname'] = $ret->lastname; $_SESSION['email'] = $ret->email; $_SESSION['member_id'] = $ret->id; $_SESSION['log_count'] = 0; $_SESSION['mesaage_count'] = 0; $this->findOffers($_SESSION['email']); $_SESSION['message_snapshot'] = $this->myMessagesSnapshot(); $_SESSION['total_jobs'] = 0; if (trim($ret->profile_pic) == '') { // Show default picture $_SESSION['profile_picture'] = "../smedia/DEFAULTS/default-profile.png"; } else { // show the profile picture $_SESSION['profile_picture'] = "../smedia/" . ($is_live ? "LIVE" : "TEST") . "/profile/" . $ret->profile_pic; } $this->logUser('Account login'); $this->refreshAccountDetail($_SESSION['member_id']); $this->getSessionArray(); redirect('dash'); } } else { $data["login_message"] = "Invalid username or password"; } $res = false; // $this->login_model->verify_login($data); } else { echo validation_errors(); } if ($this->lib_login->is_authenticated()) { $fb_data = $this->lib_login->getData($this->lib_login->get_access_token()); if (isset($fb_data['me'])) { $user = $fb_data['me']; $proceed = false; //$data["login_message"] = $user["id"]."/".$user["name"]."/".$user["email"]."Logout"; $q = "SELECT * FROM members WHERE lower(email)=lower('" . $user["name"] . "') AND password IS NULL AND fb_id='" . $user["id"] . "'"; $query = $this->db->query($q); if (count($query->result_array)) { // Account exists $proceed = true; } else { $q = "SELECT * FROM members WHERE lower(email)=lower('" . $user["name"] . "')"; $query = $this->db->query($q); if (count($query->result_array)) { $data["login_message"] = "The e-mail " . $user["email"] . " is already registered. You should login with your username and password."; } else { // Create account $proceed = true; } } if ($proceed) { $name = (string) $user["name"]; if (trim($name) == "") $name = strtok($user["email"], "@"); $data['fb_id'] = $user["id"]; $data['firstname'] = strtok($name, " "); $data['lastname'] = strtok(" "); $data['email'] = $user["email"]; $data['sessionid'] = rand(10000, 99999) . "A" . rand(10000, 99999); $data['action'] = WRENCHBOARD_FACEBOOK_LOGIN; $this->load->model('backend_model'); $out = array(); $res = $this->backend_model->wrenchboard_api($data, $out); if ($res == PHP_LOGIN_OK) { $this->load->model('account_model'); $ret = $this->account_model->username_data($out); if ($res !== false) { $data["login_message"] = "Welcome..."; // yes person has an account $_SESSION['session_id'] = $out["session"]; $_SESSION['username'] = $ret->username; $_SESSION['name'] = $ret->username; $_SESSION['firstname'] = $ret->firstname; $_SESSION['lastname'] = $ret->lastname; $_SESSION['email'] = $ret->email; $_SESSION['member_id'] = $ret->id; $_SESSION['log_count'] = 0; $_SESSION['mesaage_count'] = 0; $this->findOffers($_SESSION['email']); $_SESSION['message_snapshot'] = $this->myMessagesSnapshot(); $this->logUser('Account login'); $this->refreshAccountDetail($_SESSION['member_id']); $this->getSessionArray(); redirect('dash'); } } } } else if ($data["login_message"] == "") { //$data["login_message"] = "Facebook login failed"; } } if( strlen( $data["login_message"]) > 0 ) { $data["login_message"] = "
" . $data["login_message"] . "
"; } $data['title'] = "Login"; // Capitalize the first letter $data['page_title'] = "Login WrenchBoard"; //$this->load->view('templates/header_boxed', $data); $this->load->view('users/view_login', $data); $this->load->view('users/view_external_footer'); } public function refreshAccountDetail($member_id) { $this->load->model('account_model'); $qr = $this->account_model->loadAccountData($member_id); // print_r($qr); $_SESSION['current_balance'] = $qr[0]['balance']; $_SESSION['active_task'] = $this->account_model->loadActiveTaskCount($member_id); } public function logout() { $this->lib_login->destroy_session(); redirect('login', redirect); } }