File: /home/www/torresncgolf/instalaciones/system_old/application/controllers/perfil.php
<?php
class Perfil extends Controller {
function Perfil()
{
parent::Controller();
$this->load->helper(array('form','url','util'));
$this->load->library('session');
}
function index()
{
if (!$this->session->userdata('user_logged_in')){
redirect('login');
}
$data = array ('login'=> $this->session->userdata('user_login') );
load_template ('perfil/perfil_view', $data);
}
function show($login){
if (!($this->session->userdata('user_logged_in') && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
redirect('login');
}
$usuarios = $this->db->query('select * from usuario where login='.$login);
if ($usuarios->num_rows()==0){
echo 'El usuario no existe.';
return;
}
$usuario = $usuarios->row();
$data = array("usuario" => $usuario);
load_template ('perfil/show_perfil_view', $data);
}
function edit($login){
if (!($this->session->userdata('user_logged_in') && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
redirect('login');
}
$usuarios = $this->db->query('select * from usuario where login='.$login);
if ($usuarios->num_rows()<=0){
echo 'El usuario no existe.';
return;
}
$usuario = $usuarios->row();
$data = array("usuario" => $usuario);
load_template ('perfil/edit_perfil_view', $data);
}
function passwd($login){
if (!($this->session->userdata('user_logged_in') && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
redirect('login');
}
$usuarios = $this->db->query('select * from usuario where login='.$login);
if ($usuarios->num_rows()<=0){
echo 'El usuario no existe.';
return;
}
$usuario = $usuarios->row();
$data = array("usuario" => $usuario);
load_template ('perfil/passwd_perfil_view', $data);
}
function change_passwd(){
$login = dejar_numericos ($this->input->post('login'));
if (!($this->session->userdata('user_logged_in') && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
redirect('login');
}
$md5_new_passwd = md5(dejar_alfanumericos($this->input->post('new_passwd')));
$md5_current_passwd = md5(dejar_alfanumericos($this->input->post('current_passwd')));
$usuarios = $this->db->query('select * from usuario where login='.$login.' and passwd=\''.$md5_current_passwd.'\'');
if ($usuarios->num_rows()<=0){
$data = array('mensaje'=>'La contraseƱa actual es erronea.','login'=>$login, 'passwd'=>$this->input->post('current_passwd'));
load_template ('perfil/error_passwd_perfil_view', $data );
return;
}
$usuario = $usuarios->row();
$this->db->query('update usuario set passwd=\''. $md5_new_passwd . '\' where login='.$login);
registrar_evento('perfil', 'info', 'El usuario '.$login.' ha cambiado su contraseƱa.', $usuarios->row()->id );
load_template ('perfil/ok_passwd_perfil_view');
}
function perform_changes(){
$login = dejar_numericos ($this->input->post('login'));
if (!($this->session->userdata('user_logged_in') && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
redirect('login');
}
$usuarios = $this->db->query('select * from usuario where login='.$login);
if ($usuarios->num_rows() <= 0){
echo 'El usuario no existe.';
return;
}
$alias_anterior = $usuarios->row()->alias;
$alias = dejar_alfanumericos_y_espacios ($this->input->post('alias'));
if ($alias != $alias_anterior){
if ($login == $this->session->userdata('user_login')){
$this->session->set_userdata('alias', $alias);
}
$this->db->query('update usuario set alias=\''. $alias . '\' where login='.$login);
registrar_evento('login', 'info', 'El usuario '.$login.' ha cambiado su alias de ['.$alias_anterior.'] a ['.$alias.']', $usuarios->row()->id );
}
redirect('perfil/show/'.$login);
}
}