arreglos en la api simple para mostrar contenido de formularios anidados

This commit is contained in:
fredyrivera 2017-10-11 13:32:30 -05:00
parent 2d7e035c27
commit 57a65577df
2 changed files with 92 additions and 32 deletions

View File

@ -111,7 +111,7 @@ if ($variable !=''){
$background_imagen = $background_imagen[0]; $background_imagen = $background_imagen[0];
$uri_set = ""; $uri_set = "";
$acceso = 1; $acceso = 1;
$menu ="<h1>Hola mundo( $titulo[0] $id_empresa )</h1> $menu ="<h1>$titulo[0]</h1>
<div class='col-sm-2 hidden-xs hidden-sm'> <div class='col-sm-2 hidden-xs hidden-sm'>
<div class='container'> <div class='container'>
<nav style=' max-height:95% !important ; overflow:auto !important; ' id='toc' data-spy='affix' data-toggle='toc'></nav> <nav style=' max-height:95% !important ; overflow:auto !important; ' id='toc' data-spy='affix' data-toggle='toc'></nav>

View File

@ -4223,7 +4223,7 @@ $consulta= " SELECT * FROM form_campos WHERE id = id $w_empresa $w_especialista
mysqli_data_seek($sql, 0); mysqli_data_seek($sql, 0);
mysqli_data_seek($sql_total, 0); mysqli_data_seek($sql_total, 0);
while( $row = mysqli_fetch_array( $sql ) ) { while( $row = mysqli_fetch_array( $sql ) ) {
$tipo_nombre = remplacetas_noid('form_tipo_campo','id_tipo_campo',"$row[campo_tipo]",'tipo_campo_nombre',"") ; $tipo_nombre = remplacetas_noid('form_tipo_campo','id_tipo_campo',"$row[campo_tipo]",'tipo_campo_nombre',"",'') ;
$campo_tipo ="<small title='$row[campo_tipo]'>$tipo_nombre[0]</small> "; $campo_tipo ="<small title='$row[campo_tipo]'>$tipo_nombre[0]</small> ";
if($_SESSION['id_empresa'] == $row['id_empresa']) { if($_SESSION['id_empresa'] == $row['id_empresa']) {
$row['campo_nombre']= editar_campo("form_campos","$row[id]","campo_nombre","","","",""); $row['campo_nombre']= editar_campo("form_campos","$row[id]","campo_nombre","","","","");
@ -4280,25 +4280,35 @@ $consulta= " SELECT * FROM form_campos WHERE id = id $w_empresa $w_especialista
} }
$xajax->registerFunction("campos_tabla"); $xajax->registerFunction("campos_tabla");
function remplacetas_noid($tabla,$campo,$valor,$por,$and){ function remplacetas_noid($tabla,$campo,$valor,$por,$and,$limit){
if($limit =="") { $limite="LIMIT 1";}else{$limite= "LIMIT $limit";}
$link=Conectarse(); $link=Conectarse();
mysqli_set_charset($link, "utf8"); mysqli_set_charset($link, "utf8");
if(@$and !=''){$AND = "AND $and";}else{$AND ="";} if(@$and !=''){$AND = "AND $and";}else{$AND ="";}
$consulta = "SELECT * , md5(binary $por ) as md5_".$por." FROM $tabla WHERE $campo = '$valor' $AND order by $campo DESC limit 1"; $consulta = "SELECT * , md5(binary $por ) as md5_".$por." FROM $tabla WHERE $campo = '$valor' $AND order by $campo DESC $limite";
//$consulta = "SELECT * , md5(binary $por ) as md5_".$por." FROM $tabla WHERE $campo = '$valor' $AND order by id DESC limit 1"; //$consulta = "SELECT * , md5(binary $por ) as md5_".$por." FROM $tabla WHERE $campo = '$valor' $AND order by id DESC limit 1";
$sql=mysqli_query($link,$consulta); $sql=mysqli_query($link,$consulta);
if (@mysqli_num_rows($sql)!=0){ if (@mysqli_num_rows($sql)!=0){
$resultado[] = mysqli_result($sql,0,$por); if($limit =="") {
$resultado[] = mysqli_result($sql,0,"$campo"); $resultado[0] = mysqli_result($sql,0,$por);
$resultado[] = $consulta; $resultado[1] = mysqli_result($sql,0,"$campo");
$resultado[] = mysqli_result($sql,0,"md5_$por"); $resultado[2] = $consulta;
$resultado[3] = mysqli_result($sql,0,"md5_$por");}
else {
$row = mysqli_fetch_array( $sql );
$resultado[0]=$row;
$resultado[1] = mysqli_result($sql,0,"$campo");
$resultado[2] = $consulta;
$resultado[3] = mysqli_result($sql,0,"md5_$por");
}
}else{ }else{
$resultado[0] = ''; $resultado[0] = '';
$resultado[1] =""; $resultado[1] ="";
$resultado[2] = $consulta; $resultado[2] = $consulta;
$resultado[3] = NULL; $resultado[3] = NULL;
} }
return $resultado; return $resultado;
} }
@ -4988,16 +4998,33 @@ $resultado = "<div class=''> $datos</div>";
$xajax->registerFunction("consultar_formulario"); $xajax->registerFunction("consultar_formulario");
function datos_array($identificador) { function datos_array($identificador,$id_form,$timestamp) {
if($id_form !="") { $w= "AND form_id ='$id_form' "; }else { $w= " "; }
$array = array();
$link=Conectarse(); $link=Conectarse();
mysqli_set_charset($link, "utf8"); mysqli_set_charset($link, "utf8");
$consulta ="SELECT * FROM form_datos WHERE control = '$identificador' if($timestamp != "") {
GROUP BY id_campo ORDER BY timestamp DESC "; $consulta = "SELECT * FROM form_datos
$sql = mysqli_query($link,$consulta) or die("Error al ejecutar consulta 02 "); WHERE control = '$identificador' AND form_id != '$id_form' GROUP BY form_id , timestamp
$array = array(); ";
$array["identificador"] = "$identificador"; // $array["consulta"] = "$consulta";
// return $timestam;
}else{
$consulta ="SELECT * FROM form_datos WHERE control = '$identificador' $w $w_timestamp
GROUP BY timestamp ORDER BY timestamp DESC ";
}
$sql = mysqli_query($link,$consulta) or die("Error al ejecutar consulta 02 ");
// $id_form = remplacetas('form_datos','control',"$identificador",'form_id'," form_id= '$id_form'") ;
$array["identificador"] = "$identificador";
$array["id_aplicacion"] = "$id_form";
//$array["consulta_form"] = "$id_form[2]";
//$array["consulta"] = "$consulta";
$con_respuesta = remplacetas_noid("form_id","formulario_respuesta","$id_form","id","","");
//$array["responde"] = json_decode("$con_respuesta[3]");
$array["responde"] = $con_respuesta[0];
while($row = mysqli_fetch_array( $sql )) while($row = mysqli_fetch_array( $sql ))
{ {
$id_campo = remplacetas('form_datos','id',$row["id"],'id_campo',"") ; $id_campo = remplacetas('form_datos','id',$row["id"],'id_campo',"") ;
@ -5035,12 +5062,48 @@ if($privado !='1') {
$array['orden'] = "$row[orden]"; $array['orden'] = "$row[orden]";
// $array['multiple']= $multiple[0]; // $array['multiple']= $multiple[0];
//$array[] = $row; //$array[] = $row;
if($con_respuesta[0] !="") {
//$contenido_respuestas = datos_array("$identificador","$row[form_id]","$row[timestamp]");
$contenido_respuestas = array_respuestas("$row[form_id]",$identificador,"array");//formulario_imprimir("$row[form_id]","$identificador","array",""); ///array_respuestas("$row[form_id]","$row[control]","json");
$array["responder"]= $contenido_respuestas;//"$contenido_respuestas $row[control] //$row[timestamp] // $row[form_id]";
}
} }
} }
return $array; return $array;
} }
function array_respuestas($id,$identificador,$plantilla) {
if($id=='') {return;}
$id = mysql_seguridad($id);
$formulario_respuesta = formulario_respuesta("$id","$identificador");
$consulta = "SELECT form_id , timestamp FROM form_datos
WHERE control = '$identificador' AND form_id != '$id' GROUP BY form_id , timestamp
";
$array = array();
$link=Conectarse();
mysqli_set_charset($link, "utf8");
$sql=mysqli_query($link,$consulta);
if (mysqli_num_rows($sql)!='0'){
mysqli_data_seek($sql, 0);
$resultado ="";
while( $row = mysqli_fetch_array( $sql ) ) {
$respuesta[] = mostrar_identificador("$identificador","$row[form_id]","array","array","$row[timestamp]");
$fecha = date($format, $row['timestamp']);
}$array[] = $respuesta;
}else{$resultado ="";}
//$resultado = "$resultado $formulario_respuesta";
//return $resultado;
return $array;
}
function parametrizacion_linea($tabla,$campo,$opcion,$descripcion,$div,$script,$item){ function parametrizacion_linea($tabla,$campo,$opcion,$descripcion,$div,$script,$item){
if(isset($_SESSION['id_empresa']) ){$id_empresa= $_SESSION['id_empresa']; }else{ return;//$id_empresa=""; if(isset($_SESSION['id_empresa']) ){$id_empresa= $_SESSION['id_empresa']; }else{ return;//$id_empresa="";
@ -6298,7 +6361,7 @@ function mostrar_identificador($control,$form,$plantilla,$tipo,$timestamp){
$edicion $edicion
</div> </div>
"; }else { "; }else {
$resultado = "$impresion"; $resultado = $impresion;
} }
}else{ }else{
$resultado ="<div class='container alert alert-warning alert_sin_resultados'><h1>No hay resultados 0002</h1></div>"; $resultado ="<div class='container alert alert-warning alert_sin_resultados'><h1>No hay resultados 0002</h1></div>";
@ -8636,21 +8699,12 @@ mysqli_set_charset($link, "utf8");
$id_campo = @remplacetas('form_datos','id',$row["id_dato"],'id_campo',"") ; $id_campo = @remplacetas('form_datos','id',$row["id_dato"],'id_campo',"") ;
//if($privado != '1') {
//$contenido = remplacetas('form_datos','id',$row[id_dato],'contenido',"") ;
//$contenido = remplacetas_orden('form_datos','id',$row[id_dato],'contenido',""," ORDER BY timestamp DESC ") ;
$nombre_campo = remplacetas('form_campos','id',$id_campo[0],'campo_nombre',"") ; $nombre_campo = remplacetas('form_campos','id',$id_campo[0],'campo_nombre',"") ;
$nuevos_datos = $datos; $nuevos_datos = $datos;
$nuevos_datos["identificador"]="$row[control]"; $nuevos_datos["identificador"]="$row[control]";
$nuevos_datos["tipo"]="array"; $nuevos_datos["tipo"]="array";
//$features[$row[control]] = datos_array($row[control]) ; $features[] = datos_array($row["control"],"$datos[id]","") ;
//json($nuevos_datos);//" $contenido[0]";//$row[id_campo];
$features[] = datos_array($row["control"]) ;
//$multiple = remplacetas('form_contenido_campos','id_form',$row['form_id'],'multiple',"id_campo ='$id_campo[0]' ") ;
///$features[] = "multiple:'holamundo $id_campo[0] // $multiple[0]'" ;
// $features[consulta] = "$consulta";
//json($nuevos_datos);//" $contenido[0]";//$row[id_campo];
//}//
} }
else { else {
// $features[] = $row; // $features[] = $row;
@ -10031,7 +10085,7 @@ if (mysqli_num_rows($sql)!='0'){
"; }else{ $contenido ="<div class='alert alert-danger'>No se ha definido un token de mapbox</div>";} "; }else{ $contenido ="<div class='alert alert-danger'>No se ha definido un token de mapbox</div>";}
} }
} }
elseif($campo_tipo=='4'){ $contenido = "<a href='$contenido' target='_blank'>$contenido</a>";} elseif($campo_tipo=='4'){ if($tipo=="array"){ $contenido = $contenido;}else { $contenido = "<a href='$contenido' target='_blank'>$contenido</a>";}}
elseif($campo_tipo=='18'){ $contenido = "";} elseif($campo_tipo=='18'){ $contenido = "";}
elseif($campo_tipo=='20'){ $contenido = ""; $campo_nombre[0]="";} elseif($campo_tipo=='20'){ $contenido = ""; $campo_nombre[0]="";}
elseif($campo_tipo=='23'){ elseif($campo_tipo=='23'){
@ -10095,7 +10149,7 @@ if (mysqli_num_rows($sql)!='0'){
} }
//////}
$campo_nombre = remplacetas('form_campos','id',$row['id_campo'],'campo_nombre',''); $campo_nombre = remplacetas('form_campos','id',$row['id_campo'],'campo_nombre','');
if($campo_tipo=='20'){ $campo_nombre[0] = "";} if($campo_tipo=='20'){ $campo_nombre[0] = "";}
@ -10138,7 +10192,7 @@ $campo_imagen = $campo_imagen[0];
//$array[icon][iconSize] =[50,50]; //$array[icon][iconSize] =[50,50];
}else{} }else{}
$array = array();
if($contenido_original !="") { if($contenido_original !="") {
//// si el campo es tipo password (18) no se muestra //// si el campo es tipo password (18) no se muestra
if($campo_tipo !='18'){ if($campo_tipo !='18'){
@ -10152,16 +10206,22 @@ if($contenido_original !="") {
<span tiple= '$campo_tipo' class='campo_titulo campo_nombre' id='nombre_$row[id_campo]'>$campo_nombre[0]</span><span class='pull-right'> $metadatos</span><br> <span tiple= '$campo_tipo' class='campo_titulo campo_nombre' id='nombre_$row[id_campo]'>$campo_nombre[0]</span><span class='pull-right'> $metadatos</span><br>
$contenido</p> $contenido</p>
</div>"; </div>";
}
}
} }
$array_contenido[$campo_nombre[0]][] = $contenido;
}
}
$array=$array_contenido;
//$resultado .=" </div> <!-- <div class='badge pull-right'>Datos registrados el $fecha </div> --> "; //$resultado .=" </div> <!-- <div class='badge pull-right'>Datos registrados el $fecha </div> --> ";
//}else {$resultado ="<div class='alert alert-warning'><h1>No se encontraron resultados</h1></div>"; return $resultado;} //}else {$resultado ="<div class='alert alert-warning'><h1>No se encontraron resultados</h1></div>"; return $resultado;}
//if($id=="6" OR $id=="10") { //if($id=="6" OR $id=="10") {
$plantilla=""; $plantilla="";
$class=""; $class="";
if($tipo =="array") {
return $array;
}
if($tipo !="" AND (!is_numeric($tipo)) AND $tipo !="metadatos" ) { if($tipo !="" AND (!is_numeric($tipo)) AND $tipo !="metadatos" ) {
////Usa una plantilla apra cada id ////Usa una plantilla apra cada id