File "usuarios.php"

Full Path: /home/limout/public_html/CablesPireV2-20240827214508/usuarios.php
File size: 7.48 KB
MIME-type: text/x-php; charset=utf-8
Charset: utf-8

<?php
    //ini_set('display_errors', 1);
    //error_reporting(E_ALL);
    require_once( 'config.php' ); 
	require_once( 'makeSecure.php' ); 
	require_once( 'includes/smarty.php' );
	
	// INICIO Cargamos las clases que necesitamos
	include_once( 'includes/clases/clase_general.php' );
	include_once( 'includes/clases/clase_usuarios.php' );
	include_once( 'includes/clases/clase_empresas.php' );
	// FIN Cargamos las clases que necesitamos	

	// Datos genéricos
	require_once( 'includes/comunesAdmin.php' );
	
	$aMensajes = array(
        '0' => '<i class="fa fa-times"></i> Error al crear el usuario',
	    '1' => '<i class="fa fa-check"></i> Usuario creado correctamente',
	    '2' => '<i class="fa fa-check"></i> Usuario borrado correctamente',
	    '3' => '<i class="fa fa-check"></i> Usuario actualizado correctamente'
	);
	
	$fp = fopen( "logs/" . $_SESSION['id_usuario'] . "_logUsuarios_". date( 'Y-m-d' ) . ".txt", "a");
	fwrite($fp, "[" . date('d-m-Y H:i:s') . "] Accion: " . $_GET[ 'accion' ] . "\n" );
	fwrite($fp, "[" . date('d-m-Y H:i:s') . "] POST: " . json_encode( $_POST ) . "\n" );
	fwrite($fp, "[" . date('d-m-Y H:i:s') . "] GET: " . json_encode( $_GET ) . "\n" );
	
	switch(@$_GET['accion'])
		{
		    case 'crear':
		        $smarty->assign('sAction', 	$sUrl . 'usuarios.php?accion=confirmar_crear');
		        $smarty->display('usuarios/formulario.tpl');
	        break;
		    case 'confirmar_crear':
		        $oUsuario = new usuarios;
    		        $oUsuario->sNombre        = trim( $_POST[ 'nombreUsuario' ] );
    		        $oUsuario->sEmail         = trim( $_POST[ 'emailUsuario' ] );
    		        $oUsuario->sContrasena    = trim( $_POST[ 'contrasenaUsuario' ] );
    		        $oUsuario->iTipoUsuario   = (isset( $_POST[ 'tipoUsuario' ] ) && $_POST[ 'tipoUsuario' ] != '' ) ? trim( $_POST[ 'tipoUsuario' ] ) : 0;
		        
		        $iNewUsuarioId = $oUsuario->crea_usuario();
		        
		        unset( $oUsuario );
		        
		        // Enviamos el email al usuario
		        $para      = trim( $_POST[ 'emailUsuario' ] );
		        $titulo    = 'Accesos al área privada Cables Pire';
		        $mensaje   = '<img src="https://www.limout.es/cablespire/img/logo-pire.png" />';
		        $mensaje   .= '<h3>Hola ' . trim( $_POST[ 'nombreUsuario' ] ) . '</h3>';
		        $mensaje   .= '<p>A continuación le facilitamos sus credenciales de acceso al área privada de Cables Pire</p>';
		        $mensaje   .= '<p><strong>URL:</strong> <a href="https://www.limout.es/cablespire">https://www.limout.es/cablespire</a></p>';
		        $mensaje   .= '<p><strong>Usuario:</strong> ' . trim( $_POST[ 'emailUsuario' ] ) . '</p>';
		        $mensaje   .= '<p><strong>Contraseña:</strong> ' . trim( $_POST[ 'contrasenaUsuario' ] ) . '</p>';
		        $mensaje   .= '<p>Saludos</p>';
		        $cabeceras = 'From: info@cablespire.com' . "\r\n" .
		  		        'Reply-To: info@cablespire.com' . "\r\n" .
		  		        'X-Mailer: PHP/' . phpversion();
		        
		        $cabeceras .= 'MIME-Version: 1.0' . "\r\n";
		        $cabeceras .= 'Content-type: text/html; charset=utf-8' . "\r\n";
		        
		        mail($para, $titulo, $mensaje, $cabeceras);
		        
		        if( $iNewUsuarioId > 0 )
		            header('location: ' . $sUrl . 'usuarios.php?accion=editar&id_usuario=' . $iNewUsuarioId . '&mensaje=1' );
		        else
		            header('location: ' . $sUrl . 'usuarios.php?accion=listado&mensaje=0' );
	        break;
		    case 'editar':
		        $oUsuario = new usuarios;
		        $oUsuario->iUsuarioId = (int)$_GET[ 'id_usuario' ];
		        $oUsuario->busca_usuario();
		        $oUsuario->busca_usuario_empresas();
		        
		        $oEmpresas = new empresas;
		        $oEmpresas->busca_empresas( 1 );
		        
		        $smarty->assign('sAction', 	  $sUrl . 'usuarios.php?accion=confirmar_editar');
		        $smarty->assign('aUsuario',   $oUsuario->aUsuario );
		        $smarty->assign('aEmpresas',  $oEmpresas->aEmpresas );
		        $smarty->assign('sMensaje', $aMensajes[ $_GET[ 'mensaje' ] ] );
		        $smarty->display('usuarios/formulario.tpl');
	        break;
		    case 'confirmar_editar':
		        $oUsuario = new usuarios;
		        $oUsuario->iUsuarioId     = (int)$_POST[ 'iUsuarioId' ];
		        $oUsuario->sNombre        = trim( $_POST[ 'nombreUsuario' ] );
		        $oUsuario->sEmail         = trim( $_POST[ 'emailUsuario' ] );
		        $oUsuario->iTipoUsuario   = trim( $_POST[ 'tipoUsuario' ] );
		        $oUsuario->sContrasena    = trim( $_POST[ 'contrasenaUsuario' ] );
		        $oUsuario->bActivo        = ( isset( $_POST[ 'estadoUsuario' ] ) && $_POST[ 'estadoUsuario' ] != '' ) ? '1' : '0';
		        
		        $oUsuario->actualiza_usuario();
		        
		        if( $oUsuario->iTipoUsuario == '1' )
    		        $oUsuario->borrar_usuario_empresas();
		        else
    		        if( isset( $_POST[ 'iEmpresa' ] ) && $_POST[ 'iEmpresa' ] > 0 )
        		        {
        		            $oUsuario->asigna_empresa( $_POST[ 'iEmpresa' ] );
        		        }
		        
		        if( trim( $_POST[ 'contrasenaUsuario' ] ) != '' )
    		        {
    		            // Enviamos el email al usuario
    		            $para      = trim( $_POST[ 'emailUsuario' ] );
    		            $titulo    = 'Accesos al área privada Cables Pire';
    		            $mensaje   = '<img src="https://www.limout.es/cablespire/img/logo-pire.png" />';
    		            $mensaje   .= '<h3>Hola ' . trim( $_POST[ 'nombreUsuario' ] ) . '</h3>';
    		            $mensaje   .= '<p>Sus credenciales de acceso al área privada de Cables Pire han sido actualizados.</p>';
    		            $mensaje   .= '<p>A continuación le facilitamos sus nuevas credenciales de acceso.</p>';
    		            $mensaje   .= '<p><strong>URL:</strong> <a href="https://www.limout.es/cablespire">https://www.limout.es/cablespire</a></p>';
    		            $mensaje   .= '<p><strong>Usuario:</strong> ' . trim( $_POST[ 'emailUsuario' ] ) . '</p>';
    		            $mensaje   .= '<p><strong>Contraseña:</strong> ' . trim( $_POST[ 'contrasenaUsuario' ] ) . '</p>';
    		            $mensaje   .= '<p>Saludos</p>';
    		            $cabeceras = 'From: info@cablespire.com' . "\r\n" .
    		  		            'Reply-To: info@cablespire.com' . "\r\n" .
    		  		            'X-Mailer: PHP/' . phpversion();
    		            
    		            $cabeceras .= 'MIME-Version: 1.0' . "\r\n";
    		            $cabeceras .= 'Content-type: text/html; charset=utf-8' . "\r\n";
    		            
    		            mail($para, $titulo, $mensaje, $cabeceras);
    		        }
		        
		        header('location: ' . $sUrl . 'usuarios.php?accion=editar&id_usuario=' . $oUsuario->iUsuarioId . '&mensaje=3' );
		    break;
		    case 'borrar':
		        if( isset( $_GET[ 'id_usuario' ] ) && (int)$_GET[ 'id_usuario' ] > 0 )
    		        {
    		            $oUsuario = new usuarios;
    		            $oUsuario->iUsuarioId = (int)$_GET[ 'id_usuario' ];
    		            $oUsuario->borrar_usuario();
    		            
    		            unset( $oUsuario );
    		            
    		            header('location: ' . $sUrl . 'usuarios.php?accion=listado&mensaje=2' );
    		        }
	        break;
			default:
				$oUsuarios = new usuarios;
				$oUsuarios->busca_usuarios();	
				
				$smarty->assign('aUsuarios',$oUsuarios->aUsuarios );
				$smarty->assign('iMensaje', $_GET[ 'mensaje' ] );
				$smarty->assign('sMensaje', $aMensajes[ $_GET[ 'mensaje' ] ] );
				$smarty->assign('accion', 	'listado');
				
				unset( $oUsuarios );
				
				$smarty->display('usuarios/listado.tpl');
			break;
		}
	
	fclose($fp);
?>