1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Userlog_model extends CI_Model {
protected $_table='user_log';
public function __construct(){
parent::__construct();
date_default_timezone_set("Asia/Ho_Chi_Minh");
}
public function add($action, $account_input, $result, $type='BE'){
$dataInsert = array(
'action' => $action,
'time_login' => date('Y-m-d H:i:s'),
'account_input' => $account_input,
'ip_address' => $this->input->ip_address(),
'user_agent' => $this->input->user_agent(),
'type' => $type,
'result' => $result
);
$this->db->insert($this->_table, $dataInsert);
$insert_id = $this->db->insert_id();
return $insert_id;
}
public function update($id, $time_login){
$time_logout = date('Y-m-d H:i:s');
$duration = (int)(strtotime($time_logout) - strtotime($time_login));
$dataUpdate = array(
'time_logout' => $time_logout,
'duration' => $duration
);
$this->db->where('id', $id);
$this->db->update($this->_table, $dataUpdate);
}
public function delete($id){
$this->db->where('id', $id);
$this->db->delete($this->_table);
}
public function getById($id){
$this->db->select($this->_table.'.*');
$this->db->from($this->_table);
$this->db->where($this->_table.'.id', $id);
$query = $this->db->get();
return $query->result_array();
}
public function countAll($dtFrom=NULL, $dtTo=NULL, $filterByIP=NULL, $filterByAccount=NULL, $filterByResult=NULL){
$this->db->select('COUNT(*) AS totalResults');
$this->db->from($this->_table);
if($dtFrom != NULL){$this->db->where('DATE(time_login) >=', $dtFrom);}
if($dtTo != NULL){$this->db->where('DATE(time_login) <=', $dtTo);}
if($filterByIP != NULL){$this->db->like('ip_address', $filterByIP);}
if($filterByAccount != NULL){$this->db->like('account_input', $filterByAccount);}
if($filterByResult != NULL){$this->db->where('UPPER(result)', $filterByResult);}
$query = $this->db->get();
$result = $query->result_array();
if($result){
return $result[0]['totalResults'];
}else{
return 0;
}
}
public function getPagination($record, $start, $dtFrom=NULL, $dtTo=NULL, $filterByIP=NULL, $filterByAccount=NULL, $filterByResult=NULL){
$this->db->select($this->_table.'.*');
$this->db->from($this->_table);
if($dtFrom != NULL){$this->db->where('DATE(time_login) >=', $dtFrom);}
if($dtTo != NULL){$this->db->where('DATE(time_login) <=', $dtTo);}
if($filterByIP != NULL){$this->db->like('ip_address', $filterByIP);}
if($filterByAccount != NULL){$this->db->like('account_input', $filterByAccount);}
if($filterByResult != NULL){$this->db->where('UPPER(result)', $filterByResult);}
$this->db->order_by($this->_table.'.id', 'desc');
$this->db->limit($record, $start);
$query = $this->db->get();
return $query->result_array();
}
}
/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */