Ignore:
Timestamp:
Oct 28, 2014 6:37:49 PM (11 years ago)
Author:
namnd
Message:
 
Location:
pro-violet-viettel/sourcecode/application/modules/frontend
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • pro-violet-viettel/sourcecode/application/modules/frontend/controllers/home.php

    r321 r326  
    2525                        redirect('/frontend/lecture');
    2626                }else{
    27                         $this->load->view ( 'home');
    28                         if (isset($_POST['submit'])){
    29                                 $this->signin();
     27                        $cookie_name = "siteCookie";
     28                        if(isset($_COOKIE[$cookie_name])){
     29                                $arr_user = parse_str($_COOKIE[$cookie_name]);
     30                                $user_info = array( 'username' => $arr_user['username'], "logined_in" => TRUE);
     31                                $this->session->set_userdata('userInfo', $user_info);
     32                                redirect('/frontend/lecture');
     33                        }else{
     34                                $this->load->view ( 'home');
    3035                        }
    3136                }
     
    4348                $username = $this->input->post('username', TRUE);
    4449                $password = $this->input->post('password', TRUE);
     50                $autologin = ($this->input->post('remember_me') == 'on') ? 1 : 0;
    4551                $token = md5($username.self::TOKENPW);
    4652                $this->load->model(array('user_model'));
    4753                $data = $this->user_model->checkLogin('violet', $token, $username, $password);
    48                 echo $data;
    49                 $arr_users = explode("&", $data);
    50                 $str_status = "";
    51                 $str_fullname = "";
    52                 $fullname = "";
    53                 for ($i=0; $i<count($arr_users); $i++)
     54                if ($data == null)
    5455                {
    55                         if (strpos($arr_users[$i], 'status=') !== false)
     56                        $this->session->set_flashdata('login_error', TRUE);
     57                        redirect('/frontend/home');
     58                }else{
     59                        $arr_users = explode("&", $data);
     60                        $str_status = "";
     61                        $str_fullname = "";
     62                        $fullname = "";
     63                        for ($i=0; $i<count($arr_users); $i++)
    5664                        {
    57                                 $str_status = $arr_users[$i];
     65                                if (strpos($arr_users[$i], 'status=') !== false)
     66                                {
     67                                        $str_status = $arr_users[$i];
     68                                }
     69                                if (strpos($arr_users[$i], 'fullname=') !== false)
     70                                {
     71                                        $str_fullname = $arr_users[$i];
     72                                }
    5873                        }
    59                         if (strpos($arr_users[$i], 'fullname=') !== false)
     74                        $arr_status = explode("=", $str_status);
     75                        if ($str_fullname != ""){
     76                                $arr_fullname = explode("=", $str_fullname);
     77                                $fullname = $arr_fullname[1];
     78                        }
     79                        $status = (int)$arr_status[1];
     80                        switch($status)
    6081                        {
    61                                 $str_fullname = $arr_users[$i];
     82                                case 0:         
     83                                        if($autologin == 1){
     84                                                $cookie_name = 'siteCookie';
     85                                                //$cookie_time = 7200;
     86                                                $cookie_time = 3600*24*30;
     87                                                setcookie($cookie_name, 'username='.$username, time() + $cookie_time);
     88                                        }
     89                                        $userdata = array('username' => $username, "logined_in" => TRUE);
     90                                        $this->session->set_userdata('userInfo', $userdata);
     91                                        redirect('/frontend/lecture');
     92                                        break;
     93                                case 1:
     94                                        $this->session->set_flashdata('login_error', TRUE);
     95                                        redirect('/frontend/home');
     96                                        break;
     97                                case 2:
     98                                case 3:
     99                                        $this->session->set_flashdata('login_error', TRUE);
     100                                        redirect('/frontend/home');
     101                                        break;
     102                                case 4:
     103                                        redirect('/frontend/home');
     104                                        break;
     105                                case 10:
     106                                        $this->session->set_flashdata('login_error_token', TRUE);
     107                                        redirect('/frontend/home');
     108                                        break;
     109                                default:
     110                                        break;
    62111                        }
    63                 }
    64                 $arr_status = explode("=", $str_status);
    65                 if ($str_fullname != ""){
    66                         $arr_fullname = explode("=", $str_fullname);
    67                         $fullname = $arr_fullname[1];
    68                 }
    69                 $status = (int)$arr_status[1];
    70                 switch($status)
    71                 {
    72                         case 0:
    73                                 $userdata = array('username' => $username, "logined_in" => TRUE);
    74                                 $this->session->set_userdata('userInfo', $userdata);
    75                                 redirect('/frontend/lecture');
    76                                 break;
    77                         case 1:
    78                                 echo "Thiếu thông tin đăng nhập !";
    79                                 break;
    80                         case 2:
    81                         case 3:
    82                                 echo "Sai username hoặc password !";
    83                                 break;
    84                         case 4:
    85                                 echo "Tài khoản chưa được Activated";
    86                                 break;
    87                         case 10:
    88                                 echo "Sai Token";
    89                                 break;
    90                         default:
    91                                 break;
    92112                }
    93113        }
     
    95115        public function signout()
    96116        {
    97                
     117                $this->session->sess_destroy();
     118                //unset($this->session->userdata);
     119                $cookie_name = "siteCookie";
     120                setcookie($cookie_name, 'username='."", time() - 3600);
     121                redirect('/frontend/home');
    98122        }
    99123
  • pro-violet-viettel/sourcecode/application/modules/frontend/controllers/lecture.php

    r323 r326  
    1313        {
    1414                parent::__construct();
    15                 $this->load->library('session');
    1615        }
    1716
     
    1918        {       
    2019                $user_info = $this->session->userdata('userInfo');
    21                 if ($user_info){
     20                if (isset($user_info)){
    2221                        $this->load->view ( 'lecture_editor');
    23                 }else
    24                 {
     22
     23                }else{
    2524                        redirect('/frontend/home/');
    2625                }
     26               
    2727        }
    2828}
  • pro-violet-viettel/sourcecode/application/modules/frontend/models/user_model.php

    r314 r326  
    1414        {
    1515                $data = $this->vservices->actionExecute('login', array('src' => $src, 'token' => $token, 'username' => $username, 'password' => $password), 'user');
    16                 return $data;
     16                //return $data;
     17                $arr_users = explode("&", $data);
     18                $str_status = "";
     19                $str_fullname = "";
     20                $str_usid = "";
     21                $usid = "";
     22                $fullname = "";
     23                for ($i=0; $i<count($arr_users); $i++)
     24                {
     25                        if (strpos($arr_users[$i], 'status=') !== false)
     26                        {
     27                                $str_status = $arr_users[$i];
     28                        }
     29                       
     30                        if (strpos($arr_users[$i], 'fullname=') !== false)
     31                        {
     32                                $str_fullname = $arr_users[$i];
     33                        }
     34                       
     35                        if (strpos($arr_users[$i], 'us_id=') !== false)
     36                        {
     37                                $str_usid = $arr_users[$i];
     38                        }
     39                }
     40                $arr_status = explode("=", $str_status);
     41                if ($str_fullname != "")
     42                {
     43                        $arr_fullname = explode("=", $str_fullname);
     44                        $fullname = $arr_fullname[1];
     45                }
     46                if ($str_usid !== "")
     47                {
     48                        $arr_usid = explode("=", $str_usid);
     49                        $usid = $arr_usid[1];
     50                }
     51               
     52                $status = (int)$arr_status[1];
     53                if ($status == 0){
     54                        $us_id = (int)$usid;
     55                        $query = "SELECT * FROM tbluser WHERE us_id = ?";
     56                        $result = $this->db->query($query, array($us_id));
     57                        if($result->num_rows() == 1){
     58                                return $data;
     59                        }else
     60                        {
     61                                return null;
     62                        }
     63                }else
     64                {
     65                        return $data;
     66                }
     67               
     68               
    1769        }
    1870       
Note: See TracChangeset for help on using the changeset viewer.