<?php

//---------------------------------------------------------------------------------------------------------
// 25/marzo/2015
// Versi?n 1.0 Widget que utilizaremos para mostrar banners
//---------------------------------------------------------------------------------------------------------



function widget_banner() {
    include("comunes/globals.php");
    //Aqu? definimos una serie de par?metros que necesitamos
    $funcion_por_defecto = "banner";
    $parametros_por_defecto = array();
    $parametros_recibidos = func_get_args();
    if (count($parametros_recibidos) == 0) {
        $parametros_recibidos[0] = $funcion_por_defecto;
    } else {
        if (($parametros_recibidos[0] == "") || ($parametros_recibidos[0] == NULL)) {
            $parametros_recibidos[0] = $funcion_por_defecto;
        }
    }
    $parametros_recibidos = mezcla_array_parametros($parametros_por_defecto, $parametros_recibidos);
    $retorno = false;
    //Si entre los par?metros recibidos, tenemos el nombre de la funci?n continuamos
    if (count($parametros_recibidos) > 0) {
        //Recogemos el nombre de la funci?n de entre el resto de par?metros
        $nombre_funcion = $parametros_recibidos[0];
        //Quitamos el primer elemento de los par?metros, pues es el nombre de la funci?n
        $parametros_recibidos = array_slice($parametros_recibidos, 1);
        //Si la funci?n existe la ejecutamos
        if (function_exists($nombre_funcion)) {
			//var_dump($parametros_recibidos);
            $retorno = call_user_func_array($nombre_funcion, $parametros_recibidos);
        }
    }
    return($retorno);
}

function banner($fichero = "banner", $condicion = "", $activo = 1, $capa_contenedora = true, $background = false) {
	//echo("$fichero, $condicion, $activo, $capa_contenedora, $background <br />\n");
    include("comunes/globals.php");
    $ocultarCabecera = false;
    if (($fichero != NULL) && (is_a($fichero, "OpcionesWidget"))) {
        $opciones = $fichero;
        $fichero = "banner";
        $condicion = "";
        $activo = 1;
        $capa_contenedora = true;
        $background = false;
        if (is_a($opciones, 'OpcionesWidget')) {
            $fichero = ($opciones->configuracion->fichero != NULL) ? $opciones->configuracion->fichero : $fichero;
            $condicion = ($opciones->configuracion->condicion != NULL) ? $opciones->configuracion->condicion : $condicion;
            $activo = ($opciones->configuracion->activo != NULL) ? $opciones->configuracion->activo : $activo;
            $capa_contenedora = ($opciones->configuracion->capa_contenedora != NULL) ? $opciones->capa_contenedora->$capa_contenedora : $fichero;
            $background = ($opciones->configuracion->background != NULL) ? $opciones->configuracion->background : $background;
            $ocultarCabecera = ($opciones->configuracion->ocultarCabecera != NULL) ? $opciones->configuracion->ocultarCabecera : $ocultarCabecera;
        }
    }
    //$banner_a_mostrar = array();
    $banner_a_mostrar = NULL;
    $idioma = Sesion::get("idioma");
    $idioma = ($idioma != NULL) ? $idioma : Shop::$configuracion->idioma;

    //Vamos a cargar los banner disponibles
    $sentencia_sql = "SELECT codigo
					  FROM banner 
					  WHERE condicion = '" . $condicion . "' AND activo = " . $activo . " AND idioma ='" . $idioma . "'
					  ORDER BY orden ASC";
	//echo("$sentencia_sql<br />\n");
    if ($conexionBD) {
        if ($resultado = mysqli_query($conexionBD, $sentencia_sql)) {
            /* if(mysqli_num_rows($resultado) == 0){
              $sentencia_sql = "SELECT codigo
              FROM banner
              WHERE condicion = '". $condicion . "' AND activo = ". $activo ." AND idioma ='".Shop::$configuracion->idioma."'
              ORDER BY orden ASC";
              $resultado = mysqli_query($conexionBD, $sentencia_sql);
              }
             */
            while ($fila = mysqli_fetch_array($resultado)) {
                if ($capa_contenedora) {
                    if ($ocultarCabecera) {
                        ?>

                        <div class="<?= (__FUNCTION__); ?>">
                            <?php
                        }
                    }
                    $banner_a_mostrar = new Banner($fila["codigo"]);
                    $ruta = Theme::findFile($fichero . ".php");
                    if ($ruta != NULL) {
                        include($ruta);
                    }
                    //$banner_a_mostrar[count($banner_a_mostrar)] = new Banner($fila["codigo"]);
                    unset($banner_a_mostrar);
                    if ($capa_contenedora) {
                        if ($ocultarCabecera) {
                            ?>
                        </div>
                        <?php
                    }
                    ?>
                    <?php
                }
            }
        }
    }
    return(true);
}
?>