From bb907120f0b0c0aa5526ac0e216d046a2c43e3ea Mon Sep 17 00:00:00 2001 From: humano Date: Thu, 1 Nov 2018 18:12:52 -0500 Subject: [PATCH] mejoras en anidado para la vista aplicacion --- api.php | 3 +- funciones/funciones.php | 153 ++++++++++++++++++++++------------------ 2 files changed, 87 insertions(+), 69 deletions(-) diff --git a/api.php b/api.php index 594a574..c8449c5 100644 --- a/api.php +++ b/api.php @@ -33,7 +33,8 @@ if(isset($_REQUEST['formato'])){ //print_r($array);//echo "hola li"; $json= json($datos); $array = json_decode($json); - echo "".build_list($array,$_REQUEST['formato']); + echo array_linea($array,$_REQUEST['formato'],$_REQUEST['id']); + //echo "".build_list($array,$_REQUEST['formato'],$_REQUEST['id']); //echo $json; //echo planilla($datos['id'],$datos['registros'],"dinamico"); // } diff --git a/funciones/funciones.php b/funciones/funciones.php index 31d2927..9f69e03 100644 --- a/funciones/funciones.php +++ b/funciones/funciones.php @@ -6,39 +6,36 @@ date_default_timezone_set('America/Bogota'); use Firebase\JWT\JWT; +function array_linea($datos,$tipo,$id){ + $output=""; - - -function build_list($group,$tipo) { - $form_id=""; - $output = (is_array($group)) ? "" : ""; - foreach($group as $attr => $item) { - if(is_array($item) || is_object($item)) { - $output .= build_list($item,$tipo); - } else { - if( $attr=="identificador") { - if($tipo =='li'){ - $output .= formulario_imprimir_linea("","$item","linea_planilla"); + foreach ($datos[0] as $id_campo => $valor) { + if( $id_campo=="identificador") { + if(!is_array($valor)){ + if($tipo =='li'){ + $output .= formulario_imprimir_linea("$id","$valor","linea_planilla"); + } + elseif($tipo =='galeria'){ + $output .= formulario_imprimir_linea("$id","$valor","galeria"); + + } + + else{ + + $output .= "$attr - $item"; + } + } } - elseif($tipo =='galeria'){ - $output .= formulario_imprimir_linea("","$item","galeria"); - } - - else{ - - $output .= "$attr - $item"; - } - } - if( $attr=="id_aplicacion") { $form_id= $item;} - - } - } - $output .= (is_array($group)) ? "" : ""; - - - $salida ="$output"; - return $salida; + } + + + + +return $output ; } + + + function generar_token($div,$tipo) { require_once 'rest/vendor/autoload.php'; $valor= intval(preg_replace('/[^0-9]+/', '', $div), 10); ; @@ -5582,31 +5579,33 @@ $xajax->registerFunction("campo_privacidad"); function respuestas_formulario($id,$identificador,$plantilla) { - if($id=='') {return;} - $id = mysql_seguridad($id); - $formulario_respuesta = formulario_respuesta("$id","$identificador"); + + + $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 ORDER by timestamp DESC limit 1 + WHERE control = '$identificador' AND form_id != '$id' GROUP BY form_id , timestamp ORDER by timestamp DESC "; $link=Conectarse(); mysqli_set_charset($link, "utf8"); $sql=mysqli_query($link,$consulta); +$resultado =""; + if (mysqli_num_rows($sql)!='0'){ + mysqli_data_seek($sql, 0); -if (mysqli_num_rows($sql)!='0'){ - mysqli_data_seek($sql, 0); + + while( $row = mysqli_fetch_array( $sql ) ) { + $respuesta = mostrar_identificador("$identificador","$row[form_id]","respuesta","simple","$row[timestamp]"); + $fecha = date("Y-m-d H:i:s", $row['timestamp']); + $aplicacion= remplacetas('form_id','id',"$row[form_id]","nombre",""); + $aplicacion_descripcion= remplacetas('form_id','id',"$row[form_id]","descripcion",""); + $resultado .= "
$aplicacion[0]$aplicacion_descripcion[0] $respuesta

"; - $resultado =""; - while( $row = mysqli_fetch_array( $sql ) ) { - $respuesta = mostrar_identificador("$identificador","$row[form_id]","respuesta","simple","$row[timestamp]"); - $fecha = date($format, $row['timestamp']); - $resultado .= "

$respuesta

"; - -} - $resultado .=""; -}else{$resultado ="";} -$resultado = "
$resultado $formulario_respuesta
"; -return $resultado; + } + $resultado .=""; + }else{$resultado ="";} +$resultado = "
$resultado $formulario_respuesta

"; +return "$resultado"; } @@ -5629,7 +5628,7 @@ if (mysqli_num_rows($sql)!='0'){ $descripcion =substr($row['descripcion'],0, $length = 80); $caracteres = strlen("$descripcion"); if($caracteres > 80) { $descripcion= "$descripcion ... ";} - $resultado .= "
$row[nombre] $descripcion
"; + $resultado .= "
$row[nombre] $descripcion
"; } $resultado .=""; @@ -13117,7 +13116,7 @@ if(is_numeric($tipo)) { $limit = "limit $tipo "; $class= "alert alert-info";} } if($control_existe[0] ==""){return $control;} if($publico[0] != "1" and ( $_SESSION['id_empresa'] != $empresa_seguridad[0] ) AND $sigue_restringido !="" ) { - $resultado ="
Acceso restringido Esta aplicaciĆ³n contiene datos privados ($id),$control,$tipo,$timestamp + $resultado ="
Acceso restringido Esta aplicaciĆ³n contiene datos privados
"; return $resultado; @@ -13175,18 +13174,22 @@ if (mysqli_num_rows($sql)!='0'){ - if($campo_tipo =='15' AND $tipo==""){if($contenido !=""){ - $contenido = " - Mostrar + if($campo_tipo =='15' AND $tipo==""){ + if($contenido !=""){ + $contenido = " + Mostrar "; - $laimagen = $contenido; - }else{$contenido=""; $laimagen="";}} - elseif($campo_tipo =='15' ){if($contenido !=""){ - $imagen = " + $laimagen = $contenido; + } + else{$contenido=""; $laimagen="";} + }elseif($campo_tipo =='15' ){ + if($contenido !=""){ + $imagen = " - "; - $laimagen = $imagen; - }else{$imagen=""; $laimagen="";}} + "; + $laimagen = $imagen; + }else{$imagen=""; $laimagen="";} + } elseif($campo_tipo=='29'){ $contenido=""; } @@ -13287,7 +13290,10 @@ $campo_imagen = buscar_campo_tipo($id,"15"); //$campo_imagen_nombre = $campo_imagen[1]; $campo_imagen = $campo_imagen[0]; //// - if($row['id_campo'] == $campo_imagen AND $tipo !="" ){ $contenido = strip_tags($contenido); } + if($row['id_campo'] == $campo_imagen AND $tipo !="" ){ + $contenido = strip_tags($contenido).""; + $contenido = ""; + } $campo[$row['id_campo']]=$contenido; $caracteres = strlen("$contenido"); @@ -13343,10 +13349,12 @@ if($contenido_original !="") { $metadatos = " ".date('Y-m-d H:i:s',$contenido_array[1])." id $contenido_array[0] proceso $contenido_array[5] usuario $contenido_array[6] ip ".long2ip($contenido_array[7])." campo $row[id_campo] "; }else {$metadatos='';} $resultado .= " -
+
- $campo_nombre[0] $metadatos
- $contenido

+ $campo_nombre[0]: +

$contenido + $metadatos +

"; } @@ -13389,7 +13397,7 @@ if($plantilla != ""){ /// $full = preg_replace("/<[^\/][^<>]*> *<\/[^<>]*>/", "", $full ); }else { - $full= "
$resultado
"; + $full= "
$resultado
"; } $resultado ="$full"; @@ -13749,10 +13757,15 @@ function formulario_imprimir_linea($id,$control,$tipo) { $interaccion_campo=""; $campo_interaccion=""; $interaccion_form=""; + $respuestas=""; + $imagen=""; + + if($id ==""){ $id = remplacetas('form_datos','control',$control,'form_id',"") ; $id=$id[0]; } + //$formulario_anidado = remplacetas('form_id','formulario_respuesta',$id,'id','') ; $id = mysql_seguridad($id); $tipo_original = $tipo; @@ -13760,7 +13773,7 @@ function formulario_imprimir_linea($id,$control,$tipo) { if($tipo[1] !=""){ $campo_interaccion = $tipo[1]; $area = "$tipo_original[2]"; - if($area !=""){ $consulta_area= "SELECT * FROM form_datos,form_campos WHERE form_datos.id_campo=form_campos.id AND (form_campos.campo_area = '$area' OR form_campos.id='$campo_interaccion' )AND control = '$control' GROUP BY id_campo ";} + if($area !=""){ $consulta_area= "SELECT * FROM form_datos,form_campos WHERE form_datos.form_id = '$id' AND form_datos.id_campo=form_campos.id AND (form_campos.campo_area = '$area' OR form_campos.id='$campo_interaccion' )AND control = '$control' GROUP BY id_campo ";} $interaccion_campo =interaccion_identificador("$control","",'check',"$tipo[1]");//""; $clase_interaccion="warning"; @@ -13775,7 +13788,7 @@ function formulario_imprimir_linea($id,$control,$tipo) { $campo_interaccion = "$tipo_original[1]"; $area = "$tipo_original[2]"; - if($area !=""){ $consulta_area= "SELECT * FROM form_datos,form_campos WHERE form_datos.id_campo=form_campos.id AND (form_campos.campo_area = '$area' OR form_campos.id='$campo_interaccion' ) GROUP BY id_campo ";} + if($area !=""){ $consulta_area= "SELECT * FROM form_datos,form_campos WHERE form_datos.form_id = '$id' AND form_datos.id_campo=form_campos.id AND (form_campos.campo_area = '$area' OR form_campos.id='$campo_interaccion' ) GROUP BY id_campo ";} }else{} @@ -13804,7 +13817,7 @@ function formulario_imprimir_linea($id,$control,$tipo) { }else { // $consulta = "SELECT * FROM form_datos WHERE control = '$control' GROUP BY id_campo" ; - $consulta = "SELECT * FROM form_datos,form_campos WHERE form_datos.id_campo=form_campos.id and form_datos.control = '$control' GROUP BY id_campo" ; + $consulta = "SELECT * FROM form_datos,form_campos WHERE form_datos.form_id = '$id' AND form_datos.id_campo=form_campos.id and form_datos.control = '$control' GROUP BY id_campo" ; } //if($consulta_area !=""){ $consulta= $consulta_area;} @@ -13856,6 +13869,8 @@ if (mysqli_num_rows($sql)!='0'){ //return " id= $id // $consulta" ;//print_r($tipo_original); while( $row = mysqli_fetch_array( $sql ) ) { + $respuestas = respuestas_formulario("$id","$control",''); + //// PRIVACIDAD del campo $equipo = remplacetas('form_datos','control',$control,'equipo',"") ; @@ -14074,7 +14089,9 @@ $resultado ="
$imagen
    $leyenda
-
+
$respuestas
+
+
"; return $resultado; }