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/admin.php
<?php

class Admin extends CI_Controller {

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

	function index()
	{
				check_login();
        load_template_ci ('admin/admin_view');
	}

    function log(){
			check_login();
    	if (!is_user_logged_in()){
				    redirect ( '/wp-login.php?redirect_to='.base_url() );

      }
			if (!$this->session->userdata('user_is_admin')){
				redirect('reservas');
			}

		$data = array();

		$eventos = $this->db->query('select * from log order by fecha desc limit 100');
        // Comprobamos que la actividad existe
        if ($eventos->num_rows()==0){
            echo 'No se encontraron eventos que mostrar.';
            return;
        }
        $data['eventos'] = $eventos;

		load_template_ci('admin/log_view', $data);
    }

		function editaccount(){
			check_login();
    	if (!is_user_logged_in()){
				    redirect ( '/wp-login.php?redirect_to='.base_url() );

      }
			if (!$this->session->userdata('user_is_admin')){
				redirect('reservas');
			}

			load_template_ci('admin/editaccount_view');
		}


		function populate_account(){
			check_login();
    	if (!is_user_logged_in()){
				    redirect ( '/wp-login.php?redirect_to='.base_url() );

      }
			if (!$this->session->userdata('user_is_admin')){
				redirect('reservas');
			}
				$login = dejar_numericos ($this->input->post('account_id'));
				$usuarios = $this->db->query('select * from usuario where login='.$login);
				if ($usuarios->num_rows()<=0){
					$data = array('mensaje'=>'La cuenta no existe.','login'=>$login);
						load_template_ci ('admin/error_view', $data );
						return;
				}
				$usuario = $usuarios->row();

				$data = array("account"=>$usuario);
				load_template_ci ('admin/editformaccount_view',$data);
		}

		function perform_changes_account(){
			check_login();

    	if (!is_user_logged_in()){
				    redirect ( '/wp-login.php?redirect_to='.base_url() );

      }
			if (!$this->session->userdata('user_is_admin')){
				redirect('reservas');
			}

				$login = dejar_numericos ($this->input->post('account_login'));
				$usuarios = $this->db->query('select * from usuario where login='.$login);

				if ($usuarios->num_rows()<=0){
					$data = array('mensaje'=>'La cuenta no existe.','login'=>$login);
						load_template_ci ('admin/error_view', $data );
						return;
				}
				$usuario = $usuarios->row();


        $alias = dejar_alfanumericos_y_espacios ($this->input->post('account_alias'));
				$passwd_clear = dejar_alfanumericos_y_espacios ($this->input->post('account_passwd'));
				$passwd = md5( $passwd_clear );
				$email = $this->input->post('account_email');

				if ( strlen($passwd_clear)>0 ){
					if ($usuario->admin==1){
						$data = array('mensaje'=>'Las contraseñas de las cuentas de administrador no pueden cambiarse desde la web.','login'=>$login);
							load_template_ci ('admin/error_view', $data );
							return;
					}
				  $this->db->query('update usuario set alias=\''. $alias . '\',passwd=\''. $passwd . '\',email=\''. $email . '\' where login='.$login);
					registrar_evento('admin', 'info', 'Se ha modificado '.$login.' cambiando su alias a ['.$alias.'] y password.', $this->session->userdata('user_id') );

			  }
				else {
					$this->db->query('update usuario set alias=\''. $alias . '\',email=\''. $email . '\' where login='.$login);
					registrar_evento('admin', 'info', 'Se ha modificado la cuenta '.$login.' cambiando su alias a ['.$alias.']', $this->session->userdata('user_logged_in') );

				}

				$data = array('mensaje'=>'La cuenta ha sido modificada satisfactoriamente.');
				load_template_ci ('admin/ok_view', $data );

    }


}