File "categorias.php"

Full Path: /home/limout/public_html/CablesPireV2-20240827214508/categorias.php
File size: 6.43 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_categorias.php' );
	include_once( 'includes/clases/clase_productos.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 la categoría',
	    '1' => '<i class="fa fa-check"></i> Categoría creada correctamente',
	    '2' => '<i class="fa fa-check"></i> Categoría borrada correctamente',
	    '3' => '<i class="fa fa-check"></i> Categoría actualizada correctamente',
	    '4' => '<i class="fa fa-check"></i> Valor borrado correctamente',
	    '5' => '<i class="fa fa-times"></i> No se ha podido borrar el valor seleccionado',
	    '6' => '<i class="fa fa-times"></i> No se ha podido borrar la categoría seleccionada',
	);
	
	switch(@$_GET['accion'])
		{
		    case 'crear':
		        $oCategorias = new categorias;
		        $oCategorias->busca_categorias();
		        
		        $smarty->assign('sAction', 	                  $sUrl . 'categorias.php?accion=confirmar_crear');
		        $smarty->assign('aCategorias',                $oCategorias->aCategorias );
		        $smarty->display('categorias/formulario.tpl');
	        break;
		    case 'confirmar_crear':
		        $oCategoria = new categorias;
		        $oCategoria->iCategoriaId     = (int)$_POST[ 'iCategoriaId' ];
		        $oCategoria->sNombre          = trim( $_POST[ 'nombreCategoria' ] );
		        $oCategoria->sDesc            = trim( $_POST[ 'descCategoria' ] );
		        $oCategoria->iCategoriaPadreId = (int)$_POST[ 'iCategoriaPadreId' ];
		        
		        $iNewCategoriaId = $oCategoria->crea_categoria();
		        
		        unset( $oCategoria );
		        
		        if( $iNewCategoriaId > 0 )
                    header('location: ' . $sUrl . 'categorias.php?accion=editar&id_categoria=' . $iNewCategoriaId . '&mensaje=1' );
		        else
		            header('location: ' . $sUrl . 'categorias.php?accion=listado&mensaje=0' );
	        break;
		    case 'editar':
		        $oCategoria = new categorias;
		        $oCategoria->iCategoriaId = (int)$_GET[ 'id_categoria' ];
		        $oCategoria->busca_categoria();
		        
		        $oCategorias = new categorias;
		        $oCategorias->busca_categorias();
		        
                $smarty->assign('sAction', 	    $sUrl . 'categorias.php?accion=confirmar_editar');
                $smarty->assign('aCategoria',   $oCategoria->aCategoria );
                $smarty->assign('aCategorias',  $oCategorias->aCategorias );
                $smarty->assign('iMensaje',     $_GET[ 'mensaje' ] );
                $smarty->assign('sMensaje',     $aMensajes[ $_GET[ 'mensaje' ] ] );
		        $smarty->display('categorias/formulario.tpl');
	        break;
		    case 'confirmar_editar':
		        $iCategoriaId = (int)$_POST[ 'iCategoriaId' ];
                
		        $oCategoria = new categorias;
		        $oCategoria->iCategoriaId     = $iCategoriaId;
		        $oCategoria->sNombre          = trim( $_POST[ 'nombreCategoria' ] );
		        $oCategoria->sDesc            = trim( $_POST[ 'descCategoria' ] );
		        $oCategoria->iCategoriaPadreId = (int)$_POST[ 'iCategoriaPadreId' ];
		        //$oCategoria->mostarConsultas = '1';
		        
		        $oCategoria->actualiza_categoria();
		        
		        foreach( $_POST[ 'aValores' ] as $iValorPadreId => $aValores )
		            foreach( $aValoresNuevos as $iValorId => $sValorNuevo )
        		        {
        		            $oCategoria->iValorId     = (int)$iValorId;
        		            $oCategoria->sNombreValor = trim( $sNombreValor );
        		            
        		            $oCategoria->actualiza_valor();
        		        }
    		        
		        foreach( $_POST[ 'aValoresNuevos' ] as $iValorPadreId => $aValoresNuevos )
		            foreach( $aValoresNuevos as $sValorNuevo )
        		        {
        		            if( $sValorNuevo != '' )
            		            {
                		            $oCategoria->iValorPadreId    = (int)$iValorPadreId;
                		            $oCategoria->sNombreValor     = trim( $sValorNuevo );
                		            
                		            $oCategoria->inserta_valor();
            		            }
        		        }
		        
		        header('location: ' . $sUrl . 'categorias.php?accion=editar&id_categoria='. $iCategoriaId . '&mensaje=3' );
		    break;
		    case 'borrar':
		        if( isset( $_GET[ 'id_categoria' ] ) && (int)$_GET[ 'id_categoria' ] > 0 )
    		        {
    		            $oCategoria = new categorias;
    		            $oCategoria->iCategoriaId = (int)$_GET[ 'id_categoria' ];
    		            $oCategoria->borrar_categoria();
    		            
    		            unset( $oCategoria );
    		            
    		            header('location: ' . $sUrl . 'categorias.php?accion=listado&mensaje=2' );
    		        }
		        else
		            header('location: ' . $sUrl . 'categorias.php?accion=listado&mensaje=6' );
	        break;
		    case 'borrar-valor':
		        if( isset( $_GET[ 'valor_id' ] ) && (int)$_GET[ 'valor_id' ] > 0 )
    		        {
    		            $iValorId     = (int)$_GET[ 'valor_id' ];
    		            $iCategoriaId = (int)$_GET[ 'categoria_id' ];
    		            
    		            $oCategoria = new categorias;
    		            $oCategoria->iValorId = $iValorId;
    		            $oCategoria->iCategoriaId = $iCategoriaId;
    		            $oCategoria->borrar_valor();
    		            
    		            unset( $oCategoria );
    		            
    		            header('location: ' . $sUrl . 'categorias.php?accion=editar&id_categoria=' . $iCategoriaId . '&mensaje=4' );
    		        }
                else
                    header('location: ' . $sUrl . 'categorias.php?accion=listado&mensaje=5' );
	        break;
			default:
			    $oCategorias = new categorias;
			    $oCategorias->busca_categorias();	
				
			    $smarty->assign('aCategorias',  $oCategorias->aCategorias );
				$smarty->assign('iMensaje',     $_GET[ 'mensaje' ] );
				$smarty->assign('sMensaje',     $aMensajes[ $_GET[ 'mensaje' ] ] );
				$smarty->assign('accion',       'listado');
				
				unset( $oCategorias );
				
				$smarty->display( 'categorias/listado.tpl' );
			break;
		}
?>