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 7757e50..5ff9a23 100644 --- a/funciones/funciones.php +++ b/funciones/funciones.php @@ -6,9 +6,31 @@ date_default_timezone_set('America/Bogota'); use Firebase\JWT\JWT; +function array_linea($datos,$tipo,$id){ + $output=""; + + 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"; + } + } + } + } +<<<<<<< HEAD function build_list($group,$tipo) { $form_id=""; $output = (is_array($group)) ? "" : ""; @@ -38,7 +60,14 @@ function build_list($group,$tipo) { $salida ="$output"; return $salida; +======= + +return $output ; +>>>>>>> 491d3f3d52f4349f9ebd4ee7e988af8f6956c16a } + + + function generar_token($div,$tipo) { require_once 'rest/vendor/autoload.php'; $valor= intval(preg_replace('/[^0-9]+/', '', $div), 10); ; @@ -5582,31 +5611,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 +5660,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 .=""; @@ -8136,69 +8167,80 @@ $campo_titulo_nombre = remplacetas('form_campos','id',$campo_titulo[0],'campo_no $link=Conectarse(); $ultimo = formulario_uso("$formulario",'','ultimo') ; mysqli_set_charset($link, "utf8"); -if($valores =="boton") { -$consulta ="SELECT * FROM form_parametrizacion WHERE campo = '$formulario' AND `opcion` REGEXP '^plantilla:' ORDER BY opcion"; - -$sql=mysqli_query($link,$consulta); -if (mysqli_num_rows($sql)!=0){ - -while( $row = mysqli_fetch_array( $sql ) ) { - $campos_opcion = explode(":",$row[opcion]); - $plantilla_nombre = $campos_opcion[1]; -$listado .= ""; -$li .= " - $plantilla_nombre - Editar - Editar - - "; -//mostrar_modal($form,$control,$plantilla) -} -$resultado = " -
- Seleccione una plantilla - - -
Nueva plantilla
-
- - -"; -$lista =" -
-

Las plantillas se usan para dar formato a los datos en el momento de presentarlos, se puede usar etiquetas HTML5, CSS3 y clases de Bootstrap

- - - - - - -$li -
NombreEditarVer
-
Nueva plantilla
-"; - $respuesta->addAssign("$div","innerHTML","$lista"); +if($formulario =='eliminar'){ + $limpiar ="DELETE FROM `form_parametrizacion` WHERE id = '$valores' AND id_empresa = '$_SESSION[id_empresa]' LIMIT 1 "; + $sql=mysqli_query($link,$limpiar); + $respuesta->addAssign("$div","innerHTML",""); return $respuesta; + + + } +if($valores =="boton") { + $consulta ="SELECT * FROM form_parametrizacion WHERE campo = '$formulario' AND `opcion` REGEXP '^plantilla:' AND id_empresa = '$_SESSION[id_empresa]' ORDER BY opcion"; -} -else { + $sql=mysqli_query($link,$consulta); + if (mysqli_num_rows($sql)!=0){ -$resultado =" -
-
-

Aún no se han definido plantillas para este formulario -
Crear una plantilla
-

-
-"; - $respuesta->addAssign("$div","innerHTML","$resultado"); - return $respuesta; -} -} + while( $row = mysqli_fetch_array( $sql ) ) { + $campos_opcion = explode(":",$row[opcion]); + $plantilla_nombre = $campos_opcion[1]; + if(is_null($row[id_empresa])){ $class="danger";}else{$class='success';} + $listado .= ""; + $li .= " + $plantilla_nombre + Editar + Ver + Eliminar + + "; + //mostrar_modal($form,$control,$plantilla) + } + + $resultado = " +
+ Seleccione una plantilla + + +
Nueva plantilla
+
+ + "; + $lista =" +
+

Las plantillas se usan para dar formato a los datos en el momento de presentarlos, se puede usar etiquetas HTML5, CSS3 y clases de Bootstrap

+ + + + + + + + $li +
NombreEditarVerEliminar
+
Nueva plantilla
+ "; + $respuesta->addAssign("$div","innerHTML","$lista"); + return $respuesta; + + } + else { + + $resultado =" +
+
+

Aún no se han definido plantillas para este formulario +
Crear una plantilla
+

+
+ "; + $respuesta->addAssign("$div","innerHTML","$resultado"); + return $respuesta; + } +} elseif($valores =="formulario" OR is_numeric($valores)) { $campos = parametrizacion_plantilla_campos("$formulario"); $descripcion = remplacetas('form_parametrizacion','id',$valores,'descripcion',"") ; @@ -8206,107 +8248,101 @@ elseif($valores =="formulario" OR is_numeric($valores)) { $campos_opcion = explode(":",$opcion[0]); $plantilla_nombre = $campos_opcion[1]; include("includes/bootsrap_class_list.php"); -$resultado =" -
-
-
-
- -
-
- A
A
')); \"> -
-
A
-
A
-
div
-
H1
-
H2
-
H3
-
-
<li>
-
-
MB
-
-
+ $resultado =" +
+
-
-
- $listado_clases +
+
-
-
-
Editor HTML
- -
-
-
-
Campos inteligentes
- $campos +
+ A
A
')); \"> +
+
A
+
A
+
div
+
H1
+
H2
+
H3
+
+
<li>
+
+
MB
-
-
-
- +
+
+
+ $listado_clases +
+
+
+
Editor HTML
+ +
+
+
+
Campos inteligentes
+ $campos +
+
-
-
- Nombre: - +
+
+ +
+
+
+ Nombre: + +
+ +
+
+
+
+ +
-
-
-
-
- -
-
- -
- -"; +
+ + "; } - elseif(is_array($valores)) { $texto=str_replace('"',"'",$valores[text_contenedor]); -$plantilla = htmlentities($texto); -if($valores[nombre_plantilla] == "") { - $respuesta->addAlert("No ha especificado un nombre para la plantilla"); - $respuesta->addAssign("input_nombre_plantilla","className","input-group has-error"); - return $respuesta; - } -$limpiar ="DELETE FROM `form_parametrizacion` WHERE tabla = 'form_id' AND campo ='$formulario' AND opcion ='plantilla:$valores[nombre_plantilla]' LIMIT 1 "; -$sql=mysqli_query($link,$limpiar); -$consulta="INSERT INTO form_parametrizacion set tabla = 'form_id' , campo ='$formulario', opcion ='plantilla:$valores[nombre_plantilla]', descripcion =\"$plantilla\", visible='1' "; -$sql=mysqli_query($link,$consulta); -$ultimo = formulario_uso("$formulario",'','ultimo') ; -$datos = contenido_mostrar("$formulario","$ultimo[1]",'',"$valores[nombre_plantilla]"); -$preview = " $valores[nombre_plantilla] $datos "; - $div_contenido = ""; - $respuesta->addAssign("muestra_form","innerHTML","$div_contenido"); - $respuesta->addAssign("titulo_modal","innerHTML","$resultado"); - $respuesta->addAssign("pie_modal","innerHTML","$pie"); - //$respuesta->addAssign("$div","innerHTML","$resultado"); - $respuesta->addscript("$('#muestraInfo').modal('toggle')"); - - - return $respuesta; - -} -else{ -$resultado =""; -} -$resultado .= ""; - - - $respuesta->addAssign("$div","innerHTML","$resultado"); + $plantilla = htmlentities($texto); + if($valores[nombre_plantilla] == "") { + $respuesta->addAlert("No ha especificado un nombre para la plantilla"); + $respuesta->addAssign("input_nombre_plantilla","className","input-group has-error"); + return $respuesta; + } + $limpiar ="DELETE FROM `form_parametrizacion` WHERE tabla = 'form_id' AND campo ='$formulario' AND opcion ='plantilla:$valores[nombre_plantilla]' LIMIT 1 "; + $sql=mysqli_query($link,$limpiar); + $consulta="INSERT INTO form_parametrizacion set tabla = 'form_id' , campo ='$formulario', opcion ='plantilla:$valores[nombre_plantilla]', descripcion =\"$plantilla\", visible='1', id_empresa= '$_SESSION[id_empresa]' "; + $sql=mysqli_query($link,$consulta); + $ultimo = formulario_uso("$formulario",'','ultimo') ; + $datos = contenido_mostrar("$formulario","$ultimo[1]",'',"$valores[nombre_plantilla]"); + $preview = " $valores[nombre_plantilla] $datos "; + $div_contenido = ""; + $respuesta->addAssign("muestra_form","innerHTML","$div_contenido"); + $respuesta->addAssign("titulo_modal","innerHTML","$resultado"); + $respuesta->addAssign("pie_modal","innerHTML","$pie"); + //$respuesta->addAssign("$div","innerHTML","$resultado"); + $respuesta->addscript("$('#muestraInfo').modal('toggle')"); return $respuesta; } +else{ + $resultado =""; +} + $resultado .= ""; + $respuesta->addAssign("$div","innerHTML","$resultado"); + return $respuesta; +} $xajax->registerFunction("parametrizacion_plantilla"); @@ -13117,7 +13153,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 +13211,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 = $contenido; + }else{$imagen=""; $laimagen="";} + } elseif($campo_tipo=='29'){ $contenido=""; } @@ -13287,7 +13327,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 +13386,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 +13434,7 @@ if($plantilla != ""){ /// $full = preg_replace("/<[^\/][^<>]*> *<\/[^<>]*>/", "", $full ); }else { - $full= "
$resultado
"; + $full= "
$resultado
"; } $resultado ="$full"; @@ -13749,10 +13794,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 +13810,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 +13825,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 +13854,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 +13906,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,8 +14126,15 @@ $resultado ="
$imagen
    $leyenda
+<<<<<<< HEAD
"; +======= +
$respuestas
+
+ +
"; +>>>>>>> 491d3f3d52f4349f9ebd4ee7e988af8f6956c16a return $resultado; } elseif($tipo =="array") { @@ -16538,6 +16597,7 @@ return $existe; function formulario_grabar($formulario,$accion) { $formulario_original = $formulario; + $timestamp= time(); $respuesta = new xajaxResponse('utf-8'); if($accion == "api"){ @@ -16779,7 +16839,7 @@ else{ $consulta =" INSERT INTO `form_datos` (`id`, `id_campo`,`orden`,`form_id`, `id_usuario`, `contenido`, `timestamp`, `control`, ip , id_empresa, equipo,proceso) - VALUES (NULL, '$c','$C', '$formulario[form_id]', '".@$_SESSION[id]."', '$V', UNIX_TIMESTAMP(), '$formulario[control]',$graba_ip,'$id_empresa','$equipo','$formulario[proceso]');"; + VALUES (NULL, '$c','$C', '$formulario[form_id]', '".@$_SESSION['id']."', '$V', '$timestamp', '$formulario[control]',$graba_ip,'$id_empresa','$equipo','$formulario[proceso]');"; $json_datos[] = array($c, array("nombre_campo",$campo_nombre[0]), array("contenido",$V),array("orden",$C)); $sql=mysqli_query($link,$consulta); $debug .= "$consulta = $sql ,"; @@ -16884,8 +16944,8 @@ $otro_formulario =" $json_encabezado = array( array("form_id",$formulario['form_id']),array("usuario","$_SESSION[id]"),array("timestamp",time()),array("empresa","$id_empresa"),array("ip","$ip"),array("equipo","$equipo")); $json_datos= array($formulario["control"],array($json_encabezado,array("datos",$json_datos) )); $mostrar_json = json_encode($json_datos,JSON_PRETTY_PRINT); - -$impresion = formulario_imprimir("","$formulario[control]","preview",''); +//formulario_imprimir($id,$control,$tipo,$timestamp) +$impresion = formulario_imprimir("","$formulario[control]","preview","$timestamp"); $mensaje_agradecimiento = remplacetas('form_parametrizacion','campo',"$formulario[form_id]",'descripcion'," tabla='form_id' and opcion = 'mensaje_envio'") ; //$impresion = mostrar_identificador($formulario['control']); $exito =" diff --git a/js/scripts.js b/js/scripts.js index a29e63d..5a73f93 100644 --- a/js/scripts.js +++ b/js/scripts.js @@ -5,8 +5,8 @@ inicio = leerCookie("timestamp"); transcurrido = (timestamp - inicio); transcurrido_minutos = Math.round(transcurrido/60); - restante = (tiempo - transcurrido_minutos) - prefin = (tiempo*60)-transcurrido + restante = (tiempo - transcurrido_minutos); + prefin = (tiempo*60)-transcurrido; document.form_session.tiempo_session.value = "Cierra en: "+restante+" minutos ";