File: /var/www/gestor-horarios.bradford/app/controllers/LoginController.php
<?php
class LoginController extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->helper(array('model', 'form_helper'));
$this->load->library('session');
$this->load->library('Bcrypt');
}
public function index()
{
if (!empty($this->session->userdata('token_usuario'))) {
valida_sesion($this->session->userdata('token_usuario'), true);
}
$post = $this->input->post();
if (!empty($post)) {
unset($where);
$hash = sha1(mt_rand());
$where['rut'] = str_replace('.', '', strtoupper(trim($post['rut'])));
$where['password'] = hash('sha1', $post['password']);
$where['perfiles_id'] = 100;
$staff = get_row_by_where('usuarios', $where);
if (!empty($staff)) {
if (!$staff->activo) {
$data['error'] = '* El Usuario se encuentra inactivo informe a soporte.';
} else {
$staff_trabajador = get_row_by_where('trabajadores', array('rut' => $where['rut'], 'activo' => TRUE));
$data = array(
'token_usuario' => $hash,
'rt_staff' => $staff_trabajador->id,
'rt_staff_user' => $staff->id,
'habilitado' => TRUE,
'type' => $staff_trabajador->perfiles_id,
'jefe' => $staff_trabajador->es_jefe,
'admin' => $staff->es_admin
);
$this->session->set_userdata($data);
update_row('usuarios', array('update_time' => nowServer(), 'remember_token' => $hash), $staff->id);
redirect('dashboard');
}
}else{
$data['error'] = '* El Usuario y/o ContraseƱa son incorrectos.';
}
}
$data['main_content'] = 'login/login_view';
$this->load->view('shared/layout_login', $data);
}
public function logout()
{
$this->session->sess_destroy();
$data['main_content'] = 'login/logout_view';
$this->load->view('shared/layout_login', $data);
}
public function test()
{
pre_die('aaaaaaa');
}
}