IMPORTANTE: incorporacion de funciones experimentales al core y portal de #opendata en visualizaciones

This commit is contained in:
humano 2015-10-31 05:25:01 -05:00
parent de6fa658b8
commit dedcab5960
3 changed files with 650 additions and 0 deletions

View File

@ -0,0 +1,258 @@
<?php
function tuitealo($form,$tipo) {
if($tipo =='formulario') {
$formulario = formulario_areas('15','campos');
$descripcion = remplacetas('form_id','id','15','descripcion',"") ;
$nombre = remplacetas('form_id','id','15','nombre',"") ;
$formulario ="
<h1 >$nombre[0]</h1>
<h2>$descripcion[0]</h2>
<form id='form_tuitealo' >
$formulario
<br>
<div id='tuitealo_div'>
<div id='tuitealo_error'></div>
<a class='btn btn-block btn-primary' onclick=\"xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar');\">Previsualizar</a>
</div>
</form>
</div>
<br>
<div class='text-center'>
<p class='text-center'>Powered by: <a href='http://qwerty.co/milfs'>MIFS</a></p>
</div>
<br>
";
return $formulario;
}
$respuesta = new xajaxResponse('utf-8');
$sujeto = $form[84][0];
$accion = $form[85][0];
$verbo = $form[86][0];
$tiempo = $form[87][0];
$ht = $form[88][0];
$mensaje = $form[83][0];
$arroba = $form[82][0];
if( $accion =="" or $verbo =="" or $tiempo =="" or $ht =="" or $arroba =="" ) {
$error ="<div class='alert alert-warning text-center'><h1><i class='fa fa-exclamation-triangle'></i> Hay campos vacíos</h1></div>";
$respuesta->addAssign("tuitealo_error","innerHTML","$error");
return $respuesta;
}
$arroba = remplacetas('form_datos','control',"$arroba",'contenido',"id_campo = '77'") ;
$arroba = $arroba[0];
$url_propia = urlencode("http://patos.redpatodos.co");
$texto="$sujeto $accion $verbo $tiempo $ht $mensaje cc $arroba ";
$texto = ucfirst($texto);
$texto_url=urlencode($texto);
$largo = strlen($texto.$url_propia);
if($largo > 140) { $alert ="danger"; $mensaje ="<i class='fa fa-exclamation-triangle'></i> El texto es demasiado largo y se recortará";
$texto = substr($texto, 0, 140)."..."; }
else{$alert='success'; $mensaje="";}
$url ="https://twitter.com/share?url=$url_propia&text=$texto_url";
$previsualizar ="<br>
<div id='tuitealo_error'></div>
<div class='alert alert-$alert'><div class='badge'>$largo</div>$mensaje<h1>$texto</h1></div>
<a class='btn btn-block btn-primary' onclick=\"xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar');\">Previsualizar</a>
<a class='btn btn-block btn-success' onclick=\"xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'confirmar');\">Tuitéalo</a>
<img style='width:1px;' src='milfs/images/100x100.png'
onload=\"
document.getElementById('82[0]').onchange = function(){xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar')};
document.getElementById('83[0]').onkeyup = function(){xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar')};
document.getElementById('84[0]').onchange = function(){xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar')};
document.getElementById('85[0]').onchange = function(){xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar')};
document.getElementById('86[0]').onchange = function(){xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar')};
document.getElementById('87[0]').onchange = function(){xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar')};
document.getElementById('88[0]').onchange = function(){xajax_tuitealo(xajax.getFormValues('form_tuitealo'),'previsualizar')};
\" >
";
if( $tipo =="previsualizar") {
$respuesta->addAssign("tuitealo_div","innerHTML","$previsualizar");
//$respuesta->addAlert("$texto $url");
}else{
///$respuesta->addAssign("tuitealo_div","innerHTML","$url");
$respuesta->addScript("window.location.href ='$url';");
}
return $respuesta;
}
$xajax->registerFunction("tuitealo");
/*
function buscar_datos($valores,$id_form,$plantilla,$div){
$valores = mysql_seguridad($valores);
if (is_array($valores) ){
$valor = $valores['valor'];
}
else {$valor=$valores;}
if($valor =='') {
$resultado="
<div class='col-sm-3 col-md-3'>
<form class='navbar-form' role='search' id='formulario_buscar_datos' name='formulario_buscar_datos'>
<div class='form-group'>
<div class='input-group'>
<input placeholder='Escribe para buscar' class='form-control' id='valor' name= 'valor'>
<div class='input-group-btn'>
<div class='btn btn-default' onclick =\"xajax_buscar_datos(xajax.getFormValues('formulario_buscar_datos'),'$id_form','$plantilla','$div'); \"><i class='glyphicon glyphicon-search'></i></div>
</div>
</div>
</div>
</form>
</div>
";
return $resultado;
}else{
if($id_form !="") {$w_form ="form_id = '$id_form' AND ";}
$consulta ="SELECT * FROM form_datos WHERE $w_form contenido like '%%$valor%%' group by control LIMIT 200 ";
$link=Conectarse();
mysql_query("SET NAMES 'utf8'");
$sql=mysql_query($consulta,$link);
if (mysql_num_rows($sql)!=0){
mysql_data_seek($sql, 0);
$fila=1;
$divider=1;
$cols = (12/$divider);
$i =0;
while( $row = mysql_fetch_array( $sql ) ) {
if($i % $divider==0) {
$encontrados .= "
<div class='container-fluid ' role='row' id='grid_$i' style=''>
";
}
$i++;
$datos = contenido_mostrar("$row[form_id]","$row[control]",'',"$plantilla");
$contenido ="<div class='col-sm-$cols' style=''>$datos</div>";
$encontrados .="$contenido";
$fila++;
if( $i % $divider==0) {
$encontrados .= "</div> ";
}
}
}
$resultado .="<div class='container-fluid'><h1>Resultados de: $valor</h1>$encontrados </div> ";
$respuesta = new xajaxResponse('utf-8');
$respuesta->addAssign("$div","innerHTML",$resultado);
return $respuesta;
}
}
$xajax->registerFunction("buscar_datos");
*/
/*
function datos_grid($id_form,$filtro,$valor,$plantilla,$divider,$inicio,$limite) {
$respuesta = new xajaxResponse('utf-8');
$nuevo_inicio = ($inicio+$limite+1);
if($inicio =="") {
$inicio = "0";
$script = "
$(window).scroll(function() {
if ($(window).scrollTop() == $(document).height() - $(window).height()) {
xajax_datos_grid('$id_form','$filtro','$valor','$plantilla','$divider','$nuevo_inicio','$limite') ;
}
});
";
//$respuesta->addScript("$script");
//$respuesta->addAlert("$script");
}
if($limite =="") {$limite = "250";}
if($valor !=""){
$md5_valor = $valor;
if($filtro !='' ){$w_filtro =" AND id_campo = '$filtro' AND md5(binary contenido) = '$md5_valor' ";}
}
$consulta_total= "SELECT * FROM form_datos WHERE form_id= '$id_form' $w_filtro GROUP BY control ";
$consulta= "SELECT * FROM form_datos WHERE form_id= '$id_form' $w_filtro GROUP BY control LIMIT $inicio , $limite";
$link=Conectarse();
mysql_query("SET NAMES 'utf8'");
//mysql_real_escape_string($consulta);
$sql_total=mysql_query($consulta_total,$link);
$total = mysql_num_rows($sql_total);
$sql=mysql_query($consulta,$link);
$descripcion = remplacetas('form_id','id',$id_form,'descripcion',"") ;
$descripcion = " $descripcion[0]";
$buscador = buscar_datos("","$id_form","$plantilla","grid_resultado");
$contenido = "<div class='container-fluid'>$descripcion $buscador</div> ";
if (mysql_num_rows($sql)!=0){
mysql_data_seek($sql, 0);
$fila=1;
if($divider =="") {
$divider=3;
}
$cols = (12/$divider);
$i =0;
while( $row = mysql_fetch_array( $sql ) ) {
if($i % $divider==0) {
$contenido .= "
<div class='container ' role='row' id='grid_$i' style='width: 80%; padding:5px;'>
";
}
$i++;
$datos = contenido_mostrar("$id_form","$row[control]",'',"$plantilla");
if($cols =="12") { $cols_grid ="";}else { $cols_grid ="col-md-$cols";}
$contenido .="<div class='$cols_grid' style=''>$datos</div>";
$fila++;
if( $i % $divider==0) {
$contenido .= "</div> ";
}
}
}
$inicio = ($inicio+$limite+1);
$div_mas_contenido ="mas_contenido_".$inicio."_".$limite."";
$mostrado = ($inicio+$limite-1);
//$limite = ($inicio+$limite-1);
$resultado =" <br>
<div id='grid_resultado' style='background-color: #ffcc00'>
$contenido
</div>
<div class='container-fluid' >
<div class='btn btn-default btn-block' id='$div_mas_contenido' onclick=\" xajax_datos_grid('$id_form','$filtro','$valor','$plantilla','$divider','$inicio','$limite') ;\" >
Mostrar mas resultados
</div>
</div>
</div><br>
";
///$respuesta->addScript("$script");
$respuesta->addAssign("contenedor","innerHTML",$resultado);
return $respuesta;
}
$xajax->registerFunction("datos_grid");
*/
?>

View File

@ -1,6 +1,161 @@
<?php <?php
date_default_timezone_set('America/Bogota'); date_default_timezone_set('America/Bogota');
function mostrar_modal($form,$control,$plantilla){
$respuesta = new xajaxResponse('utf-8');
$datos = contenido_mostrar("$form","$control",'',"$plantilla");
$div ="contenido_de_modal";
$resultado = "<div class='container-fluid'>$datos</div>";
$div_contenido = "<div id='$div'>$div</div>";
$respuesta->addAssign("muestra_form","innerHTML","$div_contenido");
//$respuesta->addAssign("titulo_modal","innerHTML","Hola mundo");
//$respuesta->addAssign("pie_modal","innerHTML","$pie");
$respuesta->addAssign("$div","innerHTML","$resultado");
$respuesta->addscript("$('#muestraInfo').modal('toggle')");
return $respuesta;
}
$xajax->registerFunction("mostrar_modal");
function portal_filtro_cadena($formulario,$id_campo,$control){
$cadena = remplacetas('form_datos','control',"$control",'contenido',"form_id = '$formulario' AND id_campo ='$id_campo' ") ;
$consulta ="SELECT * FROM form_campos ,form_datos
WHERE form_datos.form_id = '$formulario' AND form_campos.id = form_datos.id_campo AND form_datos.id_campo = '$id_campo' AND contenido = '$cadena[0]'
GROUP BY control ORDER BY contenido";
$link=Conectarse();
mysql_query("SET NAMES 'utf8'");
$sql=mysql_query($consulta,$link);
if (mysql_num_rows($sql)!=0){
while( $row = mysql_fetch_array( $sql ) ) {
$datos = contenido_mostrar("$formulario","$row[control]",'',"");
$listado .= "<div class='panel panel-default'>
<div class='panel-heading'><h3>$cadena[0]<a class='btn btn-info pull-right' target='api' href='http://$_SERVER[HTTP_HOST]/milfs/api.php?identificador=$row[control]' >{json}</a></h3> </div>
<div class='panel-body'>
$datos
</div>
</div>
";
}
$resultado = "
<br>
$listado
";
}
$respuesta = new xajaxResponse('utf-8');
$respuesta->addAssign("mostrar_contenido","innerHTML","$resultado");
return $respuesta;
}
$xajax->registerFunction("portal_filtro_cadena");
function portal_filtro_campos($formulario,$id_campo){
$formulario_descripcion = remplacetas('form_id','id',"$formulario",'descripcion',"") ;
$formulario_nombre = remplacetas('form_id','id',"$formulario",'nombre',"") ;
$campo_nombre = remplacetas('form_campos','id',"$id_campo",'campo_nombre',"") ;
$campo_descripcion = remplacetas('form_campos','id',"$id_campo",'campo_descripcion',"") ;
$consulta ="SELECT * FROM form_campos ,form_datos WHERE form_datos.form_id = '$formulario' AND form_campos.id = form_datos.id_campo AND form_datos.id_campo = '$id_campo' GROUP BY contenido ORDER BY contenido";
$link=Conectarse();
mysql_query("SET NAMES 'utf8'");
$sql=mysql_query($consulta,$link);
if (mysql_num_rows($sql)!=0){
while( $row = mysql_fetch_array( $sql ) ) {
$listado .= "<li class='list-group-item'><a href='#' onclick=\"xajax_portal_filtro_cadena('$formulario','$id_campo','$row[control]') \" title='$row[control]'>$row[contenido]</a></li>";
}
$resultado = "
<ul class='list-group'>
<h4 ><span title='$formulario_descripcion[0]'>$formulario_nombre[0]</span> / <span title='$campo_descripcion[0]'>$campo_nombre[0]</span></h4>
<li class='list-group-item'><a class='btn btn-block btn-info' target='api' href='http://$_SERVER[HTTP_HOST]/milfs/api.php?id=$formulario&tipo=simple' >{json}</a></li>
$listado
</ul>
";
}
return $resultado;
}
function portal_filtro_campos_select($formulario,$id_campo){
$formulario_descripcion = remplacetas('form_id','id',"$formulario",'descripcion',"") ;
$formulario_nombre = remplacetas('form_id','id',"$formulario",'nombre',"") ;
$campo_nombre = remplacetas('form_campos','id',"$id_campo",'campo_nombre',"") ;
$campo_descripcion = remplacetas('form_campos','id',"$id_campo",'campo_descripcion',"") ;
$consulta ="SELECT * FROM form_campos ,form_datos WHERE form_datos.form_id = '$formulario' AND form_campos.id = form_datos.id_campo AND form_datos.id_campo = '$id_campo' GROUP BY contenido ORDER BY contenido";
$link=Conectarse();
mysql_query("SET NAMES 'utf8'");
$sql=mysql_query($consulta,$link);
if (mysql_num_rows($sql)!=0){
while( $row = mysql_fetch_array( $sql ) ) {
$listado .= "<option value = '$row[control]'>$row[contenido]</option>";
}
$resultado = "
<select class='form-control' onchange=\"xajax_portal_filtro_cadena('$formulario','$id_campo',(this.value)) \" >
<option =''>$campo_nombre[0]</option>
$listado
</select>
";
}
return $resultado;
}
function portal_listado_campos($formulario){
$formulario_descripcion = remplacetas('form_id','id',"$formulario",'descripcion',"") ;
$formulario_nombre = remplacetas('form_id','id',"$formulario",'nombre',"") ;
$consulta ="SELECT * FROM form_campos ,form_contenido_campos WHERE form_campos.id = form_contenido_campos.id_campo AND form_contenido_campos.id_form = '$formulario' ORDER BY form_contenido_campos.orden";
$link=Conectarse();
mysql_query("SET NAMES 'utf8'");
$sql=mysql_query($consulta,$link);
if (mysql_num_rows($sql)!=0){
while( $row = mysql_fetch_array( $sql ) ) {
$listado .= "<li class='list-group-item'><a href='?formulario=$formulario&campo=$row[id_campo]' title='$row[campo_descripcion]'>$row[campo_nombre]</a></li>";
}
$resultado = "
<ul class='list-group'>
<legend title='$formulario_descripcion'>$formulario_nombre[0]</legend>
<li class='list-group-item'><a class='btn btn-block btn-info' target='api' href='http://$_SERVER[HTTP_HOST]/milfs/api.php?id=$formulario&tipo=simple' >{json}</a></li>
$listado
</ul>
";
}
return $resultado;
}
function portal_listado_formularios(){
$consulta ="SELECT * FROM form_id WHERE publico = '1'";
$link=Conectarse();
mysql_query("SET NAMES 'utf8'");
$sql=mysql_query($consulta,$link);
if (mysql_num_rows($sql)!=0){
while( $row = mysql_fetch_array( $sql ) ) {
$listado .= "<li><a href='?formulario=$row[id]' title='$row[descripcion]'>$row[nombre]</a></li>";
}
$resultado = "
<li class='dropdown'>
<a href='#' class='dropdown-toggle' data-toggle='dropdown' role='button' aria-haspopup='true' aria-expanded='false'>Set de datos<span class='caret'></span></a>
<ul class='dropdown-menu'>
$listado
</ul>
</li>";
}
return $resultado;
}
function insertar_linea($tabla,$key,$campo,$valor,$control,$orden,$div){ function insertar_linea($tabla,$key,$campo,$valor,$control,$orden,$div){
$respuesta = new xajaxResponse('utf-8'); $respuesta = new xajaxResponse('utf-8');

View File

@ -0,0 +1,237 @@
<?php
///este archivo debe estar un nivel superior al directorio milfs
session_start();
//ini_set('display_errors', 'On');
require ('milfs/xajax/xajax.inc.php');
$xajax = new xajax();
require ('milfs/funciones/funciones.php');
require ('milfs/funciones/experimentales.php');
//require ('milfs/funciones/convert.php');
require ('milfs/funciones/login.php');
require_once ('milfs/includes/markdown.php');
require ("milfs/funciones/conex.php");
$xajax->processRequests();
$logo = remplacetas('empresa','id','1','imagen') ;
$direccion = remplacetas('empresa','id','1','direccion') ;
$telefono = remplacetas('empresa','id','1','telefono') ;
$email = remplacetas('empresa','id','1','email') ;
if($_REQUEST['formulario'] !="") {
$formulario = $_REQUEST['formulario'];
}
else {
$formulario = "40";
}
$id_campo = $_REQUEST['campo'];
$formulario_descripcion = remplacetas('form_id','id',"$formulario",'descripcion',"") ;
$formulario_nombre = remplacetas('form_id','id',"$formulario",'nombre',"") ;
?>
<!DOCTYPE html>
<html lang="en">
<head >
<meta charset="utf-8">
<meta name="viewport" content="user-scalable=no, width=device-width, maximum-scale=1, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="fredyrivera" >
<?php $xajax->printJavascript("milfs/xajax/"); ?>
<link rel="shortcut icon" href="favicon-152.png">
<link rel="apple-touch-icon-precomposed" href="favicon-152.png">
<link href="milfs/css/font-awesome/css/font-awesome.css" rel="stylesheet">
<!-- <link rel="stylesheet" href="milfs/css/style.css" media="screen" /> -->
<!-- <link href="http://getbootstrap.com/examples/sticky-footer-navbar/sticky-footer-navbar.css" rel="stylesheet"> -->
<!-- <script src="http://cdn.leafletjs.com/leaflet-0.7/leaflet.js"></script> -->
<!-- <link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.7/leaflet.css" /> -->
<link href="milfs/css/bootstrap.min.css" rel="stylesheet">
<!-- <link href="milfs/css/estilos.php" rel="stylesheet"> -->
<script src="milfs/js/jquery.min.js"></script>
<script src="milfs/js/jquery.timelinr-0.9.54.js"></script>
<style type="text/css">
/*@font-face {
font-family: Brandon_light;
src: url("milfs/patos/fuentes/Brandon_light.otf") format("opentype");
}*/
body{
font-size: 18px;
color: black;
}
.modal-dialog {
width: 95%;
height: 95%;
padding: 0;
}
.modal-content {
/*height: 100%;*/
border-radius: 0;
}
.container-fluid {
padding: 0px !important;
}
a.pie{
color: white !important;
}
a.menu{
color: white !important;
}
a:active{
color: black !important;
}
/*
.dropdown:hover{
background-color: #fd0;
font-weight: normal !important;
color: black !important;
}
.dropdown-toggle:hover{
background-color: #fd0;
color: black !important;
font-weight: normal !important;
}
.dropdown .open{
background-color: #fd0;
color: black !important;
font-weight: normal !important;
}
a.menu:hover{
background-color: #fd0 !important;
color: black !important;
}
.dropdown-menu:hover{
background-color: #fd0 !important;
color: black !important;
font-weight: normal !important;
}
ul.dropdown-menu{
background-color: black !important;
font-weight: normal !important;
}
ul.dropdown-menu:hover{
background-color: #fd0;
color: black !important;
font-weight: normal !important;
}
*/
</style>
</head>
<body >
<!-- Static navbar -->
<div class="navbar navbar-fixed-top "style='color:black; background-color:white' role="navigation">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="">
<img class="img img-responsive" style="max-height:30px; display:inline" src="milfs/images/secure/?file=150/<?php echo $logo[0] ?>" >
<span>
<?php echo "<strong title='$formulario_descripcion[0]'>$formulario_nombre[0]</strong>"; ?>
</span>
</a>
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<?php echo portal_listado_formularios(); ?>
</ul>
<?php echo buscar_datos("","$formulario","","mostrar_contenido"); ?>
</div><!--/.nav-collapse -->
</div> <!--/.container-fluid -->
<!-- /container -->
<br> <br>
<div id ='contenedor' style=' ' class="container">
<div class='row'>
<div class='col-md-3'>
<div class='panel panel-default'>
<div class='panel panel-heading'>
<ul class='list-unstyled'>
<?php echo portal_listado_formularios(); ?>
</ul>
</div>
<div class='panel-body'>
<?php
if($id_campo =="") {
echo portal_listado_campos("$formulario");
}
else {
echo portal_filtro_campos($formulario,$id_campo);
echo portal_filtro_campos_select($formulario,"$id_campo");
}
?>
</div>
</div>
</div>
<div class='col-md-9'>
<div id='mostrar_contenido'>
<h1>Bienvenido a nuestro portal de datos</h1>
</div>
</div>
</div>
</div>
<div class="" style="background-color: black; color:white; ">
<!-- <img class='img img-resposive' src="milfs/patos/images/pie.png" style="width:100%" alt=""> -->
</div>
</div>
<!-- Modal -->
<div class='modal fade ' id='muestraInfo' tabindex='-1' role='dialog' aria-labelledby='myModalLabel' aria-hidden='true'>
<div class='modal-dialog modal-lg' style=' ' >
<div class='modal-content' style=' '>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<br>
</div>
<div class='modal-body'>
<div id='muestra_form' class="row"></div>
</div>
</div>
</div>
<!--
<div class='pie' style=" position: fixed;
bottom: 0;
width: 100%;
/* Set the fixed height of the footer here */
">
</div> -->
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<!-- <script src="milfs/js/jquery.min.js"></script> -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
<!-- <script src="milfs/js/bootstrap.min.js"></script> -->
<script src="milfs/js/scripts.js"></script>
</body>
</html>