function Mostrar_Mapa($catorcena, $calle, $usuario)
{
    global $session, $map, $database;
    // =====================Inicio de mapas================================= //
    $map->setDSN('mysql://' . DB_USER . ':' . DB_PASS . '@' . DB_SERVER . '/' . DB_NAME);
    $map->setAPIKey(GOOGLE_MAP_KEY);
    $map->setWidth('100%');
    $map->referencias = false;
    // Desactivar los controles que solo Admin puede tener.
    if (!$session->isAdmin()) {
        // Controles de Mapa
        $map->map_controls = false;
        // Arrastre de mapa
        $map->disable_map_drag = true;
        // Arrastre de marcadores
        $map->disable_drag = true;
        // Controles extra para edición
        $map->Mostrar_Contenido_Maximizado = false;
    }
    // El globito solo Admin, Vendedor y Usuario pueden ver.
    if (!in_array($session->userlevel, array(ADMIN_LEVEL, SALESMAN_LEVEL, USER_LEVEL))) {
        $map->disableInfoWindow();
        $FLAG_globito = false;
    } else {
        $FLAG_globito = true;
    }
    // ===================================================================== //
    // =====================Cargar marcadores:mupis================================= //
    $WHERE_USER = "";
    $grupo_calle = "";
    $t_grupo_calle = "";
    //¿Quiere todas las calles?
    if ($calle == "::T::") {
        $map->disable_map_drag = false;
    } elseif (strpos($calle, "G:") !== false) {
        $Explotado = @end(explode(":", $calle));
        $grupo_calle = "codigo_calle IN (SELECT codigo_calle FROM " . TBL_STREETS . " WHERE grupo_calle='" . $Explotado . "')";
        $map->disable_map_drag = false;
    } else {
        $grupo_calle = "codigo_calle='{$calle}'";
    }
    // Ver por Mupis
    if (isset($_GET['sin_presencia'])) {
        if ($grupo_calle) {
            $t_grupo_calle = " where {$grupo_calle}";
        }
        $q = "select id_mupi, codigo_mupi, direccion, foto_generica, lon, lat, codigo_evento, codigo_calle FROM emupi_mupis AS a {$t_grupo_calle};";
    } else {
        // Quiere ver mupis que tengan publicidad, sin restricción de usuario.
        if (!$usuario) {
            // Siendo Admin, Vendedor, Usuario o Demo
            if ($grupo_calle) {
                $t_grupo_calle = " and {$grupo_calle}";
            }
            $q = "select id_mupi, codigo_mupi, direccion, foto_generica, lon, lat, codigo_evento, codigo_calle FROM emupi_mupis AS a WHERE id_mupi IN (select codigo_mupi FROM emupi_mupis_caras WHERE catorcena={$catorcena}){$t_grupo_calle};";
        } else {
            // Siendo cliente o con usuario
            if ($grupo_calle) {
                $t_grupo_calle = "{$grupo_calle} and ";
            }
            $q = "select id_mupi, codigo_mupi, direccion, foto_generica, lon, lat, codigo_evento, codigo_calle, (SELECT logotipo from emupi_usuarios where codigo='{$usuario}') as logotipo from emupi_mupis where {$t_grupo_calle} id_mupi IN (select codigo_mupi FROM emupi_mupis_caras WHERE catorcena={$catorcena} AND codigo_pedido IN (SELECT codigo_pedido FROM emupi_mupis_pedidos WHERE codigo='{$usuario}'));";
        }
    }
    DEPURAR($q, 0);
    $result = $database->query($q);
    $n_mupis = $num_rows = mysql_numrows($result);
    if (!$result || $num_rows < 0) {
        exit("Error mostrando la información<br />");
    }
    if ($num_rows == 0) {
        exit("¡No hay " . _NOMBRE_ . " ingresados!<br />");
    }
    // Recorrer todos los mupis.
    $n_caras_p = $n_caras_v = $n_caras = 0;
    //Estadísticas individuales
    for ($i = 0; $i < $num_rows; $i++) {
        $id_mupi = mysql_result($result, $i, "id_mupi");
        $codigo_mupi = mysql_result($result, $i, "codigo_calle") . "." . mysql_result($result, $i, "codigo_mupi");
        $direccion = truncate(mysql_result($result, $i, "direccion"));
        $foto_generica = mysql_result($result, $i, "foto_generica");
        $lon = mysql_result($result, $i, "lon");
        $lat = mysql_result($result, $i, "lat");
        $codigo_evento = mysql_result($result, $i, "codigo_evento");
        // Si puede ver el Globito, entonces hay que cargar los logotipos de los usuarios en el mupi.
        $logotipo = "";
        if ($FLAG_globito) {
            $q = "SELECT DISTINCT logotipo FROM emupi_usuarios where codigo IN (SELECT codigo from emupi_mupis_pedidos where codigo_pedido IN (SELECT codigo_pedido FROM emupi_mupis_caras as b WHERE catorcena={$catorcena} AND b.codigo_mupi=" . mysql_result($result, $i, "id_mupi") . "))";
            $result2 = $database->query($q);
            $num_rows2 = mysql_numrows($result2);
            $logotipo = "<br />";
            if ($num_rows2 > 0) {
                for ($ii = 0; $ii < $num_rows2; $ii++) {
                    $logotipo .= CargarImagenDesdeBD2(mysql_result($result2, $ii, "logotipo"), "50px");
                }
            }
            $logotipo = "<div style='width:400px; height:75px'>" . $logotipo . "</div>";
        }
        $DATOS = Buscar($id_mupi, $catorcena, $usuario, true);
        $html = "<div style='position:static;height:200px;width:400px'><center><b>Cliente(s) actual(es)</b><hr />" . $logotipo . "</center><div id='datos_mupis_en_globo' style='width:400px; height:50px'>{$DATOS}</div></div>";
        $Contenido_maximizado = "";
        // Si no hay usuario entonces sacar todas la pantallas de ese mupi.
        // Si hay usuario entonces solo sacar las pantallas de ese usuario en ese mupi.
        if (!$usuario) {
            $q = "SELECT id_pantalla, tipo_pantalla, codigo_pedido, (SELECT descripcion FROM " . TBL_MUPI_ORDERS . " AS b WHERE b.codigo_pedido=a.codigo_pedido) AS descripcion FROM emupi_mupis_caras AS a WHERE codigo_mupi='{$id_mupi}' and catorcena='{$catorcena}'" . ";";
        } else {
            $q = "SELECT id_pantalla, tipo_pantalla FROM emupi_mupis_caras AS a WHERE codigo_mupi='{$id_mupi}' AND catorcena='{$catorcena}' AND codigo_pedido IN (SELECT codigo_pedido FROM " . TBL_MUPI_ORDERS . " AS tmo WHERE tmo.codigo='{$usuario}')";
        }
        //echo $q."<br>";
        $result2 = $database->query($q);
        $num_rows2 = mysql_numrows($result2);
        $logotipo = "<br />";
        if ($session->isAdmin()) {
            $Valor_Peatonal = $Valor_Vehicular = $Pantalla_Vehicular = $Pantalla_Peatonal = NULL;
            $Valor_Vehicular_Desc = $Valor_Peatonal_Desc = 'Ninguno';
            $Boton_Vehicular = "<a href='./?" . _ACC_ . "=gestionar+pantallas&crear=1&catorcena={$catorcena}&tipo=0&id_mupi={$id_mupi}' target='blank'>Crear esta cara...</a><br />";
            $Boton_Peatonal = "<a href='./?" . _ACC_ . "=gestionar+pantallas&crear=1&catorcena={$catorcena}&tipo=1&id_mupi={$id_mupi}' target='blank'>Crear esta cara...</a><br />";
        }
        // Si ese mupi tenia caras, entonces las recorremos.
        if ($num_rows2 > 0) {
            for ($ii = 0; $ii < $num_rows2; $ii++) {
                if (mysql_result($result2, $ii, "tipo_pantalla") % 2 == 0) {
                    $n_caras_v++;
                    $n_caras++;
                    if ($session->isAdmin()) {
                        $Pantalla_Vehicular = mysql_result($result2, $ii, "id_pantalla");
                        $Valor_Vehicular = mysql_result($result2, $ii, "codigo_pedido");
                        $Valor_Vehicular_Desc = mysql_result($result2, $ii, "descripcion");
                        $Boton_Vehicular = "<a href='./?" . _ACC_ . "=gestionar+pantallas&actualizar=1&id={$Pantalla_Vehicular}&catorcena={$catorcena}' target='blank'>Editar esta cara...</a><br />";
                    }
                } else {
                    $n_caras_p++;
                    $n_caras++;
                    if ($session->isAdmin()) {
                        $Pantalla_Peatonal = mysql_result($result2, $ii, "id_pantalla");
                        $Valor_Peatonal = mysql_result($result2, $ii, "codigo_pedido");
                        $Valor_Peatonal_Desc = mysql_result($result2, $ii, "descripcion");
                        $Boton_Peatonal = "<a href='./?" . _ACC_ . "=gestionar+pantallas&actualizar=1&id={$Pantalla_Peatonal}&catorcena={$catorcena}' target='blank'>Editar esta cara...</a><br />";
                    }
                }
            }
        }
        if ($session->isAdmin()) {
            $Contenido_maximizado = "<b>Catorcena a editar:</b> " . AnularFechaNula($catorcena) . " - " . AnularFechaNula(Fin_de_catorcena($catorcena)) . "<br /><b>Mupi a Editar:</b> {$codigo_mupi} -> Id. {$id_mupi}" . "<hr />" . "<table>" . "<tr>" . "<th>Cara vehicular</th><th>Cara peatonal</th>" . "</tr>" . "<tr>" . "<td width='50%' valign='top'>" . "<b>ID. Pantalla:</b> " . EnNulidad($Pantalla_Vehicular, "Ninguna") . "<br />" . "<b>Código de pedido Actual:</b> {$Valor_Vehicular} | {$Valor_Vehicular_Desc}<br />" . $Boton_Vehicular . "</td>" . "<td width='50%' valign='top'>" . "<b>ID. Pantalla:</b> " . EnNulidad($Pantalla_Peatonal, "Ninguna") . "<br />" . "<b>Código de pedido Actual:</b> {$Valor_Peatonal} | {$Valor_Peatonal_Desc}<br />" . $Boton_Peatonal . "</td>" . "</tr>" . "</table>";
        }
        $map->addMarkerByCoords($lon, $lat, $codigo_mupi . ' | ' . $direccion, $html, $codigo_mupi, $id_mupi . "|" . $catorcena . "|" . $usuario, $Contenido_maximizado);
        $map->addMarkerIcon(public_base_directory() . '/punto.gif', '', 12, 12, 0, 0);
    }
    // Mostrar referencias. 10/02/09
    if ($grupo_calle) {
        $t_grupo_calle = " where {$grupo_calle}";
    }
    $q = "SELECT * FROM emupi_referencias" . $t_grupo_calle . ";";
    DEPURAR($q, 0);
    $result = $database->query($q);
    $num_rows = mysql_numrows($result);
    $map->referencias = true;
    for ($i = 0; $i < $num_rows; $i++) {
        $lon = mysql_result($result, $i, "lon");
        $lat = mysql_result($result, $i, "lat");
        $logotipo = "<br />" . CargarImagenDesdeBD2(mysql_result($result, $i, "imagen_referencia"), "200px");
        $map->addMarkerByCoords($lon, $lat, "Referencia", "Este es un punto de referencia<br />" . $logotipo, '', "REF|{$catorcena}|" . mysql_result($result, $i, "id_referencia"), "");
        $map->addMarkerIcon(public_base_directory() . '/include/ver.php?id=' . mysql_result($result, $i, "imagen_referencia"), '', 0, 0, 50, 50);
    }
    //------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    $datos = '';
    $datos .= $map->getMapJS();
    //------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    // Total de Eco Mupis mostrados
    $datos .= "<hr />Total de Ecomupis en la calle seleccionada: <b>{$n_mupis}</b><br />";
    // Total de caras encontradas
    $datos .= "Total de espacios publicitarios en la calle seleccionada: <b>{$n_caras}</b><br />";
    $datos .= "Número de caras publicitarias vehiculares en la calle seleccionada: <b>" . $n_caras_v . "</b><br />";
    $datos .= "Número de caras publicitarias peatonales en la calle seleccionada: <b>" . $n_caras_p . "</b><br />";
    $datos .= SCRIPT('onLoad();');
    return $datos;
}
示例#2
0
<?php

$_RAIZ = public_base_directory();
/*-----------------------DEFINICIONES-------------------*/
define("_NOMBRE_", "Eco Mupis");
define("_ACC_", "accion");
// Cosas de Sesion
require_once "data.php";
define("DB_SERVER", $DB_motor);
define("DB_USER", $DB_usuario);
define("DB_PASS", $DB_clave);
define("DB_NAME", $DB_base);
define("GOOGLE_MAP_KEY", $MapKey);
define("TBL_REGISTRY", "emupi_registro");
define("TBL_USERS", "emupi_usuarios");
define("TBL_ACTIVE_USERS", "emupi_usuarios_activos");
define("TBL_ACTIVE_GUESTS", "emupi_visitantes_activos");
define("TBL_COMMENTS", "emupi_comentarios");
define("TBL_MUPI", "emupi_mupis");
define("TBL_MUPI_ORDERS", "emupi_mupis_pedidos");
define("TBL_MUPI_FACES", "emupi_mupis_caras");
define("TBL_EVENTS", "emupi_mupis_eventos");
define("TBL_GEOCODE_CACHE", "emupi_geocode_cache");
define("TBL_STREETS", "emupi_calles");
define("TBL_IMG", "emupi_imagenes");
define("TBL_REFS", "emupi_referencias");
define("ADMIN_NAME", "admin");
define("GUEST_NAME", "Visitante");
define("ADMIN_LEVEL", 9);
define("SALESMAN_LEVEL", 5);
define("CLIENT_LEVEL", 3);