source: pro-violet-viettel/sourcecode/application/modules/admin/models/admin_model.php @ 770

Last change on this file since 770 was 770, checked in by quyenla, 10 years ago

admin roles

File size: 2.6 KB
Line 
1<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
2
3
4class Admin_model extends MY_Model
5{
6        protected $table_name = 'tbladmin';
7        protected $id_name = 'admin_id';
8       
9        function __construct()
10        {
11                parent::__construct();
12        }
13       
14        function check_login($login_name, $password)
15        {
16                $hash_password = md5($password);
17                $query = "SELECT * FROM tbladmin WHERE  login_name = ? AND  passwd = ?";
18                $result = $this->db->query($query, array($login_name, $hash_password));         
19               
20                if($result->num_rows() == 1){
21                    $admin = $result->row(0);
22                    $query="SELECT * FROM tbladminrole LEFT JOIN tblrole ON tbladminrole.role_id=tblrole.role_id WHERE tbladminrole.admin_id= ".$admin->admin_id;
23                    $result2 = $this->db->query($query);
24                    $admin->roles=$result2;
25                    return $admin;
26                     
27                }else
28                {
29                        return null;
30                }
31        }
32       
33        function check_data($login_name)
34        {
35                $this->db->where('login_name', $login_name);
36                $query = $this->db->get($this->table_name);
37                return $query->num_rows();
38        }
39       
40        function get_list_admins($data)
41        {
42                $sql="SELECT * FROM ".$this->table_name;
43                if ($data['keyword'])
44                {
45                        $sql.=" WHERE (phone LIKE '%".$data['keyword']."%' OR login_name LIKE '%".$data['keyword']."%' OR full_name LIKE '%".$data['keyword']."%') ";
46                }
47               
48                $order = "";
49                if ($data['sorting_order'] != "sorting") {
50                        if ($data['sorting_field'] != "status") {
51                                $sort = "DESC";
52                                if ($data['sorting_order'] == "sorting_asc")
53                                        $sort = "ASC";
54                                $order = "ORDER BY " . $data['sorting_field'] . " " . $sort;
55                        }
56                }
57                return $this->db->query($sql." ".$order." LIMIT ".$data['start'].", ".$data['perpage']." ")->result_array();
58        }
59
60        function get_total_admins($data)
61        {
62                $sql="SELECT COUNT(".$this->id_name.") AS total FROM ".$this->table_name;
63                if (isset($data['keyword']))
64                {
65                        $sql.=" WHERE (login_name LIKE '%".$data['keyword']."%' OR full_name LIKE '%".$data['keyword']."%') ";
66                }
67                $query = $this->db->query($sql);
68                $result = $query->row_array();
69                return $result['total'];
70        }
71       
72        function check_password($admin_id, $passwd)
73        {
74                $hash_passwd = md5($passwd);
75                $sql = "SELECT * FROM ".$this->table_name." WHERE admin_id = ? AND  passwd = ?";
76                $result = $this->db->query($sql, array($admin_id, $hash_passwd));
77                if($result->num_rows() == 1){
78                        return true;
79                }else
80                {
81                        return false;
82                }
83               
84        }
85       
86        function get_roles()
87        {
88                $sql = "SELECT * FROM tbladminrole";
89                $query = $this->db->query($sql);
90                $result = $query->result_array();
91                return $result;
92        }
93}
Note: See TracBrowser for help on using the repository browser.