<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class User_model extends CI_Model {
function __construct() {
$this->tableName = 'users';
$this->primaryKey = 'user_id';
}
/*
* Insert / Update facebook profile data into the database
* @param array the data for inserting into the table
*/
public function checkUser($userData = array()){
if(!empty($userData)){
//check whether user data already exists in database with same oauth info
$this->db->select($this->primaryKey);
$this->db->from($this->tableName);
/* $this->db->where(array('oauth_provider'=>$userData['oauth_provider'], 'oauth_uid'=>$userData['oauth_uid'])); */
$this->db->where(array('email'=>$userData['email']));
$prevQuery = $this->db->get();
$prevCheck = $prevQuery->num_rows();
if($prevCheck > 0){
$prevResult = $prevQuery->row_array();
//update user data
$userDataToUpdate['lastlogin'] = time();
$userDataToUpdate['last_activity'] = time();
$userDataToUpdate['oauth_provider'] = $userData['oauth_provider'];
$userDataToUpdate['oauth_uid'] = $userData['oauth_uid'];
$update = $this->db->update($this->tableName, $userDataToUpdate, array('user_id' => $prevResult['user_id']));
//get user ID
$userID = $prevResult['user_id'];
}else{
//insert user data
$userData['signedup_on'] = date('Y-m-d H:i:s');
$userData['verified'] = 1;
$userData['lastlogin'] = time();
$userData['last_activity'] = time();
$insert = $this->db->insert($this->tableName, $userData);
//get user ID
$userID = $this->db->insert_id();
}
}
//return user ID
return $userID?$userID:FALSE;
}
} |