Esempio n. 1
0
        }
        // ORDENA POR VOTOS DESCENDENTE y ANTIGUEDAD
        foreach ($votos_array as $k => $r) {
            $lv_array[$k] = $r['votos'];
            $lr_array[$k] = $r['registro'];
        }
        array_multisort($lv_array, SORT_DESC, $lr_array, SORT_ASC, $votos_array);
        // CONFECCIONA DATOS DE ESCRUTINIO
        $count = 0;
        $escrutinio = array();
        foreach ($votos_array as $d) {
            if (isset($d['user_ID'])) {
                $count++;
                if ($count <= $pol['config']['num_escanos']) {
                    cargo_add(6, $d['user_ID'], true, true);
                }
                $escrutinio[] = $d['votos'] . ':' . $d['partido'] . ':' . $d['nick'];
            }
        }
        $escrutinio[] = '0:I:0';
        $escrutinio = implode('|', $escrutinio);
        mysql_query("UPDATE " . SQL . "elec SET escrutinio = '" . $escrutinio . "' ORDER BY time DESC LIMIT 1", $link);
        evento_chat('<b>[ELECCIONES] <a href="/elecciones/">Elecciones FINALIZADAS</a></b>');
    }
    // tiempo next elecciones
    $elecciones_next = date('Y-m-d 20:00:00', time() + $pol['config']['elecciones_frecuencia']);
    mysql_query("UPDATE " . SQL . "config SET valor = '" . $elecciones_next . "' WHERE dato = 'elecciones_inicio' LIMIT 1", $link);
    // FIN ELEC
    mysql_query("UPDATE " . SQL . "config SET valor = 'normal' WHERE dato = 'elecciones_estado' LIMIT 1", $link);
    mysql_query("UPDATE " . SQL . "config SET valor = '" . $elec_next . "' WHERE dato = 'elecciones' LIMIT 1", $link);
}
Esempio n. 2
0
            }
        }
    }
    // _______ A continuación se rompe la relación Usuario-Voto irreversiblemente ________
    if ($r['privacidad'] == 'true') {
        // Rompe la relación Usuario-Voto. Solo en votaciones con secreto de voto.
        barajar_votos($r['ID']);
        // Esta funcion está documentada en /source/inc-functions-accion.php
    }
    // Actualiza contador de votaciones activas
    $result2 = mysql_query("SELECT COUNT(ID) AS num FROM votacion WHERE estado = 'ok' AND pais = '" . PAIS . "' AND acceso_ver = 'anonimos'", $link);
    while ($r2 = mysql_fetch_array($result2)) {
        mysql_query("UPDATE " . SQL . "config SET valor = '" . $r2['num'] . "' WHERE dato = 'info_consultas' LIMIT 1", $link);
    }
    if ($r['acceso_ver'] == 'anonimos') {
        evento_chat('<b>[' . strtoupper($r['tipo']) . ']</b> Finalizado, resultados: <a href="/votacion/' . $r['ID'] . '"><b>' . $r['pregunta'] . '</b></a> <span style="color:grey;">(votos: <b>' . $r['num'] . '</b>)</span>');
    }
}
// FIN DE FINALIZAR VOTACIONES
// EMPIEZA PRESENTACION
if ($_GET['a'] == 'verificacion' and $_GET['b'] and isset($pol['user_ID'])) {
    $comprobante_full = $_GET['b'];
    $ref_ID = explodear('-', $comprobante_full, 0);
    $comprobante = explodear('-', $comprobante_full, 1);
    redirect('/votacion/' . $ref_ID . '/verificacion#' . $comprobante);
} elseif ($_GET['a'] == 'crear') {
    $txt_title = 'Borrador de votación';
    $txt_nav = array('/votacion' => 'Votaciones', '/votacion/borradores' => 'Borradores', 'Crear borrador');
    $txt_tab = array('/votacion/borradores' => 'Ver borradores', '/votacion/' . $_GET['b'] => 'Previsualizar', '/votacion/crear/' . $_GET['b'] => 'Editar borrador');
    // EDITAR
    if (is_numeric($_GET['b'])) {
<?php

$root_dir = '/var/www/vhosts/virtualpol.com/httpdocs/real/';
$_SERVER['HTTP_HOST'] = 'pol.virtualpol.com';
include $root_dir . 'config.php';
include $root_dir . 'source/inc-functions.php';
include $root_dir . 'source/inc-functions-accion.php';
$link = conectar();
foreach ($vp['paises'] as $pais) {
    if ($pais != '15M') {
        evento_chat('<b>[#]</b> Quedan <b>30 minutos</b> para el proceso diario.', '0', 0, false, 'e', $pais);
    }
}
mysql_close($link);
Esempio n. 4
0
                 mysql_query("UPDATE users SET partido_afiliado = '0' WHERE partido_afiliado = '" . $ID_partido . "' AND ID = '" . $_POST['user_ID'] . "' LIMIT 1", $link);
             }
             $refer_url = 'partidos/' . strtolower($siglas) . '/editar/';
         }
     }
     break;
 case 'cargo':
     $b = $_GET['b'];
     $cargo_ID = $_GET['ID'];
     if ($_GET['b'] == 'dimitir' and $_GET['ID'] and nucleo_acceso('cargo', $_GET['ID'])) {
         cargo_del($_GET['ID'], $pol['user_ID'], false);
         $result = mysql_query("SELECT nombre FROM cargos WHERE pais = '" . PAIS . "' AND cargo_ID = '" . $_GET['ID'] . "' LIMIT 1", $link);
         while ($r = mysql_fetch_array($result)) {
             $cargo_nom = $r['nombre'];
         }
         evento_chat('<b>[CARGO] ' . crear_link($pol['nick']) . ' dimite</b> del cargo <img src="' . IMG . 'cargos/' . $_GET['ID'] . '.gif" />' . $cargo_nom);
         // Elimina examen
         mysql_query("DELETE FROM cargos_users WHERE cargo_ID = '" . $_GET['ID'] . "' AND user_ID = '" . $pol['user_ID'] . "' LIMIT 1", $link);
         // Si es cargo_ID 6 (Diputado o Coordinador), ceder al siguiente en la sucesión
         if ($_GET['ID'] == 6) {
             $result = mysql_query("SELECT escrutinio FROM " . SQL . "elec WHERE tipo = 'parl' ORDER BY time DESC LIMIT 1", $link);
             while ($r = mysql_fetch_array($result)) {
                 $escrutinio = $r['escrutinio'];
             }
             foreach (explode('|', $escrutinio) as $data) {
                 $data = explode(':', $data);
                 $cargo_estado = null;
                 $result = mysql_query("SELECT ID, (SELECT cargo FROM cargos_users WHERE cargo_ID = 6 AND aprobado = 'ok' AND user_ID = u.ID LIMIT 1) AS cargo_estado FROM users `u` WHERE nick = '" . $data[2] . "' LIMIT 1", $link);
                 while ($r = mysql_fetch_array($result)) {
                     $el_user_ID = $r['ID'];
                     $cargo_estado = $r['cargo_estado'];
            if (!$r2['ha_votado']) {
                $votar_num++;
                $txt_votaciones .= '<li><a href="http://' . strtolower($r2['pais']) . '.' . DOMAIN . '/votacion/' . $r2['ID'] . '"><b>' . $r2['pregunta'] . '</b></a> (' . ucfirst($r2['tipo']) . ')</li>';
            }
        }
        if ($votar_num > 0) {
            $txt_email = '<p>Hola ' . $r['nick'] . '!</p>
		
<p>Aún no has votado en las siguientes votaciones:</p>

<ol>
' . $txt_votaciones . '
</ol>

<p>Tu voto cuenta. Participamos en nuestra <a href="http://15m.virtualpol.com">sala de chat</a>.</p>

<p>¡Unidos somos fuertes!</p>

<p>_____<br />
<a href="http://15m.virtualpol.com">Asamblea Virtual 15M</a><br />
</p>';
            $txt_titulo = $r['nick'] . ', ' . ($votar_num > 1 ? '¡Tienes ' . $votar_num . ' votaciones pendientes!' : '¡Tienes una votación pendiente!');
            enviar_email($r['ID'], $txt_titulo, $txt_email);
            $emails_enviados++;
            $txt .= $votar_num . ' ' . $r['nick'] . '<br />';
        }
    }
    evento_chat('<b>[#] Terminado el envio de emails</b> de aviso <span style="color:grey;">(' . num($emails_enviados) . ' emails enviados, ' . round(microtime(true) - TIME_START) . ' seg de proceso)</span>.');
}
$txt .= '<hr />' . $contador;
include 'theme.php';
Esempio n. 6
0
    $st['empresas'] = 0;
    $st['mapa'] = 0;
    $st['mapa_vende'] = 0;
}
// 24h: ciudadanos que entraron en 24h (CONDICION NUEVA: y que no sean ciudadanos nuevos).
$result = mysql_query("SELECT COUNT(ID) AS num FROM users WHERE estado = 'ciudadano' AND pais = '" . PAIS . "' AND fecha_last > '" . $margen_24h . "' AND fecha_registro < '" . $margen_24h . "'", $link);
while ($r = mysql_fetch_array($result)) {
    $st['24h'] = $r['num'];
}
// confianza
$result = mysql_query("SELECT SUM(voto) AS num FROM votos WHERE tipo = 'confianza'", $link);
while ($r = mysql_fetch_array($result)) {
    $st['confianza'] = $r['num'];
}
// autentificados
$result = mysql_query("SELECT COUNT(*) AS num FROM users WHERE dnie = 'true' AND pais = '" . PAIS . "'", $link);
while ($r = mysql_fetch_array($result)) {
    $st['autentificados'] = $r['num'];
}
// STATS GUARDADO DIARIO
mysql_query("INSERT INTO stats \n(pais, time, ciudadanos, nuevos, pols, pols_cuentas, transacciones, hilos_msg, pols_gobierno, partidos, frase, empresas, eliminados, mapa, mapa_vende, 24h, confianza, autentificados) \nVALUES ('" . PAIS . "', '" . date('Y-m-d 20:00:00') . "', '" . $st['ciudadanos'] . "', '" . $st['nuevos'] . "', '" . $st['pols'] . "', '" . $st['pols_cuentas'] . "', '" . $st['transacciones'] . "', '" . $st['hilos_msg'] . "', '" . $st['pols_gobierno'] . "', '" . $st['partidos'] . "', '" . $pujas_total . "', '" . $st['empresas'] . "', '" . $st['eliminados'] . "', '" . $st['mapa'] . "', '" . $st['mapa_vende'] . "', '" . $st['24h'] . "', '" . $st['confianza'] . "', '" . $st['autentificados'] . "')", $link);
// ¿ELECCIONES?
include $root_dir . 'source/cron/cron-elecciones.php';
// Unifica y comprime archivos CSS y JS
include $root_dir . 'source/cron/cron-compress-all.php';
// Calcula el tiempo de proceso
$mtime = explode(' ', microtime());
$tiempofinal = $mtime[1] + $mtime[0];
$tiempototal = number_format($tiempofinal - $tiempoinicial, 3);
evento_chat('<b>[PROCESO] FIN del proceso</b>, todo <span style="color:blue;"><b>OK</b></span>, ' . $tiempototal . 's (<a href="/estadisticas/">estadisticas actualizadas</a>)');
mysql_close($link);
Esempio n. 7
0
        while ($r = mysql_fetch_array($result)) {
            $dnie_clon = true;
        }
        if ($dnie_clon == true) {
            // Persona ya identificada con otro usuario. No realiza la autentificacion.
            $txt .= 'Ya estas autentificado con otro usuario. Envia un email a ' . CONTACTO_EMAIL . ' explicando la situacion. Gracias.';
            unset($dnie_check);
            // Elimina el hash.
        } else {
            // Autentificacion correcta. El DNIe es inedito. Procede a guardar el hash en la base de datos.
            mysql_query("UPDATE users SET dnie = 'true', dnie_check = '" . $dnie_check . "' WHERE ID = '" . $pol['user_ID'] . "' LIMIT 1", $link);
            unset($dnie_check);
            // Elimina el hash.
            // Carga funciones extra para ejecutar evento_chat() que envia un mensaje en el chat.
            include 'source/inc-functions-accion.php';
            evento_chat('<b>[#] ' . crear_link($pol['nick']) . ' se ha <a href="' . SSL_URL . 'dnie.php">autentificado</a> con exito.</b>', '0', '', false, 'e', $pol['pais']);
            // Cierra y redirige a esta misma pagina.
            redirect(SSL_URL . 'dnie.php');
        }
    } else {
        // Muestra controles para autentificar.
        $txt .= 'Usuario sin autentificar.<br />' . $tractis_identity->show_form();
        // Muestra el boton de autentificación de Tractis.
    }
} elseif (isset($pol['user_ID'])) {
    $txt .= 'Estás autentificado correctamente.';
} else {
    $txt .= 'No estás registrado, debes crear un usuario.';
}
// Presentacion, diseño y poco más. No relevante.
$txt_title = 'Autentificación DNIe';
Esempio n. 8
0
        $result = mysql_query("SELECT pais FROM users WHERE ID = '" . $pol['user_ID'] . "' LIMIT 1", $link);
        while ($r = mysql_fetch_array($result)) {
            $user_pais = $r['pais'];
        }
        if ($pol['user_ID'] and $tiene_kick != true and $user_pais == 'ninguno' and $pol['estado'] == 'turista' and !in_array($_POST['pais'], $vp['paises_congelados'])) {
            mysql_query("UPDATE users SET estado = 'ciudadano', pais = '" . $_POST['pais'] . "' WHERE estado = 'turista' AND pais = 'ninguno' AND ID = '" . $pol['user_ID'] . "' LIMIT 1", $link);
            if ($pol['pols'] > 0 and $_POST['pais'] != '15M' and $_POST['pais'] != '15MBCN') {
                $trae = ', trayendo consigo: ' . pols($pol['pols']) . ' ' . MONEDA;
            } else {
                $trae = '';
            }
            $result2 = mysql_query("SELECT COUNT(*) AS num FROM users WHERE estado = 'ciudadano' AND pais = '" . $_POST['pais'] . "'", $link);
            while ($r2 = mysql_fetch_array($result2)) {
                $ciudadanos_num = $r2['num'];
            }
            evento_chat('<b>[#] Nuevo ciudadano</b> de <b>' . $_POST['pais'] . '</b> <span style="color:grey;">(<b>' . num($ciudadanos_num) . '</b> ciudadanos, <b><a href="http://' . strtolower($_POST['pais']) . '.' . DOMAIN . '/perfil/' . $pol['nick'] . '/" class="nick">' . $pol['nick'] . '</a></b>)</span>', 0, 0, false, 'e', $_POST['pais'], $r['nick']);
            mysql_query("INSERT INTO " . strtolower($_POST['pais']) . "_log \r\n(time, user_ID, user_ID2, accion, dato) \r\nVALUES ('" . date('Y-m-d H:i:s') . "', '" . $pol['user_ID'] . "', '" . $pol['user_ID'] . "', '2', '')", $link);
            unset($_SESSION);
            session_unset();
            session_destroy();
            redirect('http://' . strtolower($_POST['pais']) . '.' . DOMAIN . '/');
        } else {
            redirect(REGISTRAR);
        }
        break;
    default:
        $verror = ' ';
        break;
}
if ($pol['estado'] == 'ciudadano') {
    // load config full
Esempio n. 9
0
             }
         }
         $dentro_del_margen = false;
         $result = mysql_query("SELECT ID FROM users WHERE ID = '" . $pol['user_ID'] . "' AND nickchange_last < '" . date('Y-m-d 20:00:00', time() - 86400 * 365) . "' LIMIT 1", $link);
         while ($r = mysql_fetch_array($result)) {
             $dentro_del_margen = true;
         }
         $nick_existe = false;
         $result = mysql_query("SELECT ID FROM users WHERE nick = '" . $nick_new . "' LIMIT 1", $link);
         while ($r = mysql_fetch_array($result)) {
             $nick_existe = true;
         }
         if (nick_check($nick_new) and strlen($nick_new) >= 3 and strlen($nick_new) <= 12 and $dentro_del_margen and !$nick_existe) {
             // EJECUTAR CAMBIO DE NICK
             mysql_query("UPDATE users SET nick = '" . $nick_new . "', nickchange_last = now() WHERE ID = '" . $pol['user_ID'] . "' LIMIT 1", $link);
             evento_chat('<b>[#] El ciudadano ' . $pol['nick'] . '</b> se ha cambiado de nombre a <b>' . crear_link($nick_new) . '</b>.', 0, 0, true, 'e', $pol['pais']);
             unset($_SESSION);
             session_destroy();
             setcookie('teorizauser', '', time() - 3600, '/', USERCOOKIE);
             setcookie('teorizapass', '', time() - 3600, '/', USERCOOKIE);
         }
     }
     redirect($url);
     break;
 case 'changemail':
     $email = trim($_POST['email']);
     $url = base64_decode($_POST['url']);
     $pre_login = true;
     if ($pol['user_ID']) {
         mysql_query("UPDATE users SET email = '" . $email . "' WHERE ID = '" . $pol['user_ID'] . "' AND fecha_registro < '" . date('Y-m-d 20:00:00', time() - 864000) . "' LIMIT 1", $link);
     }
function cargo_del($cargo_ID, $user_ID, $evento_chat = true, $sistema = false)
{
    global $link, $pol;
    $result = mysql_query("SELECT nombre, nivel FROM cargos WHERE pais = '" . PAIS . "' AND cargo_ID = '" . $cargo_ID . "' LIMIT 1", $link);
    while ($r = mysql_fetch_array($result)) {
        mysql_query("UPDATE cargos_users SET cargo = 'false' WHERE pais = '" . PAIS . "' AND cargo_ID = '" . $cargo_ID . "' AND user_ID = '" . $user_ID . "' LIMIT 1", $link);
        evento_log_OLD(12, $cargo_ID, $user_ID);
        $result = mysql_query("SELECT cargo_ID, \r\n(SELECT nivel FROM cargos WHERE pais = '" . PAIS . "' AND cargo_ID = cargos_users.cargo_ID LIMIT 1) AS nivel\r\nFROM cargos_users \r\nWHERE pais = '" . PAIS . "' AND user_ID = '" . $user_ID . "' AND cargo = 'true' \r\nORDER BY nivel DESC\r\nLIMIT 1", $link);
        while ($r = mysql_fetch_array($result)) {
            $user_nivel_max = $r['nivel'];
            $user_nivel_sql = ", cargo = '" . $r['cargo_ID'] . "'";
        }
        if (!$user_nivel_max) {
            $user_nivel_max = 1;
            $user_nivel_sql = ", cargo = ''";
        }
        mysql_query("UPDATE users SET nivel = '" . $user_nivel_max . "'" . $user_nivel_sql . " WHERE ID = '" . $user_ID . "' LIMIT 1", $link);
        actualizar('cargos', $user_ID);
        if ($evento_chat) {
            $result2 = mysql_query("SELECT nick FROM users WHERE ID = '" . $user_ID . "' LIMIT 1", $link);
            while ($r2 = mysql_fetch_array($result2)) {
                $nick_asignado = $r2['nick'];
            }
            evento_chat('<b>[CARGO] ' . crear_link($sistema == true ? 'VirtualPol' : $pol['nick']) . ' quita</b> el cargo <img src="' . IMG . 'cargos/' . $cargo_ID . '.gif" />' . $r['nombre'] . ' a ' . crear_link($nick_asignado));
        }
    }
}