<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Users extends CI_Controller 
{
	 function __construct() 
	 {
        parent::__construct();
        $this->load->database();
        $this->load->model('User_Model');
        $this->load->model('Common');
         $x = $this->session->userdata('logged');
         if ($x['email'] == '') 
         {
                return redirect('Welcome/index', 'refresh');
          }
    }

    public function index()
    {
        $page =(isset($_GET['page'])) ? $_GET['page'] : 0;
        $query=$this->db->select('users.*')->from('users')->order_by('id','desc')->limit(20,($page*20))->get();
        $num_rows=$this->db->order_by('id', 'desc')->get('users')->num_rows();
        $data['users']=$query->result_array();
        $data['links']=$this->pagi->pagination1('admin/users',$num_rows,20);
        $this->load->view('users/index',$data);
    }



    public function edit($id='')
    {
        if ($this->input->server('REQUEST_METHOD') == 'POST') 
        {
        $this->load->helper(array('form'));
         $this->load->library('form_validation');
         $this->form_validation->set_rules('first_name', 'First Name', 'required'); 
         $this->form_validation->set_rules('last_name', 'Last Name', 'required'); 
         $this->form_validation->set_rules('email', 'Email', 'required'); 
         $this->form_validation->set_rules('phone','Phone','required');
            if ($this->form_validation->run() == FALSE) 
             { 
                 $data['users']=$this->db->where('id',$id)->get('users')->row_array();
                 $this->load->view('users/edit',$data);
             } 
             else 
             { 
                if($_FILES['profile']['name']!='')
                {
                     $journalName = str_replace(' ', '_', $_FILES['profile']['name']);
                $config['file_name'] = time() . $journalName;
                $config['upload_path'] = './uploads/users/';
                $config['allowed_types'] = 'gif|jpg|png|JPG|JPEG|jpeg';
                $this->upload->initialize($config);
                $this->upload->do_upload('profile');
                $_POST['profile'] = $config['file_name'];
                unset($_POST['email']);

                }
                if($this->db->where('id',$id)->update('users',$_POST))
                {
                    $this->session->set_flashdata('msg', 'User Successfully Updated');
                    return redirect(base_url('admin/users'),'refresh');
                }
                else
                {
                    $this->session->set_flashdata('err', 'Please try Again After SomeTimes');
                    return redirect(base_url('admin/users/edit/'.$id),'refresh');
                }
             }
        }
        else
        {
            $data['users']=$this->db->where('id',$id)->get('users')->row_array();
            $this->load->view('users/edit',$data);
        }
    }

    public function view($id='')
    {
         $data['users']=$this->db->where('id',$id)->get('users')->row_array();
         $this->load->view('users/view',$data);
    }

    public function delete($id='')
    {
        if($this->db->where('id',$id)->delete('users'))
        {
            $this->session->set_flashdata('msg', 'Success Deleted users');
        }
        else
        {
            $this->session->set_flashdata('err', 'Please try After Sometimes...');
        }
        return redirect(base_url('admin/users'),'refresh');
    }

}
