HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux aritmodecarnaval.es 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: www-data (33)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /home/www/torresncgolf/instalaciones/application/controllers/perfil.php
<?php

class Perfil extends CI_Controller {

    function __construct()
    {
        parent::__construct();
        $this->load->helper(array('form','url','util'));
        $this->load->library('session');
    }

    function index()
    {
        if (!$this->session->userdata('user_logged_in')){
            check_login();
        }

		    $data = array ('login'=> $this->session->userdata('user_login') );

        load_template_ci ('perfil/perfil_view', $data);
    }


	function show($login){
        check_login();
        if (!(is_user_logged_in() && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
        	redirect ( '/wp-login.php?redirect_to='.base_url() );
        }

        $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_ci ('perfil/show_perfil_view', $data);
	}

    function edit($login){
      check_login();
        if (!(is_user_logged_in() && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
            redirect ( '/wp-login.php?redirect_to='.base_url() );
        }

        $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_ci ('perfil/edit_perfil_view', $data);
    }


    function passwd($login){
      check_login();

        if (!(is_user_logged_in() && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
            redirect ( '/wp-login.php?redirect_to='.base_url() );
        }

        $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_ci ('perfil/passwd_perfil_view', $data);
    }

    function change_passwd(){
      check_login();
        $login = dejar_numericos ($this->input->post('login'));
        if (!(is_user_logged_in() && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
              redirect ( '/wp-login.php?redirect_to='.base_url() );
        }

        $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_ci ('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_ci ('perfil/ok_passwd_perfil_view');
    }




    function perform_changes(){
      check_login();
        $login = dejar_numericos ($this->input->post('login'));
        if (!(is_user_logged_in() && ($this->session->userdata('user_login')==$login)) && !$this->session->userdata('user_is_admin')) {
            redirect ( '/wp-login.php?redirect_to='.base_url() );
        }

        $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'));
        $email = $this->input->post('email');


      	if ($login == $this->session->userdata('user_login')){
      		$this->session->set_userdata('alias', $alias);
      	}
		    $this->db->query('update usuario set alias=\''. $alias . '\', email=\''. $email . '\' where login='.$login);
        registrar_evento('login', 'info', 'El usuario '.$login.' ha cambiado su alias de ['.$alias_anterior.'] a ['.$alias.']', $usuarios->row()->id );



        redirect('/instalaciones/index.php/perfil/show/'.$login);
    }



}