diff --git a/milfs/css/images/buttons.gif b/milfs/css/images/buttons.gif
new file mode 100644
index 0000000..2e464d0
Binary files /dev/null and b/milfs/css/images/buttons.gif differ
diff --git a/milfs/css/images/toolbar.gif b/milfs/css/images/toolbar.gif
new file mode 100644
index 0000000..e6eb2da
Binary files /dev/null and b/milfs/css/images/toolbar.gif differ
diff --git a/milfs/css/jquery.cleditor.css b/milfs/css/jquery.cleditor.css
new file mode 100644
index 0000000..fa4481d
--- /dev/null
+++ b/milfs/css/jquery.cleditor.css
@@ -0,0 +1,26 @@
+.cleditorMain {border:1px solid #999; padding:0 1px 1px; background-color:white}
+.cleditorMain,
+.cleditorPopup,
+.cleditorMain * {-moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box}
+.cleditorMain iframe {border:none; margin:0; padding:0}
+.cleditorMain textarea {overflow-y:scroll; font:10pt Arial,Verdana; resize:none; outline:none}
+.cleditorToolbar {background: url('images/toolbar.gif') repeat}
+.cleditorGroup {float:left; height:26px}
+.cleditorButton {float:left; width:24px; height:24px; margin:1px 0 1px 0; background: url('images/buttons.gif')}
+.cleditorDisabled {opacity:0.3; filter:alpha(opacity=30)}
+.cleditorDivider {float:left; width:1px; height:23px; margin:1px 0 1px 0; background:#CCC}
+.cleditorPopup {border:solid 1px #999; background-color:white; color:#333333; position:absolute; font:10pt Arial,Verdana; cursor:default; z-index:10000}
+.cleditorList div {padding:2px 4px 2px 4px}
+.cleditorList p,
+.cleditorList h1,
+.cleditorList h2,
+.cleditorList h3,
+.cleditorList h4,
+.cleditorList h5,
+.cleditorList h6,
+.cleditorList font {padding:0; margin:0; background-color:Transparent}
+.cleditorColor {width:150px; padding:1px 0 0 1px}
+.cleditorColor div {float:left; width:14px; height:14px; margin:0 1px 1px 0}
+.cleditorPrompt {background-color:#F6F7F9; padding:8px; font-size:8.5pt}
+.cleditorPrompt label {padding-bottom:8px}
+.cleditorMsg {background-color:#FDFCEE; width:150px; padding:4px; font-size:8.5pt}
\ No newline at end of file
diff --git a/milfs/css/style.css b/milfs/css/style.css
new file mode 100644
index 0000000..5d39f70
--- /dev/null
+++ b/milfs/css/style.css
@@ -0,0 +1,172 @@
+ * {
+ margin: 0;
+ padding: 0;
+}
+
+body {
+ background: #222;
+ font-family: Georgia, serif;
+ color: #fff;
+ font-size: 14px;
+}
+
+#dates a {
+ color: gray;
+ text-decoration: none;
+ -webkit-transition: 0.5s;
+ -moz-transition: 0.5s;
+ -o-transition: 0.5s;
+ -ms-transition: 0.5s;
+ transition: 0.5s;
+ font-size: 12px;
+}
+#dates a:hover,
+#dates a.selected {
+ color: red;
+ font-size: 18px;
+ }
+/*
+h1,h2,h4,h5,h6 {
+ text-align: center;
+ color: #ccc;
+ text-shadow: #000 1px 1px 2px;
+ margin-bottom: 5px;
+}
+ h1 {
+ font-size: 18px;
+ }
+ h2 {
+ font-size: 14px;
+ }
+.sociales {
+ text-align: center;
+ margin-bottom: 20px;
+}
+*/
+ #timeline {
+ width: 95%;
+ height: 500px;
+ overflow: hidden;
+ margin: 100px auto;
+ position: relative;
+
+ }
+ #dates {
+ width: 800px;
+ height: 60px;
+ overflow: hidden;
+ background: url('timeline/dot.gif') left 45px repeat-x;
+ }
+ #dates li {
+ list-style: none;
+ float: left;
+ width: 100px;
+ height: 50px;
+ font-size: 24px;
+ text-align: center;
+ background: url('timeline/biggerdot.png') center bottom no-repeat;
+ }
+ #dates a {
+ line-height: 18px;
+ padding-bottom: 10px;
+ }
+ #dates .selected {
+ font-size: 18px;
+ }
+
+ #issues {
+ width: 800px;
+ height: 500px;
+ overflow: hidden;
+ }
+ #issues li {
+ width: 900px;
+ height: 500px;
+ list-style: none;
+ float: left;
+ }
+ #issues li.selected img {
+ -webkit-transform: scale(1.1,1.1);
+ -moz-transform: scale(1.1,1.1);
+ -o-transform: scale(1.1,1.1);
+ -ms-transform: scale(1.1,1.1);
+ transform: scale(1.1,1.1);
+ }
+ #issues li img {
+ float: left;
+ margin: 10px 30px 10px 50px;
+ background: transparent;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)"; /* IE 8 */
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);/* IE 6 & 7 */
+ zoom: 1;
+ -webkit-transition: all 2s ease-in-out;
+ -moz-transition: all 2s ease-in-out;
+ -o-transition: all 2s ease-in-out;
+ -ms-transition: all 2s ease-in-out;
+ transition: all 2s ease-in-out;
+ -webkit-transform: scale(0.7,0.7);
+ -moz-transform: scale(0.7,0.7);
+ -o-transform: scale(0.7,0.7);
+ -ms-transform: scale(0.7,0.7);
+ transform: scale(0.7,0.7);
+ }
+ #issues li h1 {
+
+ font-size: 48px;
+ margin: 20px 0;
+ color: red;
+ /*text-shadow: #000 1px 1px 2px;*/
+ }
+ #issues li p {
+ font-size: 14px;
+ margin-right: 70px;
+ font-weight: normal;
+ line-height: 22px;
+ /* text-shadow: #000 1px 1px 2px;*/
+ }
+
+ #grad_left,
+ #grad_right {
+ width: 100px;
+ height: 500px;
+ position: absolute;
+ top: 0;
+ }
+ #grad_left {
+ left: 0;
+ /* background: url('timeline/grad_left.png') repeat-y;*/
+ }
+ #grad_right {
+ right: 0;
+ /* background: url('timeline/grad_right.png') repeat-y;*/
+ }
+
+ #next,
+ #prev {
+ position: absolute;
+ top: 0;
+ font-size: 70px;
+ top: 170px;
+ width: 22px;
+ height: 38px;
+ background-position: 0 0;
+ background-repeat: no-repeat;
+ text-indent: -9999px;
+ overflow: hidden;
+ }
+ #next:hover,
+ #prev:hover {
+ background-position: 0 -76px;
+ }
+ #next {
+ right: 0;
+ background-image: url('timeline/next.png');
+ }
+ #prev {
+ left: 0;
+ background-image: url('timeline/prev.png');
+ }
+ #next.disabled,
+ #prev.disabled {
+ opacity: 0.2;
+ }
\ No newline at end of file
diff --git a/milfs/css/styletimeline.css b/milfs/css/styletimeline.css
new file mode 100644
index 0000000..fdacf72
--- /dev/null
+++ b/milfs/css/styletimeline.css
@@ -0,0 +1,157 @@
+/*
+h1,h2,h4,h5,h6 {
+ text-align: center;
+ color: #ccc;
+
+ margin-bottom: 5px;
+}
+ h1 {
+ font-size: 18px;
+ }
+ h2 {
+ font-size: 14px;
+ }
+
+.sociales {
+ text-align: center;
+ margin-bottom: 20px;
+}
+*/
+ #timeline {
+ width: 95%;
+ height: 500px;
+ overflow: auto;
+ margin: 100px auto;
+ position: relative;
+
+ }
+ #dates {
+ width: 100%;
+ height: 60px;
+ overflow: hidden;
+ background: url('timeline/dot.gif') left 45px repeat-x;
+ }
+ #dates li {
+ list-style: none;
+ float: left;
+ width: 100px;
+ height: 50px;
+ font-size: 24px;
+ text-align: center;
+ background: url('timeline/biggerdot.png') center bottom no-repeat;
+ }
+ #dates a {
+ line-height: 10px !important;
+ font-size: 14px !important;
+ padding-bottom: 10px;
+ color: gray !important;
+ text-decoration: none;
+ -webkit-transition: 0.5s;
+ -moz-transition: 0.5s;
+ -o-transition: 0.5s;
+ -ms-transition: 0.5s;
+ transition: 0.5s;
+}
+ #dates a:hover,
+ #dates a.selected {
+ color: black !important;
+ }
+ #dates .selected {
+ font-size: 18px !important;
+ }
+
+ #issues {
+ width: 100%;
+ height: 500px;*/
+ overflow: hidden;
+ }
+ #issues li {
+ width: 100%;
+ height: 500px;
+ list-style: none;
+ float: left;
+ }
+ #issues li.selected img {
+ -webkit-transform: scale(1.1,1.1);
+ -moz-transform: scale(1.1,1.1);
+ -o-transform: scale(1.1,1.1);
+ -ms-transform: scale(1.1,1.1);
+ transform: scale(1.1,1.1);
+ }
+ #issues li img {
+ float: left;
+ margin: 10px 30px 10px 50px;
+ background: transparent;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)"; /* IE 8 */
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);/* IE 6 & 7 */
+ zoom: 1;
+ -webkit-transition: all 2s ease-in-out;
+ -moz-transition: all 2s ease-in-out;
+ -o-transition: all 2s ease-in-out;
+ -ms-transition: all 2s ease-in-out;
+ transition: all 2s ease-in-out;
+ -webkit-transform: scale(0.7,0.7);
+ -moz-transform: scale(0.7,0.7);
+ -o-transform: scale(0.7,0.7);
+ -ms-transform: scale(0.7,0.7);
+ transform: scale(0.7,0.7);
+ }
+ #issues li h1 {
+ color: red;
+ font-size: 60px !important;
+ margin: 20px 0;
+ //text-shadow: #000 1px 1px 2px;
+ }
+ #issues li p {
+ font-size: 14px;
+ margin-right: 70px;
+ font-weight: normal;
+ line-height: 22px;
+ //text-shadow: #000 1px 1px 2px;
+ }
+
+ #grad_left,
+ #grad_right {
+ width: 100px;
+ height: 500px;
+ position: absolute;
+ top: 0;
+ }
+ #grad_left {
+ left: 0;
+ /* background: url('timeline/grad_left.png') repeat-y;*/
+ }
+ #grad_right {
+ right: 0;
+ /* background: url('timeline/grad_right.png') repeat-y; */
+ }
+
+ #next,
+ #prev {
+ position: absolute;
+ top: 0;
+ font-size: 70px;
+ top: 170px;
+ width: 22px;
+ height: 38px;
+ background-position: 0 0;
+ background-repeat: no-repeat;
+ text-indent: -9999px;
+ overflow: hidden;
+ }
+ #next:hover,
+ #prev:hover {
+ background-position: 0 -76px;
+ }
+ #next {
+ right: 0;
+ background-image: url('timeline/next.png');
+ }
+ #prev {
+ left: 0;
+ background-image: url('timeline/prev.png');
+ }
+ #next.disabled,
+ #prev.disabled {
+ opacity: 0.2;
+ }
\ No newline at end of file
diff --git a/milfs/css/timeline/biggerdot.png b/milfs/css/timeline/biggerdot.png
new file mode 100644
index 0000000..66324b6
Binary files /dev/null and b/milfs/css/timeline/biggerdot.png differ
diff --git a/milfs/css/timeline/buttons.gif b/milfs/css/timeline/buttons.gif
new file mode 100644
index 0000000..2e464d0
Binary files /dev/null and b/milfs/css/timeline/buttons.gif differ
diff --git a/milfs/css/timeline/dot.gif b/milfs/css/timeline/dot.gif
new file mode 100644
index 0000000..609bda0
Binary files /dev/null and b/milfs/css/timeline/dot.gif differ
diff --git a/milfs/css/timeline/grad_bottom.png b/milfs/css/timeline/grad_bottom.png
new file mode 100644
index 0000000..cd2295b
Binary files /dev/null and b/milfs/css/timeline/grad_bottom.png differ
diff --git a/milfs/css/timeline/grad_left.png b/milfs/css/timeline/grad_left.png
new file mode 100644
index 0000000..e7e3653
Binary files /dev/null and b/milfs/css/timeline/grad_left.png differ
diff --git a/milfs/css/timeline/grad_right.png b/milfs/css/timeline/grad_right.png
new file mode 100644
index 0000000..031dcab
Binary files /dev/null and b/milfs/css/timeline/grad_right.png differ
diff --git a/milfs/css/timeline/grad_top.png b/milfs/css/timeline/grad_top.png
new file mode 100644
index 0000000..4e0a5da
Binary files /dev/null and b/milfs/css/timeline/grad_top.png differ
diff --git a/milfs/css/timeline/next.png b/milfs/css/timeline/next.png
new file mode 100644
index 0000000..a5639fa
Binary files /dev/null and b/milfs/css/timeline/next.png differ
diff --git a/milfs/css/timeline/next_v.png b/milfs/css/timeline/next_v.png
new file mode 100644
index 0000000..05e84ff
Binary files /dev/null and b/milfs/css/timeline/next_v.png differ
diff --git a/milfs/css/timeline/prev.png b/milfs/css/timeline/prev.png
new file mode 100644
index 0000000..b4bd42d
Binary files /dev/null and b/milfs/css/timeline/prev.png differ
diff --git a/milfs/css/timeline/prev_v.png b/milfs/css/timeline/prev_v.png
new file mode 100644
index 0000000..95b6ff8
Binary files /dev/null and b/milfs/css/timeline/prev_v.png differ
diff --git a/milfs/css/timeline/toolbar.gif b/milfs/css/timeline/toolbar.gif
new file mode 100644
index 0000000..e6eb2da
Binary files /dev/null and b/milfs/css/timeline/toolbar.gif differ
diff --git a/milfs/funciones.php b/milfs/funciones.php
new file mode 100755
index 0000000..0c383f1
--- /dev/null
+++ b/milfs/funciones.php
@@ -0,0 +1,3648 @@
+$formulario";
+ $propiedades[sounds] ="";
+ $propiedades[url] ='';
+ //$propiedades[title] ='Hola mundo';
+ //$propiedades[icon][iconUrl] = "images/pin.png";
+ $geometria .= "{\"type\":\"Feature\",\"geometry\":".json_encode($marcador,JSON_NUMERIC_CHECK|JSON_PRETTY_PRINT).",\"properties\":".json_encode($propiedades,JSON_NUMERIC_CHECK|JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT)."},";
+ $features[] = $marcador;
+
+ $id++;
+ }
+ */
+
+}
+//-75.58295 6.25578 16
+
+//encode and output jsonObject
+header('Content-Type: text/plain');
+//echo $consulta;
+
+$resultado = json_encode($features,JSON_NUMERIC_CHECK|JSON_PRETTY_PRINT);
+
+return $resultado;
+}
+
+
+
+function mapa_ficha($id) {
+
+ $descripcion = remplacetas('form_id','id',$id,'descripcion') ;
+ $nombre = remplacetas('form_id','id',$id,'nombre') ;
+ $id_empresa = remplacetas('form_id','id',$id,'id_empresa') ;
+ $id_empresa = $id_empresa[0];
+ $direccion = remplacetas("empresa","id",$id_empresa,"direccion","");
+ $telefono = remplacetas("empresa","id",$id_empresa,"telefono","");
+ $web = remplacetas("empresa","id",$id_empresa,"web","");
+ $email = remplacetas("empresa","id",$id_empresa,"email","");
+ $imagen = remplacetas("empresa","id",$id_empresa,"imagen","");
+ $razon_social = remplacetas("empresa","id",$id_empresa,"razon_social","");
+ $slogan = remplacetas("empresa","id",$id_empresa,"slogan","");
+ $imagen = " ";
+ $datos ="
$nombre[0] $descripcion[0] ";
+ $empresa = "$razon_social[0] |
$web[0] | $direccion[0] | $email[0]
";
+
+ //$prueba = json_decode($prueba);
+
+ $resultado ="
+
+
+
+
$nombre[0]
+
$descripcion[0]
+
MILFS
+$prueba
+
";
+ return $resultado;
+}
+
+function formulario_parametrizacion($perfil,$accion,$div,$form){
+ $respuesta = new xajaxResponse('utf-8');
+$nombre = remplacetas('form_id','id',$perfil,'nombre') ;
+if($accion =='categorias') {
+ $resultado = "
+ Categorización $nombre[0]
+
+ ";
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ $respuesta -> addScript("xajax_formulario_campos_select('$perfil','parametrizacion')");
+ return $respuesta;
+ }
+ elseif($accion =='grabar'){
+ if($form[tipo] =='categoria') {
+ $url_icon = "http://$form[icon]";
+ $es_imagen = es_imagen("$url_icon");
+ $altura = GetImageSize($url_icon);
+ $altura= $altura[1];
+ if($form[id_campo] =='') { $error = "Seleccione un campo";}
+ elseif($form[campo_filtro] =='') { $error = "Seleccione Filtro";}
+ elseif(!$es_imagen ) { $error = " [ $url_icon ] no es una imagen válida para el ícono";}
+ elseif($altura > 150 ) { $error = " El ícono no debe tener mas de 150 pixeles de alto.";}
+ elseif($form[icon] =='') {
+ $error = "Escriba la dirección del ícono";
+ }
+ else {$error='';}
+ if( $error !='') {
+ $respuesta -> addAlert("$error $revisar_url ");
+ return $respuesta;
+ }else{
+ $categoria_icono[tabla] = "form_id";
+ $categoria_icono[campo] = "$form[perfil]";
+ $categoria_icono[opcion] = "$form[tipo]:icon:$form[campo_filtro]";
+ $categoria_icono[descripcion] = "$url_icon";
+ $categoria_icono[visible] = "1";
+ $categoria_icono[accion] = "grabar";
+ $grabar_icono = parametrizacion($categoria_icono);
+
+ $categoria_campo[tabla] = "form_id";
+ $categoria_campo[campo] = "$form[perfil]";
+ $categoria_campo[opcion] = "$form[tipo]:campo";
+ $categoria_campo[descripcion] = "$form[id_campo]";
+ $categoria_campo[visible] = "1";
+ $categoria_campo[accion] = "grabar";
+ $grabar_campo = parametrizacion($categoria_campo);
+
+ $categoria_filtro[tabla] = "form_id";
+ $categoria_filtro[campo] = "$form[perfil]";
+ $categoria_filtro[opcion] = "$form[tipo]:filtro:$form[id_campo]";
+ $categoria_filtro[descripcion] = "$form[campo_filtro]";
+ $categoria_filtro[visible] = "1";
+ $categoria_filtro[accion] = "grabar";
+ $grabar_filtro = parametrizacion($categoria_filtro);
+
+
+ $resultado =" $form[campo_filtro] $form[id_campo] ($altura ) [$grabar_icono]";
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ return $respuesta;
+ }
+
+ }/// fin de parametrizacion categorias
+ }
+ else {
+ $listado ="Listado de parametrizaciones $nombre[0]
+
+ ";
+ $respuesta->addAssign($div,"innerHTML",$listado);
+ return $respuesta;
+ }
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "
+ SELECT md5(binary contenido) as md5_contenido, contenido FROM form_datos
+ WHERE form_id = '$perfil'
+ AND id_campo = '$campo'
+ GROUP BY contenido
+ ORDER BY contenido asc";
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+$resultado = "Filtro
+
+ Todos ";
+while( $row = mysql_fetch_array( $sql ) ) {
+$resultado .= " $row[contenido] ";
+ }
+$resultado .= " ";
+ }
+else{$resultado = 'nada';}
+
+if($div !="") {
+$respuesta->addAssign($div,"innerHTML",$resultado);
+return $respuesta;
+ }else{return $resultado;}
+
+ }
+$xajax->registerFunction("formulario_parametrizacion");
+
+function lista_categorias($perfil,$categoria,$tipo) {
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+ $categoria_campo = remplacetas('parametrizacion','campo',$perfil,'descripcion'," tabla='form_id' and opcion = 'categoria:campo'") ;
+ $categoria_campo = $categoria_campo[0];
+$consulta = "
+ SELECT md5(binary contenido) as md5_contenido, contenido FROM form_datos
+ WHERE form_id = '$perfil'
+ AND id_campo = '$categoria_campo'
+ GROUP BY contenido
+ ORDER BY contenido asc";
+/*
+ $consulta = "
+ SELECT opcion, GROUP_CONCAT(descripcion ORDER by id desc ) as data FROM `parametrizacion` WHERE `tabla` LIKE 'form_id' AND `campo` LIKE '$perfil' AND `opcion` LIKE 'categoria:icon:%%' group by descripcion
+ ";
+ */
+ /*
+ $categoria_filtro = remplacetas('parametrizacion','campo',$id,'descripcion',"tabla='form_id' and opcion = 'categoria:filtro:$row[id_campo]'") ;
+ $filtro = $categoria_filtro;
+ $categoria_filtro = $categoria_filtro[0];
+ $icono = remplacetas('parametrizacion','campo',$id,'descripcion'," tabla='form_id' and opcion = 'categoria:icon:$md5_contenido'") ;
+ if($icono[0] =='') {
+ $icon = "http://$_SERVER[HTTP_HOST]/milfs/images/pin.png ";
+ }else{
+
+ $icon = $icono[0];
+ }
+ $icono = "$icon";
+ */
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+$resultado = "";
+while( $row = mysql_fetch_array( $sql ) ) {
+ /* $identificador = explode(',',$row[data]);
+ $categoria = explode(':',$row[opcion]);
+ $categoria = $categoria[2];
+ $identificador = $identificador[0];
+ */
+ $icono = remplacetas('parametrizacion','campo',$perfil,'descripcion'," tabla='form_id' and opcion = 'categoria:icon:$row[md5_contenido]'") ;
+ if($icono[0] =='') {
+ $icon = "http://$_SERVER[HTTP_HOST]/milfs/images/pin.png ";
+ }else{
+
+ $icon = $icono[0];
+ }
+ $icono = "$icon";
+$resultado .= "$row[contenido]
";
+ }
+$resultado .= " ";
+ }
+else{$resultado = 'nada';}
+
+return $resultado;
+}
+
+function imprime_geojson($id,$id2){
+ $id_form = mysql_seguridad($id);
+ $id_form2 = mysql_seguridad($id2);
+ $campo = buscar_campo_tipo($id_form,"14");
+ $campo2 = buscar_campo_tipo($id_form2,"14");
+ $id_campo = $campo[0];
+ $id_campo2 = $campo2[0];
+ if($id_form2 !=""){$w_id2 =" OR form_id = '$id_form2'"; $or_2 ="or id_campo = '$id_campo2'";}
+
+$link=Conectarse();
+
+ $consulta = "SELECT form_id as id, control, GROUP_CONCAT(contenido ORDER by timestamp desc ) as data
+ FROM `form_datos`
+ WHERE (form_id = '$id_form' $w_id2 )
+ AND ( id_campo ='$id_campo' $or_2 )
+ group by control
+ ORDER BY orden desc";
+
+
+ mysql_query("SET NAMES 'UTF8'");
+ $sql = mysql_query($consulta,$link) or die("error al ejecutar consulta ");
+ if (mysql_num_rows($sql)!='0'){
+ $id = 1;
+ $features = array();
+
+while( $row = mysql_fetch_array( $sql ) ) {
+ $marcador = array();
+ $propiedades = array();
+ $identificador = explode(',',$row[data]);
+ $identificador = $identificador[0];
+ $campos = explode(" ",$identificador);
+ $lat = $campos[0];
+ $lon = $campos[1];
+ $zoom = $campos[2];
+ $formulario = formulario_imprimir($row[id],$row[control],'full');
+
+ $marcador["type"] = "Point";
+ $marcador["coordinates"] = array($lat,$lon);
+ $propiedades = formulario_imprimir_linea($row[id],$row[control],"array");//
+ //$propiedades[description] ="HOLA MUNDO";
+ $propiedades[description] ="$formulario
";
+ $propiedades[sounds] ="";
+ $propiedades[url] ='';
+ //$propiedades[title] ='Hola mundo';
+ //$propiedades[icon][iconUrl] = "images/pin.png";
+ $geometria .= "{\"type\":\"Feature\",\"geometry\":".json_encode($marcador,JSON_NUMERIC_CHECK|JSON_PRETTY_PRINT).",\"properties\":".json_encode($propiedades,JSON_NUMERIC_CHECK|JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT)."},";
+ $features[] = $marcador;
+
+ $id++;
+ }
+
+}
+//-75.58295 6.25578 16
+
+//encode and output jsonObject
+header('Content-Type: text/plain');
+//echo $consulta;
+$resultado = " { \"type\": \"FeatureCollection\",
+ \"features\": ";
+$resultado .= json_encode($features,JSON_NUMERIC_CHECK|JSON_PRETTY_PRINT);
+$resultado .= "}";
+//echo $resultado;
+$geometria = substr("$geometria",0,-1);
+$geometria = "{
+ \"type\": \"FeatureCollection\",
+ \"features\": [$geometria ]}";
+return $geometria;
+}
+
+
+function aplicacion_presentacion($id,$div,$timeout){
+ if($timeout < '1000') {$timeout =5000;};
+ $respuesta = new xajaxResponse('utf-8');
+$consulta ="SELECT * FROM form_datos WHERE form_id = '$id' ORDER BY rand() limit 1 ";
+$link=Conectarse();
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+$control = mysql_result($sql,0,control);
+$impresion = formulario_imprimir("$id","$control","");
+
+ }
+$siguiente = "SIGUIENTE ";
+if($div ==''){
+ $presentacion = "$siguiente $impresion
";
+ }else{
+ //$respuesta->addAlert("$consulta");
+ $respuesta->addScript("setTimeout(function(){xajax_aplicacion_presentacion('$id','presentacion_$id','$timeout')},$timeout)");
+ $respuesta->addAssign("$div","innerHTML","$siguiente $impresion");
+ return $respuesta;
+ }
+return " $presentacion";
+
+
+}
+$xajax->registerFunction("aplicacion_presentacion");
+
+function aplicaciones_listado($id_form,$tipo){
+
+// if($id_empresa !=''){ $_empresa = " ";}
+ //if($tipo =='publico'){ $w_publico =" publico ='0'";}else {$w_publico =" publico ='1'";}
+ if($id_form !="") {$w_form = " AND id = '$id_form'";}
+ $w_publico =" publico ='1'";
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "SELECT * FROM form_id WHERE $w_publico $w_form ORDER BY orden asc ";
+mysql_real_escape_string($consulta);
+$sql=mysql_query($consulta,$link);
+
+
+if (mysql_num_rows($sql)!='0'){
+ mysql_data_seek($sql, 0);
+ $resultado_li .= "";
+ //$resultado_nav .= "";
+$fila=0;
+while( $row = mysql_fetch_array( $sql ) ) {
+ $geo = buscar_campo_tipo($row[id],"14");
+ if($geo[0] !='') { $mapa= " ";}else {$mapa='';}
+
+$nombre = strtoupper("$row[nombre]");
+$contenido_listado = contenido_listado("$row[id]");
+$resultado_nav .= "
+ $nombre
+ $contenido_listado
+ ";
+
+$resultado_nav .=" ";
+$resultado .= "$row[id] $categoria $row[nombre] $mapa";
+$campos = formulario_campos_select("$row[id]","");
+$resultado .= " ";
+ }
+
+ $resultado .=" ";
+ }else {$resultado_li = "";}
+
+if($tipo =='li') { return $resultado_li.$resultado;}
+elseif($tipo =='nav') { return $resultado_nav;}
+else {return $resultado;}
+}
+$xajax->registerFunction("aplicaciones_listado");
+
+function contenido_parallax($id){
+$div = "contenedor";
+ $respuesta = new xajaxResponse('utf-8');
+
+ $campo_titulo = remplacetas('parametrizacion','campo',$id,'descripcion'," tabla='form_id' and opcion = 'titulo'") ;
+if($campo_titulo[0] !='') {$w_campo = "AND id_campo = '$campo_titulo[0]'";}
+$campo_titulo = $campo_titulo[0];
+$consulta ="SELECT *,GROUP_CONCAT(id ORDER by timestamp desc ) as identificador FROM form_datos WHERE form_id = '$id' $w_campo GROUP BY control order by contenido";
+$link=Conectarse();
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+ $control = mysql_result($sql,0,control);
+ //$contenido = " ";
+return $resultado;
+
+}
+
+function formulario_importador($accion) {
+
+ if($accion =='') {
+ $resultado=" Importador ";
+
+ return $resultado;
+ }
+ $respuesta = new xajaxResponse('utf-8');
+ $formulariox =formulario_importar('','menu','');
+ $resultado="$formulariox
";
+ $respuesta->addAssign("contenido","innerHTML","$resultado");
+ return $respuesta;
+}
+$xajax->registerFunction("formulario_importador");
+
+
+function subir_archivo($perfil){
+///vinculado con la funcion de javascript resultadoUpload(estado, file) que esta en librerias/scripts.js
+$javascript="includes/upload_archivo.php";
+$resultado .="
+ ";
+
+
+return $resultado;
+
+}
+
+
+function formularios_muestra_listado($formulario){
+
+ if($formulario==''){
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "SELECT * FROM form_id WHERE id_empresa = '$_SESSION[id_empresa]' ORDER BY nombre ";
+$sql=mysql_query($consulta,$link);
+
+
+if (mysql_num_rows($sql)!='0'){
+ mysql_data_seek($sql, 0);
+ $resultado .="";
+ $resultado .= "Seleccionar formulario a importar ";
+$fila=0;
+while( $row = mysql_fetch_array( $sql ) ) {
+ $fila = $fila +1;
+ if ($fila %2 == 0){$bg='LightCyan';}else{ $bg='FFFFFF';}
+
+$resultado .= " $row[nombre] ";
+ }
+
+ $resultado .=" ";
+ }else {$resultado = "";}
+
+ return $resultado;
+ }else{
+ $respuesta = new xajaxResponse('utf-8');
+ $subir = subir_archivo($formulario) ;
+ $div="importador_select";
+ $resultado .= "$subir";
+$respuesta->addAssign($div,"innerHTML",$resultado);
+$respuesta->addAssign("importador_archivo","innerHTML","");
+
+
+
+return $respuesta;
+}
+}
+$xajax->registerFunction("formularios_muestra_listado");
+
+
+function formulario_importar($filename,$accion,$perfil){
+ if($filename ===""){
+
+
+ $formulario .= formularios_muestra_listado();
+
+ $formulario .= "
+
";
+
+return $formulario;
+ }
+
+ $div = "importador_archivo";
+$respuesta = new xajaxResponse('utf-8');
+ $link=Conectarse();
+ mysql_query("SET NAMES 'utf8'");
+
+ $resultado .= "Importando formulario $perfil_nombre ($perfil)
+ ";
+ $nombre = "tmp/$filename";
+ if($accion == "grabar") {
+
+ }
+ if (($handle = fopen($nombre, 'r')) !== FALSE)
+ {
+
+while (($datos = fgetcsv($handle,0,"|")) !== FALSE) {
+ $numero = count($datos);
+if($fila >=1) {
+
+ $resultado .= "";
+ $numero_columna = 0;
+ for ($c=0; $c < $numero; $c++) {
+ $columna = $datos[$c];
+
+
+if($columna !=""){
+
+ if($accion === "grabar"){
+$control=md5($perfil.$fila.time());
+$ip = obtener_ip();
+ $graba_ip = " ip = INET_ATON('".$ip."') ";
+$consulta_campos = "INSERT INTO form_datos SET timestamp= '".time()."', id_usuario='$_SESSION[id]',id_empresa='$_SESSION[id_empresa]',form_id ='$perfil',
+$graba_ip ,
+control = '$control', $consulta id_campo = '$campo[$numero_columna]' , contenido = '$columna'";
+ $verificar_campo = formulario_verificar_campo($perfil,$campo[$numero_columna]);
+ if($verificar_campo == NULL){}else{
+ $sql = mysql_query($consulta_campos,$link);
+ if($sql) {
+ $class='success';
+ $sql_resultado = " ";
+
+
+ }
+ else {
+ $class='danger';
+ }
+
+
+ }
+
+ }
+
+
+}
+ $resultado .= "$columna $sql_resultado ";
+
+ $numero_columna ++;
+ }
+ $resultado .= " ";
+ }
+ else {
+ $resultado .= "";
+
+ $posicion = 0;
+ for ($c=0; $c < $numero; $c++) {
+ $titulo = $datos[$c] ;
+ $verificar_campo = formulario_verificar_campo($perfil,$titulo);
+ if($verificar_campo == NULL){$verificar_campo =" "; $class='danger';}
+ else{$verificar_campo =" "; $class='success';}
+ $campo[$posicion] = $datos[$c];
+ $resultado .= "$verificar_campo $titulo ";
+ $posicion ++;
+
+ }
+
+
+ $resultado .= " ";
+ }
+ $fila++;
+ }
+
+
+ $resultado .= "
$fila ";
+ }
+
+$respuesta->addAssign($div,"innerHTML",$resultado);
+
+return $respuesta;
+}
+
+$xajax->registerFunction("formulario_importar");
+
+
+function formulario_verificar_campo($perfil,$id_campo){
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "SELECT * FROM `form_contenido_campos` WHERE `id_form` = '$perfil' AND id_campo='$id_campo'";
+$sql =mysql_query($consulta,$link);
+$cant =mysql_num_rows($sql);
+
+if (mysql_num_rows($sql) == '0'){
+$existe = NULL;
+
+ }else {
+
+$control=mysql_result($sql,0,"control");
+$obligatorio=mysql_result($sql,0,"obligatorio");
+$existe[]= $control;
+$existe[]= $obligatorio;
+$existe[]= $consulta;
+
+}
+
+return $existe;
+ }
+
+function borrar_tmp($div) {
+if($div =='') {
+ $div="borra_tmp";
+$resultado ="Limpiar ";
+
+return $resultado ;
+}
+$dir = "tmp/";
+$ficheroseliminados= 0;
+$handle = opendir($dir);
+while ($file = readdir($handle)) {
+ if (is_file($dir.$file)) {
+ if ( unlink($dir.$file) ){
+ $ficheroseliminados++;
+ }
+ }
+}
+$fecha = time ();
+$ahora = date ( "Y-m-d h:i:s" , $fecha );
+$resultado =" $ahora
";
+ $respuesta = new xajaxResponse('utf-8');
+$respuesta->addAssign($div,"innerHTML",$resultado);
+return $respuesta;
+
+ }
+$xajax->registerFunction("borrar_tmp");
+
+
+function formulario_imprimir_linea($id,$control,$tipo) {
+ $id = mysql_seguridad($id);
+ if($id !='') {$w_id = "AND form_id = '$id'";}
+ $control = mysql_seguridad($control);
+ $consulta = "SELECT *
+ FROM form_contenido_campos
+ WHERE form_contenido_campos.id_form = '$id'
+ ORDER BY form_contenido_campos.orden ASC
+ ";
+
+ $categoria_campo = remplacetas('parametrizacion','campo',$id,'descripcion'," tabla='form_id' and opcion = 'categoria:campo'") ;
+ $categoria_campo = $categoria_campo[0];
+
+ $titulo = remplacetas('parametrizacion','campo',$id,'descripcion'," tabla='form_id' and opcion = 'titulo'") ;
+ $titulo = $titulo[0];
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$sql=mysql_query($consulta,$link);
+
+$timestamp=mysql_result($sql,0,"timestamp");
+$fecha = date ( "Y-m-d h:i:s" , $timestamp);
+
+if (mysql_num_rows($sql)!='0'){
+ mysql_data_seek($sql, 0);
+// $resultado ="";
+ $imagen = formulario_valor_campo("$id","0","","$control");
+ $imagen = $imagen[3];
+ if($imagen[3] != null AND $tipo !='titulos') {
+ $array[image]=$imagen;
+ $imagen_icon="http://$_SERVER[HTTP_HOST]/milfs/images/secure/?file=150/$imagen";
+ $imagen= " ";
+
+ }else {$imagen='';}
+$td .= "$imagen ";
+
+ while( $row = mysql_fetch_array( $sql ) ) {
+
+ $campo_tipo = remplacetas('form_campos','id',$row[id_campo],'campo_tipo');
+ $campo_tipo =$campo_tipo[0];
+ $contenido = formulario_valor_campo("$id","$row[id_campo]","","$control");
+ $md5_contenido = $contenido[4];
+ //md5(binary contenido) as md5_contenido,
+ $contenido_original = $contenido;
+ //$control = $contenido[0];
+ $contenido = $contenido[3];
+ $campo_nombre = remplacetas('form_campos','id',$row[id_campo],'campo_nombre');
+ $campo_nombre[0] =" $campo_nombre[0]";
+ if($tipo=="titulos") {
+ $contenido = "$campo_nombre[0] ";
+ }
+ elseif($tipo=="titulos_csv"){
+ $csv .= '"'.$campo_nombre[0].'";';
+ }
+ elseif($tipo=="linea_csv"){
+ $csv .= '"'.$contenido.'";';
+ }
+ elseif($tipo=="array"){
+
+ if($row[id_campo] == $titulo){$array[title]=$contenido;}
+ if($row[id_campo] == $categoria_campo){
+ $array[category]=$contenido;
+
+ $categoria_filtro = remplacetas('parametrizacion','campo',$id,'descripcion',"tabla='form_id' and opcion = 'categoria:filtro:$row[id_campo]'") ;
+ $filtro = $categoria_filtro;
+ $categoria_filtro = $categoria_filtro[0];
+ $icono = remplacetas('parametrizacion','campo',$id,'descripcion'," tabla='form_id' and opcion = 'categoria:icon:$md5_contenido'") ;
+ //$icono[0] = $imagen_icon;
+ if($icono[0] =='') {
+ $icon = "images/pin.png";
+ }else{
+
+ $icon = $icono[0];
+ }
+ $array[icon][iconUrl] = "$icon";
+ $array[icon][iconSize] =[50,50];
+ //$array[icon][shadowSize] =[70,70];
+ //$array[icon][shadowUrl] = "http://$_SERVER[HTTP_HOST]/milfs/images/iconos/sha.png";
+
+ }else{}
+ $array[$row[id_campo]] = $contenido;
+ }
+ else{
+ $limite = 100;
+ $size= strlen($contenido);
+ $restante = ($limite - $size);
+ if($size > $limite) {
+ $contenido = substr($contenido,0, $length = 300)."... ";//$contenido;
+ }
+ if($campo_tipo=='14'){
+ if($contenido !='') {
+ $campos = explode(" ",$contenido);
+ $lat = $campos[0];
+ $lon = $campos[1];
+ $zoom = $campos[2];
+ $contenido = "
+
+ ";
+ } else { $contenido ='';}
+ }
+ }
+
+
+ if($tipo=="titulos") {
+$td .= " $contenido ";
+ }else{
+ $td .= " $contenido ";
+ }
+ }
+
+
+ $resultado .="$td";
+}
+ if($tipo =='titulos_csv' or $tipo=='linea_csv') {
+
+return $csv;
+ }
+ if($tipo =="array") {
+ //$array["title"]="hola mundos";
+ return $array;
+ }
+ return $resultado;
+}
+
+function mostrar_coincidencias($id_form,$filtro,$valor) {
+$md5_valor = $valor;
+if($filtro !='' ){$w_filtro ="AND md5(binary contenido) = '$md5_valor'";}
+$consulta= "SELECT * FROM form_datos WHERE form_id= '$id_form' AND id_campo = '$filtro' $w_filtro ";
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+//mysql_real_escape_string($consulta);
+$sql=mysql_query($consulta,$link);
+
+if (mysql_num_rows($sql)!=0){
+mysql_data_seek($sql, 0);
+while( $row = mysql_fetch_array( $sql ) )
+ {
+ $depliegue = formulario_imprimir_linea($row[form_id],$row[control]);
+ $titulo = formulario_imprimir_linea($row[form_id],$row[control],'titulos');
+ $campos .= " $depliegue ";
+
+ }
+ $resultado = "";
+ }
+$respuesta = new xajaxResponse('utf-8');
+$respuesta->addAssign("mostrar_resultado","innerHTML",$resultado);
+ return $respuesta;
+}
+$xajax->registerFunction("mostrar_coincidencias");
+
+function matriz_formulario($formulario,$div,$registros,$pagina,$formato){
+ $respuesta = new xajaxResponse('utf-8');
+if ( !isset ( $_SESSION['id_empresa'] ) ) {
+$respuesta->addRedirect("index.php");
+return $respuesta;
+}
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$md5_filtro = $formulario["campo_filtro"];
+//$formulario = mysql_seguridad($formulario);
+mysql_real_escape_string($formulario);
+$perfil = $formulario["form_id_id"];
+$filtro = $formulario["campo_filtro"];
+$control = md5(rand(1,99999999).microtime());
+
+$cantidad = formulario_contar($perfil);
+$formulario_nombre = remplacetas('form_id','id',$perfil,'nombre') ;
+if($filtro !='' ){$w_filtro ="AND md5(binary contenido) = '$md5_filtro'";}
+if($perfil !=''){$perfil ="AND form_id = '$perfil'";}Else{
+ $resultado ="
Por favor seleccione un formulario";
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ return $respuesta;
+ }
+if($cantidad < 1) {
+ $resultado ="
+
+ El formulario \"$formulario_nombre[0]\" no tiene registros
+
+ ";
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ return $respuesta;
+
+}
+
+$fecha_inicio = $formulario["inicio"];
+$fin = $formulario["fin"];
+$id_campo = $formulario["id_campo"];
+$busqueda = $formulario["busqueda"];
+
+if($formato =='csv') {$orden = "ORDER BY form_datos_id ASC ";}else{$orden = "ORDER BY form_datos_id DESC ";}
+if($id_campo ==''){
+ $campo ='';
+
+ }else{
+ if($busqueda =='') {
+ $resultado ="
Por favor escriba una palabra para buscar";
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ return $respuesta;
+ }
+ $campo ="AND id_campo = '$id_campo'";
+
+ }
+
+if($busqueda !=''){$busca ="AND contenido LIKE '%%$busqueda%%'";}Else{$busca ='';}
+
+
+
+$consulta = " SELECT *,from_unixtime(timestamp) AS fecha , form_datos.id AS form_datos_id
+ FROM form_datos, form_campos
+ WHERE form_datos.id_campo = form_campos.id AND form_datos.id_empresa = '$_SESSION[id_empresa]'
+ $busca
+ $perfil
+ $campo
+ $w_filtro
+ AND timestamp BETWEEN UNIX_TIMESTAMP('$fecha_inicio')
+ AND UNIX_TIMESTAMP('$fin 23:59:59') GROUP BY control $orden";
+
+
+
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)==0){
+ $resultado ="
No hay resultados para la consulta ";
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ return $respuesta;
+
+ }
+if (mysql_num_rows($sql)!=0){
+ $total_registros = mysql_num_rows($sql);
+ if($formato=='csv'){
+ $nombre_archivo ="tmp/Formulario_".mktime()."_".$_SESSION['id'].".csv";
+ $boton_descarga ="
Descargar ";
+ $archivo_reporte=fopen($nombre_archivo , "w");
+ $encabezado =";;Periodo\n;;$inicio\n;;$fin \n ";
+ fputs ($archivo_reporte,$encabezado);
+ $tabla .= "ID;Fecha;Timestamp;Formulario;Campo;Contenido;Control\n";
+ fputs ($archivo_reporte,$titulo);
+ mysql_data_seek($sql, 0);
+ while( $row = mysql_fetch_array( $sql ) )
+ {
+ $titulo = formulario_imprimir_linea($row[form_id],$row[control],'titulos_csv');
+ $linea = formulario_imprimir_linea($row[form_id],$row[control],'linea_csv');
+ $formulario_nombre = remplacetas('form_id','id',$row[form_id],'nombre') ;
+ $linea = $linea."\n";
+ $lineas .= $linea;
+ }
+ $contenido ="$titulo \n $lineas";
+ //rewind($archivo_reporte);
+ fputs ($archivo_reporte,$contenido);
+ $respuesta->addAssign("boton_descarga","innerHTML",$boton_descarga);
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ return $respuesta;
+
+ }
+ }
+ else{
+ $respuesta ="
No hay resultados
";
+ $respuesta->addAssign($div,"innerHTML",$resultado);
+ return $respuesta;
+ }
+/// PAGINACION
+ if ($pagina =='') {$inicio = 0; $pagina = 1; }
+ else { $inicio = ($pagina - 1) * $registros;}
+
+ if($total_registros < $registros) { $limite ="";}
+ else{$limite =" LIMIT $inicio, $registros ";}
+ $consulta_limite = $consulta.$limite;
+ $sql=mysql_query($consulta_limite,$link);
+ if (mysql_num_rows($sql)!='0'){
+ $botones .= "
Limpiar ";
+ if($formato!='csv'){
+ $botones .= "
+ Exportar
+ ";
+ }
+ $paginacion ="";
+ $paginacion .= $indice;
+ $encabezado = "
+
+
+
$botones $paginacion $total_registros registros
+
+
";
+$fila=0;
+ mysql_data_seek($sql, 0);
+ while( $row = mysql_fetch_array( $sql ) ) {
+ $formulario_nombre = remplacetas('form_id','id',$row[form_id],'nombre') ;
+ $fila = $fila +1;
+ if ($fila %2 == 0){$bg='LightCyan';}else{ $bg='FFFFFF';}
+ $depliegue = formulario_imprimir_linea($row[form_id],$row[control]);
+ $titulo = formulario_imprimir_linea($row[form_id],$row[control],'titulos');
+ $menu ="
+
+
+
+ ";
+ $campos .= "
$menu $depliegue ";
+ }
+ $resultado .="
";
+ }else{
+ $resultado .="
No hay resultados para la consulta ";
+ }
+ //$resultado .="$consulta";
+$respuesta->addAssign("resultados_encabezado","innerHTML",$encabezado);
+$respuesta->addAssign($div,"innerHTML",$resultado);
+
+return $respuesta;
+} $xajax->registerFunction("matriz_formulario");
+
+function remplacetas($tabla,$campo,$valor,$por,$and){
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+if($and !=''){$AND = "AND $and";}
+$consulta = "SELECT * , md5(binary $por ) as md5_".$por." FROM $tabla WHERE $campo = '$valor' $AND order by id DESC limit 1";
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+$resultado[] = mysql_result($sql,0,$por);
+$resultado[] = mysql_result($sql,0,id);
+$resultado[] = $consulta;
+$resultado[] = mysql_result($sql,0,"md5_$por");
+ }else{$resultado[0] = '';
+ $resultado[1] ="";
+ $resultado[2] = $consulta;}
+return $resultado;
+}
+
+function formulario_campos_select($perfil,$div,$onchange){
+ $respuesta = new xajaxResponse('utf-8');
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "
+ SELECT * FROM form_contenido_campos, form_campos
+ WHERE form_contenido_campos.id_campo = form_campos.id
+ AND id_form = '$perfil'
+ ORDER BY campo_nombre ASC";
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+
+ $categoria = remplacetas('parametrizacion','campo',$perfil,'descripcion'," opcion = 'categoria'") ;
+ $categoria = $categoria[0];
+$resultado = "
Campo
+
+ Todos los campos ";
+while( $row = mysql_fetch_array( $sql ) ) {
+$resultado .= " $row[campo_nombre] ";
+if($div =='') {
+ if ($row[id_campo] == "$categoria"){
+ $class="active";
+ $filtro = formulario_campos_filtro("$perfil","$row[id_campo]","");
+ }else { $class=""; $filtro ='';}
+ $listado .="$row[id_campo] $row[campo_nombre] $filtro ";
+ }
+ }
+$resultado .= "
+
"; }
+else{$resultado = '';}
+
+if($div =='') {return $listado;}
+$respuesta->addAssign($div,"innerHTML",$resultado);
+return $respuesta;
+
+ }
+$xajax->registerFunction("formulario_campos_select");
+
+
+function formulario_campos_filtro($perfil,$campo,$div,$onchange){
+ $respuesta = new xajaxResponse('utf-8');
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "
+ SELECT md5(binary contenido) as md5_contenido, contenido FROM form_datos
+ WHERE form_id = '$perfil'
+ AND id_campo = '$campo'
+ GROUP BY contenido
+ ORDER BY contenido asc";
+
+
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+$resultado = "
Filtro
+
+ Todos ";
+while( $row = mysql_fetch_array( $sql ) ) {
+$resultado .= " $row[contenido] ";
+ }
+$resultado .= " ";
+ }
+else{$resultado = 'nada';}
+
+if($div !="") {
+$respuesta->addAssign($div,"innerHTML",$resultado);
+return $respuesta;
+ }else{return $resultado;}
+
+ }
+$xajax->registerFunction("formulario_campos_filtro");
+
+
+//$select = select('form_campos_valores','campo_valor','campo_valor','',"id_form_campo = $id_campo","$id_campo");
+function formulario_consultar($div){
+ if($div==''){
+ $div = "contenido";
+ $resultado .= "
Consultas";
+ return $resultado;
+ }
+ $formulario = select('form_id','id','nombre','xajax_formulario_campos_select((this.value),\'div_campos\')',"id_empresa = '$_SESSION[id_empresa]'");
+ $fecha = time ();
+ $ahora = date ( "Y-m-d" , $fecha );
+ $peticion = "
+
+
Consultar
+
+
+";
+$respuesta = new xajaxResponse('utf-8');
+$respuesta->addAssign($div,"innerHTML",$peticion);
+return $respuesta;
+}
+$xajax->registerFunction("formulario_consultar");
+
+function formulario_campos_procesar($form){
+ $form = mysql_seguridad($form);
+$respuesta = new xajaxResponse('utf-8');
+
+
+
+$campo_nombre = $form["campo_nombre"];
+if($campo_nombre =='') {
+$respuesta->addAlert("El Nombre del campo no puede estar vacío");
+$respuesta->addAssign("grupo_campo_nombre","className"," input-group has-error ");
+return $respuesta;
+}
+
+$campo_nombre = ucfirst(strtolower($campo_nombre));
+$campo_descripcion = $form["campo_descripcion"];
+$campo_tipo = $form["campo_tipo"];
+$campo_area = $form["campo_area"];
+$misma_area = $form["misma_area"];
+$campo_orden = $form["campo_orden"];
+$campo_identificador = $form["campo_identificador"];
+$activo = $form["activo"];
+$tipo = $form["tipo"];
+$editar = $form["editar"];
+$id_campo_editar = $form["id_campo_editar"];
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+
+if ($editar == 'editar'){
+mysql_query("
+ UPDATE `form_campos`
+ SET `campo_nombre` = '$campo_nombre',
+ `campo_descripcion` = '$campo_descripcion',
+ `orden` = '$campo_orden' ,
+ `campo_area` = '$campo_area',
+ `campo_tipo` = '$campo_tipo',
+ `id_empresa` = '$_SESSION[id_empresa]',
+ `activo` = '$activo'
+ WHERE `form_campos`.`id` ='$id_campo_editar'
+ LIMIT 1",$link);
+$w_campo = "id = '$id_campo_editar'";
+
+ }else {
+$id_empresa = $_SESSION['id_empresa'];
+$consulta = "
+ INSERT INTO `form_campos`
+ (`id_especialista`, `campo_nombre`,`campo_descripcion`,`campo_tipo`, `campo_area`, `orden`, `activo`, `identificador`, `id_empresa`)
+ VALUES ('$id_especialista','$campo_nombre','$campo_descripcion','$campo_tipo','$campo_area','$campo_orden','1','$campo_identificador','$id_empresa')";
+ $sql =mysql_query($consulta,$link);
+$w_campo= "identificador = '$campo_identificador'";
+ }
+
+if($id_campo_editar !=''){$id_form_campo = $id_campo_editar;}else {
+$id_form_campo = mysql_insert_id($link);}
+
+$opciones=str_replace(', ',',',"$form[opciones]");
+$opciones = explode(",",$opciones);
+
+foreach($opciones as $c=>$v){
+
+ if($v !='') {$v = ucfirst(strtolower($v));
+
+$grabar_campos_valores .= "($id_form_campo,'$v'),";
+ }
+
+ }
+$grabar_campos_valores =substr ("$grabar_campos_valores",0,-1);
+$borrar_campos_valores = "DELETE FROM `form_campos_valores` WHERE `id_form_campo` = '$id_form_campo'";
+$consulta_campos_valores = "INSERT INTO form_campos_valores (id_form_campo,campo_valor) VALUES $grabar_campos_valores";
+ $sql_borrar_campos_valores =mysql_query($borrar_campos_valores,$link);
+ $sql_campos_valores =mysql_query($consulta_campos_valores,$link);
+
+ $campos=mysql_query("
+ SELECT id_form_campo, campo_nombre, campo_descripcion, tipo_campo_accion, campo_area, orden
+ FROM `consulta_campos` , `tipo_campo`
+ WHERE $w_campo
+
+ AND form_campos.campo_tipo = form_tipo_campo.id_tipo_campo
+ LIMIT 1",$link);
+
+$campos_formulario = "";
+$campos_formulario .= "
";
+while( $row = mysql_fetch_array( $campos ) ) {
+if ($row['tipo_campo_accion']=='textarea'){
+$campos_formulario .= "
".$row['orden']."
";}
+else{
+$campos_formulario .= "
".$row['orden']."
";
+ } }
+
+$respuesta->addAssign("formulario_campos_$misma_area","innerHTML",$campos_formulario);
+return $respuesta;
+}$xajax->registerFunction("formulario_campos_procesar");
+
+function formulario_opciones_select($tipo,$id_campo){
+ $respuesta = new xajaxResponse('utf-8');
+ $div = 'opciones_select';
+if($id_campo !=''){
+$consulta= "SELECT * FROM form_campos_valores WHERE id_form_campo = '$id_campo'";
+$link = Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+while( $row = mysql_fetch_array( $sql ) ) {
+ $valores .= "$row[campo_valor],";
+ }
+ $valores = substr($valores,0,-1);
+ }
+ }
+if($tipo =='8'){
+$resultado = "
";
+ }
+if($tipo =='16'){
+ if($valores =='') {$valores = "1,10";}
+$resultado = "
";
+ }
+if($tipo =='17'){
+ $resultado ="
";
+
+}
+$respuesta->addAssign("$div","innerHTML",$resultado);
+return $respuesta;
+}
+$xajax->registerFunction("formulario_opciones_select");
+
+function crear_campos_formulario($form){
+
+$form = mysql_seguridad($form);
+$respuesta = new xajaxResponse('utf-8');
+$div = $form['div'];
+
+$especialista = $form["id_especialista"];
+$id_campo_editar = $form["id_campo_editar"];
+$resultado = "$id_campo_editar";
+$link = Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$capa = "crear_campos_consulta_$area";
+$formulario ="manejo_campos_$area";
+
+if ($id_campo_editar > 0){
+$sql=mysql_query("SELECT * FROM form_campos WHERE id = '$id_campo_editar' AND activo ='1'",$link);
+while( $row = mysql_fetch_array( $sql ) ) {
+$resultado .="";
+$campo_descripcion =$row['campo_descripcion'];
+$campo_nombre =$row['campo_nombre'];
+$orden =$row['orden'];
+$especialista =$row['id_especialista'];
+
+$formulario ="manejo_campos_$id_campo_editar";
+$editar="
+
+
";
+$Campo_tipo_definido= $row['campo_tipo'];
+}
+ }
+
+$Tipo_campo ="
Tipo:
+
";
+$tipos=mysql_query("
+ SELECT *
+ FROM `form_tipo_campo`
+ WHERE activo = '1'
+ ",$link);
+while( $row = mysql_fetch_array( $tipos ) ) {
+
+if($row['id_tipo_campo'] == $Campo_tipo_definido){
+$Tipo_campo .= " > ".$row['id_tipo_campo']." - ".$row['tipo_campo_nombre']." < ";
+ }
+$Tipo_campo .= " ".$row['id_tipo_campo']." - ".$row['tipo_campo_nombre']." ";
+}
+$Tipo_campo .="
";
+
+
+
+
+$identificador = md5($_SESSION[id_usuario]."-".microtime());
+
+$resultado .= "
+
+ $editar
+
+
+
+
+
";
+
+$respuesta->addAssign("$div","innerHTML",$resultado);
+return $respuesta;
+}
+$xajax->registerFunction("crear_campos_formulario");
+
+function formulario_crear_campo($area,$campo,$div){
+$respuesta = new xajaxResponse('utf-8');
+ if($div==''){
+ $div = "contenido";
+ $cerrar = " [X] ";
+$resultado .= " Campos ";
+
+ return $resultado;
+ }
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta_campos ="SELECT id, campo_nombre, campo_descripcion, tipo_campo_accion, campo_area, form_campos.activo, form_campos.campo_tipo
+ FROM `form_campos` , `form_tipo_campo`
+ WHERE id_empresa = '$_SESSION[id_empresa]' AND id = $campo
+ AND form_campos.campo_tipo = form_tipo_campo.id_tipo_campo
+ ORDER BY orden ASC";
+ $campos=mysql_query($consulta_campos,$link);
+if($campo ==''){
+ $listado_campos = select('form_campos','id','campo_nombre',"xajax_formulario_crear_campo('',(this.value),'$div')","id_empresa = '$_SESSION[id_empresa]' AND activo = '1'",'campo_editar');
+$campos_formulario = "
+
+
+
+
+
+ Crear un nuevo campo
+
+
+
+
+
+
+ Editar un campo existente
+ $listado_campos
+
+";
+}else{
+$campos_formulario .= "
";
+while( $row = mysql_fetch_array( $campos ) ) {
+ if($row[campo_tipo] =='8'){
+ $respuesta->addScript("xajax_formulario_opciones_select('8','$campo') ");
+ }
+ $Tipo_campo ="Tipo:
+ ";
+$tipos=mysql_query("
+ SELECT *
+ FROM `form_tipo_campo`
+ WHERE activo = '1'
+ ",$link);
+while( $row_tipo = mysql_fetch_array( $tipos ) ) {
+
+if($row_tipo['id_tipo_campo'] == $row[campo_tipo] ){
+$Tipo_campo .= " > ".$row_tipo['id_tipo_campo']." - ".$row_tipo['tipo_campo_nombre']." < ";
+ }
+$Tipo_campo .= " ".$row_tipo['id_tipo_campo']." - ".$row_tipo['tipo_campo_nombre']." ";
+}
+$Tipo_campo .="
";
+
+if($row[activo] =='1'){$activo = "Activo: el campo puede ser usado en formularios ";}
+else{$activo = "Inactivo: El campo NO se usará ";}
+$formulario = "editar_campos";
+
+$campos_formulario .= "
+
+";
+
+ }
+ }///fin de edicion
+
+
+
+$respuesta->addAssign($div,"innerHTML",$campos_formulario);
+
+return $respuesta;
+}
+$xajax->registerFunction("formulario_crear_campo");
+
+function agregar_campos($tipo,$div,$id){
+$respuesta = new xajaxResponse('utf-8');
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+
+if($tipo==''){
+ $div="contenido";
+$resultado = " Editar ";
+print $resultado;
+return;
+ }
+ if($tipo=='consultar_listado'){
+ $consulta="SELECT * FROM form_id WHERE id_empresa = '$_SESSION[id_empresa]' ORDER BY nombre ASC";
+ $sql =mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+$resultado .="Formulario: ";
+$resultado .= "Selecciona ";
+while( $row = mysql_fetch_array( $sql ) ) {
+$resultado .= "$row[nombre] ";
+ }
+$resultado .=" $cerrar";
+ }else {
+$resultado = " No hay formularios para editar
";
+ }
+ }
+
+if ($tipo=='consultar_campos'){
+ $consulta="
+ SELECT form_contenido_campos.id_campo, form_contenido_campos.id,
+ campo_nombre, obligatorio,control,multiple,form_contenido_campos.orden
+ FROM form_contenido_campos, form_campos
+ WHERE form_campos.id_empresa = '$_SESSION[id_empresa]' AND form_contenido_campos.id_form = $id
+ AND form_contenido_campos.id_campo = form_campos.id
+ ORDER BY form_contenido_campos.orden";
+ $sql =mysql_query($consulta,$link);
+ $consulta_nombre="SELECT * FROM form_id WHERE id ='$id'";
+ $sql_nombre =mysql_query($consulta_nombre,$link);
+ $nombre =mysql_result($sql_nombre,0,"nombre");
+ //if (mysql_num_rows($sql)!='0'){
+$resultado ="$cerrar$nombre
+ ";
+$resultado .= "
+
+ Campo
+
+
+ Obligatorio
+
+
+ Orden
+
+
+ Multiple
+
+
+ Borrar
+
+
+
";
+
+while( $row = mysql_fetch_array( $sql ) ) {
+$resultado .= "
+
+ $row[id_campo] $row[campo_nombre]
+
+
+
+
+
+
+
";
+ }
+
+$consulta_campos_todos ="SELECT form_campos.id, form_campos.campo_nombre, form_campos.campo_descripcion FROM form_campos WHERE form_campos.id_empresa = '$_SESSION[id_empresa]'
+ ORDER BY campo_nombre ";
+$sql_consulta_campo =mysql_query($consulta_campos_todos,$link);
+
+$resultado .="
+";
+$resultado .= " Agregar campo a $nombre ";
+ while( $row = mysql_fetch_array( $sql_consulta_campo ) ) {
+$resultado .= "$row[campo_nombre] ";
+ }
+$resultado .=" ";
+
+ }/// fin de consultar_campos
+
+if($tipo=='grabar_campos'){
+$id_form=func_get_arg(3);
+$consulta = "SELECT id_campo FROM form_contenido_campos WHERE id_campo= '$id' AND id_form= $id_form";
+$sql_consulta =mysql_query($consulta,$link);
+$id_empresa= $_SESSION['id'];
+if(mysql_num_rows($sql_consulta) =='0') {
+$microtime = microtime();
+$consulta_grabar=" INSERT INTO form_contenido_campos (
+`id_campo` ,
+`id_empresa` ,
+`id_form` ,
+`obligatorio`,
+`control`
+)
+VALUES (
+'$id', '$id_empresa', '$id_form', '0', md5('$microtime' + rand())
+)";
+$sql_consulta_grabar =mysql_query($consulta_grabar,$link);
+$respuesta->addScript("xajax_agregar_campos('consultar_campos','$div','$id_form')");
+return $respuesta;
+ }else{$div='atencion';$resultado=" El campo ya pertenece a esta consulta ";}
+
+ }///fin de grabar_campos
+
+if($tipo=='eliminar'){
+$confirmar=func_get_arg(3);
+
+
+if($id==''){
+$id_c=func_get_arg(4);
+$capa_original=func_get_arg(5);
+$resultado = "
+ Seguro que desea eliminar el campo de esta consulta?
+ [SI]
+ [NO]
+
+ ";}
+ else{
+ if($id=='x'){ /// si se pasa una x como argumento se regresa a la capa original
+$resultado .= "
+
+ ";
+ }else{
+$consulta="DELETE FROM `form_contenido_campos` WHERE `control` = '$confirmar' LIMIT 1";
+$sql_consulta_eliminar = mysql_query($consulta,$link);
+$div=func_get_arg(5);
+$id_consulta=func_get_arg(4);
+$respuesta->addScript("xajax_agregar_campos('consultar_campos','$div','$id_consulta')");
+
+ }
+ }
+
+ }/// fin de eliminar
+if($tipo == 'obligatorio'){
+if($id == '0'){$id='1';}else{$id='0';}
+$control = func_get_arg(3);
+$consulta= "UPDATE `form_contenido_campos` SET `obligatorio` = '$id' WHERE `control` = '$control' LIMIT 1 ";
+$sql_consulta_grabar =mysql_query($consulta,$link);
+$a ="$id
+ ";
+$respuesta->addAssign($div,"innerHTML",$a);
+return $respuesta;
+
+ }/// fin de obligatorio
+if($tipo == 'orden'){ /// orden
+$control = func_get_arg(3);
+$consulta= "UPDATE `form_contenido_campos` SET `orden` = '$id' WHERE `control` = '$control' LIMIT 1 ";
+$sql_consulta_grabar =mysql_query($consulta,$link);
+$a =" $id
+ ";
+
+$respuesta->addAssign($div,"innerHTML",$a);
+return $respuesta;
+
+ }/// fin de obligatorio
+
+if($tipo == 'prellenado'){
+if($id == '0'){$id='1';}else{$id='0';}
+$control = func_get_arg(3);
+$consulta= "UPDATE `consulta_tipo_campos` SET `prellenado` = '$id' WHERE `control` = '$control' LIMIT 1 ";
+$sql_consulta_grabar =mysql_query($consulta,$link);
+$a ="$id
+ ";
+$respuesta->addAssign($div,"innerHTML",$a);
+return $respuesta;
+
+ }/// fin de oprellenado
+$respuesta->addAssign($div,"style.display","block");
+$respuesta->addAssign($div,"innerHTML",$resultado);
+return $respuesta;
+
+ }
+$xajax->registerFunction("agregar_campos");
+
+function formulario_nuevo($formulario,$div){
+ $formulario = mysql_seguridad($formulario);
+ $respuesta = new xajaxResponse('utf-8');
+ $id=mysql_real_escape_string($id);
+ $id_empresa= $_SESSION['id'];
+ if($div==''){
+ $div = "contenido";
+
+$resultado .= " Formulario ";
+
+ return $resultado;
+ }
+if($formulario ==''){
+ $formulario_nombre = "nuevo_formulario";
+ $formulario_respuesta = select('form_id','id','nombre','',"id_empresa = '$_SESSION[id_empresa]'",'formulario_respuesta');
+$resultado .= "
+
+Crear un formulario
+
+ Nombre para el formulario
+
+
+
+ Descripción
+
+
+
+ Formulario anidado con:
+ $formulario_respuesta
+
+
+
+ Privado
+
+ Público
+
+
+
+
+
+ Grabar
+
+
+ ";
+
+ }else{
+$control = md5(rand(1,99999999).microtime());
+
+$nombre = $formulario['nombre']; // aa
+$descripcion = $formulario['descripcion']; // dxddc
+$publico = $formulario['publico']; // dxddc
+if($publico =='') {$publico ='0';}
+$propietario= $_SESSION['id'];
+$formulario_respuesta = $formulario['formulario_respuesta']; // dxddc
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "INSERT INTO `form_id` ( `nombre`, `descripcion`, `activo`, `modificable`, `publico`, `propietario`, `formulario_respuesta`, `id_empresa`)
+VALUES ('$nombre', '$descripcion', '1', '1', '$publico', '$propietario','$formulario_respuesta','$_SESSION[id_empresa]');";
+$sql=mysql_query($consulta,$link);
+
+$respuesta->addscript("xajax_formulario_listado('','contenido'); ");
+}
+$respuesta->addAssign($div,"innerHTML",$resultado);
+
+return $respuesta;
+}$xajax->registerFunction("formulario_nuevo");
+
+function formulario_listado($formulario,$div){
+if ( !isset ( $_SESSION['id_empresa'] ) ) {
+ $respuesta = new xajaxResponse('utf-8');
+$respuesta->addRedirect("index.php");
+return $respuesta;
+}
+ $id=mysql_real_escape_string($id);
+ $id_empresa= $_SESSION['id'];
+ if($div==''){
+ $div = "contenido";
+$resultado .= " Formularios ";
+
+ return $resultado;;
+ }
+$control = md5(rand(1,99999999).microtime());
+$respuesta = new xajaxResponse('utf-8');
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta = "SELECT * FROM form_id WHERE id_empresa ='$_SESSION[id_empresa]' ORDER BY orden ASC";
+$sql=mysql_query($consulta,$link);
+$divider = 3;
+ $nuevo_formulario = "
+ Crear formulario ";
+ $resultado .= "
+
+ $nuevo_formulario
+
";
+if (mysql_num_rows($sql)!='0' ){
+ $i =0;
+
+ while( $row = mysql_fetch_array( $sql ) ) {
+ $id= $row[id];
+ $cantidad = formulario_contar($row[id]);
+ if($cantidad >0) {$cantidad ="Llenado: $cantidad veces ";}else{$cantidad = "";}
+ $propietario = remplacetas('usuarios','id',$row[propietario],'email',"") ;
+ $estado = remplacetas('form_id','id',$id,'publico',"") ;
+ $estado = "
+
+ Contenido privado
+
+ Público
+
+ ";
+ $modificable = remplacetas('form_id','id',$id,'modificable',"") ;
+ $modificable = "
+
+ Formulario privado
+
+ Público
+
+ ";
+
+
+ $primer = formulario_uso("$id",'','primer') ;
+ if($primer[0] !='') {$primer = "Primer registro: ".date ( "Y-m-d h:i:s" , $primer[0])." ";}else{$primer='';}
+ $ultimo = formulario_uso("$id",'','ultimo') ;
+ if($ultimo[0] !='') {$ultimo = "Último registro: ".date ( "Y-m-d h:i:s" , $ultimo[0])." ";}else{$ultimo='';}
+
+ $nombre = editar_campo("form_id","$row[id]","nombre","");
+ $orden = editar_campo("form_id","$row[id]","orden","");
+ $descripcion = editar_campo("form_id","$row[id]","descripcion","");
+ $geo = buscar_campo_tipo($id,"14");
+ if($geo[0] !='') { $mapa= " Mapa ";}else {$mapa='';}
+
+ if($i % $divider==0) {
+
+ $resultado .= "
+
+
+
+ ";
+ }
+ $i++;
+$resultado .= "
+
+
+
$nombre ID $row[id]
+
$descripcion
+ Orden $orden
+
+
+
+ $cantidad
+ $ultimo
+ $primer
+ Creado por: $propietario[0]
+ Creación: $row[creacion]
+ $mapa $estado $modificable
+ Modificar campos
+
+
+
+
+
+
+
+
+
+
+
+
+
+
";
+
+
+ if($i%$divider==0) {
+ $resultado .= "
";
+ }
+
+ }
+
+
+ $resultado .="";
+ }
+else{ $resultado .= "
Aún no se han diseñado formularios ";}
+$respuesta->addAssign($div,"innerHTML",$resultado);
+
+return $respuesta;
+}$xajax->registerFunction("formulario_listado");
+
+function formulario_eliminar($id,$tipo) {
+ $respuesta = new xajaxResponse('utf-8');
+ $nombre = remplacetas('form_id','id',$id,'nombre',"") ;
+ $nombre_form = $nombre[0];
+ if($tipo =='') {
+$resultado =" ";
+}elseif($tipo=='cancelar') {
+ $resultado =" Eliminar ";
+}elseif($tipo =='eliminar'){
+$consulta = "DELETE FROM form_id WHERE form_id.id = '$id' ";
+$link=Conectarse();
+ $sql=mysql_query($consulta,$link);
+ if($sql) {
+ $respuesta->addAlert("Se eliminó el formulario \" $nombre_form \" ");
+ $respuesta->addAssign("panel_$id","innerHTML","");
+ return $respuesta;
+
+ }
+}
+else {}
+$respuesta->addAssign("eliminar_$id","innerHTML",$resultado);
+
+return $respuesta;
+}$xajax->registerFunction("formulario_eliminar");
+
+
+function campo_multiple($id_campo,$id_form,$control,$item){
+//if ( !isset ( $_SESSION['id'] ) ) { return;}
+
+ if($item==''){$item=1;}
+ $id= $item;
+$render = formulario_campos_render($id_campo,$id_form,$control,$item+1);
+ $ingredientes = "
+
+ $render
+
+
+
+
+ ";
+ $boton= "
+ Agregar campo
+
";
+$div = "id_campo_$id_campo"."_".$id;
+$respuesta = new xajaxResponse('utf-8');
+$respuesta->addAssign($div,"innerHTML",$ingredientes);
+$respuesta->addAssign("boton_".$id_campo."","innerHTML","$boton ");
+return $respuesta;
+
+}
+$xajax->registerFunction("campo_multiple");
+
+
+function formulario_campos_render($id_campo,$id_form,$control,$item,$id_dato){
+
+
+$consulta ="
+ SELECT *
+ FROM form_contenido_campos,form_campos, form_tipo_campo
+ WHERE form_contenido_campos.id_form = '$id_form'
+ AND form_contenido_campos.id_campo = '$id_campo'
+ AND form_contenido_campos.id_campo = form_campos.id
+ AND form_tipo_campo.id_tipo_campo = form_campos.campo_tipo ";
+ $link=Conectarse();
+ mysql_query("SET NAMES 'utf8'");
+ $sql=mysql_query($consulta,$link);
+ if (mysql_num_rows($sql)!='0'){
+ if($id_dato !='') {
+ $value = remplacetas('form_datos','id',$id_dato,'contenido'," control = '$control'") ;
+ $multiple='0';
+ }
+ else {
+ $value = remplacetas('form_datos','id_campo',$id_campo,'contenido'," control = '$control'") ;
+ $multiple=mysql_result($sql,0,"multiple");
+ }
+ if($item=='') {$item ="0";}else {$item=$item;}
+
+ if($value[0] !='') {$value= "$value[0]";}ELSE{$value='';}
+ $campo_nombre=mysql_result($sql,0,"campo_nombre");
+ $campo_descripcion=mysql_result($sql,0,"campo_descripcion");
+ $campo_tipo_accion=mysql_result($sql,0,"tipo_campo_accion");
+
+ if($campo_tipo_accion == 'text'){$render = " ";}
+ elseif($campo_tipo_accion == 'date'){$render = " ";}
+ elseif($campo_tipo_accion == 'rango'){
+ $rango = rango("form_campos_valores","campo_valor","id_form_campo","$id_campo","$value","".$id_campo."[".$item."]",""); $render = $rango;}
+ elseif($campo_tipo_accion == 'mapa'){
+ $campos = explode(" ",$value);
+ $lat = $campos[0];
+ $lon = $campos[1];
+ $zoom = $campos[2];
+ $render = "
+
+
+
+
+ ";}
+ elseif($campo_tipo_accion == 'email'){$render = "Escriba un email válido
+ ";}
+ elseif($campo_tipo_accion == 'envio'){$render = "Se enviará un correo electrónico a este email
+ ";}
+ elseif($campo_tipo_accion == 'textarea'){
+ $render = " $value ";
+ }
+ elseif($campo_tipo_accion == 'html'){
+ $render = "
+
+ $value ";
+ }
+ elseif($campo_tipo_accion == 'limit'){
+ $limite = limite("".$id_campo."[".$item."]",'');
+ $rows = ceil($limite / 50 )+1;
+ $render = "$limite /
+
+
+ $value
+ ";
+
+ }
+ elseif($campo_tipo_accion == 'select'){
+
+ //$select = select('form_campos_valores','campo_valor','campo_valor','',"id_form_campo = $id_campo",$id_campo."[".$item."]");
+ $select = select_edit($id_campo,$id_form,$value,$id_campo."[".$item."]",$control);
+ $render = "$select ";}
+ elseif($campo_tipo_accion == 'number'){$render = "(Este campo solo acepta números)
+ ";}
+ else{$render = " ";}
+ if($multiple =='1'){
+ $campo_multiple = "
+
+ ";
+}
+ if($item == 0) { $label = " $id_campo $campo_nombre ";}
+ else {$label = "$campo_nombre ";}
+ $input = "
+
+
+$campo_multiple
+ ";
+
+
+ }
+ return $input;
+}
+
+function validar_email($email) {
+
+if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$email)) {
+ return 1;
+}else{
+ return 0;
+}
+}
+
+function formulario_valor_campo_ORIGINAL($perfil,$id_campo,$valor,$id_control){
+
+
+//if($id_control !=""){ $control ="AND `control` = '$id_control'";}else {$control ="";}
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$valor=mysql_real_escape_string($valor);
+if($valor !=""){ $valor ="AND md5(contenido) LIKE '$valor'";}else {$valor ="";}
+$consulta = "SELECT * FROM `form_datos` WHERE `form_id` = '$perfil' AND id_campo='$id_campo' $valor AND `control` = '$id_control' ORDER BY timestamp DESC limit 1";
+$sql =mysql_query($consulta,$link);
+$cant =mysql_num_rows($sql);
+
+if (mysql_num_rows($sql) == '0'){
+ $existe = NULL;
+ }else {
+
+$control=mysql_result($sql,0,"control");
+$timestamp=mysql_result($sql,0,"timestamp");
+mysql_data_seek($sql, 0);
+if($cant === 1) {
+ $contenido=mysql_result($sql,0,"contenido");
+ }else {
+while( $row = mysql_fetch_array( $sql ) ) {
+ $contenido .= "$row[contenido] ";
+ }
+ }
+$existe[]= $control;
+$existe[] = $timestamp;
+$existe[] = $consulta;
+$existe[] = $contenido;
+}
+return $existe;
+ }
+
+
+
+function formulario_valor_campo($perfil,$id_campo,$valor,$id_control,$orden){
+
+
+//if($id_control !=""){ $control ="AND `control` = '$id_control'";}else {$control ="";}
+$campo_multiple = remplacetas("form_contenido_campos","id_campo",$id_campo,"multiple"," id_form ='$perfil'");
+$campo_multiple = $campo_multiple[0];
+if($campo_multiple !="1"){ $limite =" asc limit 1 ";}else {$limite =" asc ";}
+if($orden !=""){ $campo_orden =" AND orden ='$orden' ";}else {$campo_orden ="";}
+
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$valor=mysql_real_escape_string($valor);
+if($valor !=""){ $valor ="AND md5(contenido) LIKE '$valor'";}else {$valor ="";}
+/*
+$consulta = "SELECT * FROM `form_datos`
+WHERE `form_id` = '$perfil'
+AND id_campo='$id_campo' $valor
+AND `control` = '$id_control' $campo_orden
+GROUP BY orden
+ORDER BY timestamp $limite ";
+*/
+ $consulta = "SELECT *,GROUP_CONCAT(id ORDER by timestamp desc ) as identificador
+ FROM `form_datos`
+ WHERE form_id = '$perfil'
+ AND id_campo ='$id_campo' $valor
+ AND control ='$id_control' $campo_orden
+ group by orden
+ ORDER BY orden $limite";
+
+$sql =mysql_query($consulta,$link);
+$cant =mysql_num_rows($sql);
+
+if (mysql_num_rows($sql) == '0'){
+ $existe = NULL;
+ }else {
+
+$control=mysql_result($sql,0,"control");
+$timestamp=mysql_result($sql,0,"timestamp");
+mysql_data_seek($sql, 0);
+if($cant === 1) {
+ //$contenido=mysql_result($sql,0,"contenido");
+ $identificador=mysql_result($sql,0,"identificador");
+ $identificador = explode(',',$identificador);
+ $identificador = $identificador[0];
+ $contenido_campo = remplacetas('form_datos','id',$identificador,'contenido',"") ;
+ $md5_contenido = $contenido_campo[3];
+ //$md5_contenido = remplacetas('form_datos','id',$identificador,' md5(binary contenido) as md5_contenido ',"") ; //md5(binary contenido) as md5_contenido,
+ //$md5_contenido = $md5_contenido[0];
+ $contenido = "$contenido_campo[0] ";
+ }else {
+while( $row = mysql_fetch_array( $sql ) ) {
+ $identificador = explode(',',$row[identificador]);
+ $identificador = $identificador[0];
+ $contenido_campo = remplacetas('form_datos','id',$identificador,'contenido',"") ;
+ $contenido .= "$contenido_campo[0] ";
+ }
+ }
+// $contenido .="$consulta";
+$existe[]= $control;
+$existe[] = $timestamp;
+$existe[] = $consulta;
+$existe[] = "$contenido";
+$existe[] = $md5_contenido;
+}
+return $existe;
+ }
+
+function formulario_grabar($formulario) {
+ $respuesta = new xajaxResponse('utf-8');
+ //$formulario = mysql_seguridad($formulario);
+ $ip = obtener_ip();
+ $graba_ip = "INET_ATON('".$ip."') ";
+ $consulta_grabada ='0';
+ $control = $formulario[control]; //
+ $form_id = $formulario[form_id]; //
+ $tipo = $formulario[tipo]; //
+ if($formulario[imagen] !=''){$formulario[0][0] = $formulario[imagen];}
+
+ $consulta_form = "SELECT * FROM form_contenido_campos,form_campos
+ WHERE form_contenido_campos.id_campo = form_campos.id
+ AND id_form = '$form_id' ";
+ $link=Conectarse();
+ mysql_query("SET NAMES 'utf8'");
+// $sql=mysql_query($consulta_form,$link);
+
+// if (mysql_num_rows($sql)!='0'){
+// mysql_data_seek($sql, 0);
+// while( $row = mysql_fetch_array( $sql ) ) {
+
+
+//////
+ if(isset ( $_SESSION[id_empresa])){$id_empresa = $_SESSION[id_empresa]; }else{
+ $id_empresa = remplacetas('form_id','id',$formulario[form_id],'id_empresa',"") ;
+ $id_empresa = $id_empresa[0];
+ }
+foreach($formulario as $c=>$v){
+
+
+//LISTA ELEMENTOS DE UN ARRAY
+if (is_array($v) ){
+ foreach($v as $C=>$V){
+ $campo_tipo = remplacetas("form_campos","id",$c,"campo_tipo","");
+ $campo_nombre = remplacetas("form_campos","id",$c,"campo_nombre","");
+ if($V != '') {
+
+
+
+$datos .= "$$c = \$formulario['$c'][$C]; // $V /$campo_tipo[0]
";
+ if($campo_tipo[0] =='12' OR $campo_tipo[0] =='13') {
+ $validar = validar_email($V);
+ if($validar == '0') {
+ $respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
+ $respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
+ $respuesta->addAlert("Se necesita un email válido");
+ return $respuesta;
+ }else {
+ $respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-success ");
+ }
+ }
+ if($campo_tipo[0] =='3' ) {
+ $validar = is_numeric($V);
+ if(is_numeric($V) ) {
+ $respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-success ");
+ //return $respuesta;
+ }else{
+ $respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
+ $respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
+ $respuesta->addAlert("El campo $campo_nombre[0] solo acepta valores numéricos");
+ return $respuesta;
+ }
+ }
+
+ if($campo_tipo[0]=='17') {
+ $limite = limite("$c",'');
+ $size= strlen($V);
+ $restante = ($limite - $size);
+ if( $restante < 0) {
+
+ $respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
+ $respuesta->addAlert("ATENCION: El campo $campo_nombre[0] no debe tener mas de $limite caractéres, sobran $restante");
+ $respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
+ return $respuesta;
+ }
+ }
+
+
+
+ }
+else{ //busca campos vacios
+
+$campo_obligatorio = remplacetas("form_contenido_campos","id_campo",$c,"obligatorio","id_form = '$formulario[form_id]'");
+if($campo_obligatorio[0] =='1'){
+
+ $respuesta->addAssign("input_".$c."[".$C."]","className"," form-group has-error ");
+ $respuesta->addAlert("ATENCION: El campo $campo_nombre[0] es obligatorio");
+ $respuesta->addScript("document.getElementById('".$c."[".$C."]').focus(); ");
+ return $respuesta;
+ }
+
+}
+
+$md5 = md5($V);
+$igual = formulario_valor_campo("$form_id","$c","$md5","$formulario[control]","$C");
+$existe = formulario_valor_campo("$form_id","$c","","$formulario[control]","$C");
+//$valor_anterior .= $existe[3]."| ";
+if(!is_null($existe) AND $tipo =='edit' AND $V =='') {
+ $consulta_vacio ="
+ INSERT INTO `form_datos` (`id`, `id_campo`,`orden`,`form_id`, `id_usuario`, `contenido`, `timestamp`, `control`, ip , id_empresa)
+ VALUES (NULL, '$c','$C', '$formulario[form_id]', '$_SESSION[id]', '', UNIX_TIMESTAMP(), '$formulario[control]',$graba_ip,'$id_empresa');";
+
+ $sql=mysql_query($consulta_vacio,$link);
+ if($sql) {
+ $consulta_grabada ='1';
+ }
+}
+if(is_null($igual) ){$repetido = 0;}else{
+$repetido = 1;
+}
+
+//$debug .= " (c= $c md5 = $md5 , igual = $igual, repetid =$repetido ) ";
+//$respuesta->addAssign("respuesta_$control","innerHTML","$valor_anterior");
+//return $respuesta;
+//$respuesta->addAlert("$debug");
+//return $respuesta;
+
+if(($V !='' ) && (is_numeric($c)) AND $repetido !=1 ) {
+
+ $V = mysql_real_escape_string($V);
+ $consulta ="
+ INSERT INTO `form_datos` (`id`, `id_campo`,`orden`,`form_id`, `id_usuario`, `contenido`, `timestamp`, `control`, ip , id_empresa)
+ VALUES (NULL, '$c','$C', '$formulario[form_id]', '$_SESSION[id]', '$V', UNIX_TIMESTAMP(), '$formulario[control]',$graba_ip,'$id_empresa');";
+
+ $sql=mysql_query($consulta,$link);
+ $debug .= "$consulta = $sql ,";
+ if($sql) {
+ $consulta_grabada ='1';
+ }
+ }
+
+ } ///fin del array
+
+ }///fin del array primario
+ else {
+ if($v !='') {$datos .= "$$c = \$formulario['$c']; // $v
";}
+ }
+ }
+
+
+
+
+// }
+// }
+
+
+if($consulta_grabada =='1') {
+
+ $exito ="
+
+ Gracias por llenar el formulario $formulario[form_nombre]
+
+
+
+
";
+ $propietario = remplacetas('form_id','id',$formulario[form_id],'propietario',"") ;
+ $propietario = remplacetas('usuarios','id',$propietario[0],'email',"") ;
+ $id_empresa = remplacetas('form_id','id',$formulario[form_id],'id_empresa',"") ;
+ $id_empresa = $id_empresa[0];
+
+ $direccion = remplacetas("empresa","id",$id_empresa,"direccion","");
+ $telefono = remplacetas("empresa","id",$id_empresa,"telefono","");
+ $web = remplacetas("empresa","id",$id_empresa,"web","");
+ $email = remplacetas("empresa","id",$id_empresa,"email","");
+ $imagen = remplacetas("empresa","id",$id_empresa,"imagen","");
+ $razon_social = remplacetas("empresa","id",$id_empresa,"razon_social","");
+ $slogan = remplacetas("empresa","id",$id_empresa,"slogan","");
+ $nombre_formulario = remplacetas("form_id","id",$formulario[form_id],"nombre","");
+
+$headers = "MIME-Version: 1.0\r\n";
+$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
+$headers .= "From: $razon_social[0] <$email[0]>\r\n";
+$headers .= "Reply-To: $email[0]\r\n";
+$headers .= "Return-path: $email[0]\r\n";
+$headers .= "Cc: $propietario[0]" . "\r\n";
+
+$asunto= "[MILFS] $nombre_formulario[0]";
+$cuerpo ="
+Formulario
+Se ha completado el formulario $nombre_formulario[0]
+Puede revisar los datos en http://$_SERVER[HTTP_HOST]/milfs?id=$formulario[form_id]&c=$formulario[control]
+Saludos de MILFS
+";
+ if(mail("$email[0]","$asunto","$cuerpo","$headers")){ $exito .=""; }else {$exito .="error enviando correo";}
+ //$exito .= "$email[0] $headers ";
+ $respuesta->addAssign("div_$control","innerHTML","$exito ");
+ return $respuesta;
+ }
+//$respuesta->addAssign("respuesta_$control","innerHTML","$resultado");
+return $respuesta;
+}
+$xajax->registerFunction("formulario_grabar");
+
+function mysql_seguridad($inp) {
+ if(is_array($inp))
+ return array_map(__METHOD__, $inp);
+
+ if(!empty($inp) && is_string($inp)) {
+ return str_replace(array('\\', "\0", "'", '"', "\x1a"), array('\\\\', '\\0', "\\*", "\\*", '\\Z'), $inp);
+ }
+
+ return $inp;
+}
+
+function formulario_campos_render_multiple($id_campo,$id_form,$control,$item) {
+
+ $consulta = "SELECT *,GROUP_CONCAT(id ORDER by timestamp desc ) as identificador
+ FROM `form_datos`
+ WHERE form_id = '$id_form'
+ AND id_campo ='$id_campo'
+ AND control ='$control'
+ group by orden ORDER BY orden asc";
+ $link=Conectarse();
+ //$resultado .= "$consulta";
+ mysql_query("SET NAMES 'utf8'");
+ $sql =mysql_query($consulta,$link);
+ if (mysql_num_rows($sql)!='0' ){
+ mysql_data_seek($sql, 0);
+ while( $row = mysql_fetch_array( $sql ) ) {
+ $identificador = explode(',',$row[identificador]);
+ $identificador = $identificador[0];
+ //$identificador = $row[identificador];
+ $resultado .= $identificador;
+ $resultado .= formulario_campos_render($row[id_campo],$id_form,$control,$row[orden],$identificador);
+ $item = $item + 1;
+ }
+ }
+ $resultado .= formulario_campos_render($id_campo,$id_form,'',$item,'');
+
+ return $resultado;
+}
+
+
+
+function formulario_modal($id,$form_respuesta,$control,$tipo) {
+ $respuesta = new xajaxResponse('utf-8');
+ $formulario_respuesta = formulario_respuesta("$id","$control");
+ $id_empresa = remplacetas('form_id','id',$id,'id_empresa') ;
+ $id_empresa = $id_empresa[0];
+ $encabezado = empresa_datos("$id_empresa",'encabezado');
+ $pie = "$formulario_respuesta";
+ $pie .= empresa_datos("$id_empresa",'pie');
+ $formulario_descripcion = remplacetas('form_id','id',$id,'descripcion') ;
+ $cabecera ="$encabezado$formulario_nombre[0] $formulario_descripcion[0]
$nuevo_formulario ";
+/*
+ $modificable = remplacetas('form_id','id',$id,'modificable') ;
+ $publico = remplacetas('form_id','id',$id,'publico') ;
+ if($modificable[0] != "1" and (!isset ( $_SESSION[id]) )){$restringido = 1;}
+ elseif($publico[0] != "1" and (!isset ( $_SESSION[id]) )) {$restringido = 1;}
+ else{$restringido=0;}
+ if($restringido === 1 ) {
+ $muestra_form ="
+
$restringido $modificable[0]
+ Este formulario no esta disponible publicamente.
+ ";
+ $respuesta->addAssign("muestra_form","innerHTML","$muestra_form");
+$respuesta->addAssign("titulo_modal","innerHTML","$cabecera");
+$respuesta->addAssign("pie_modal","innerHTML","$pie");
+$respuesta->addscript("$('#muestraInfo').modal('toggle')");
+return $respuesta;
+ }
+*/
+ $nuevo_formulario = "Llenar otro formulario ";
+if($control !='' AND $tipo =='' ) {
+ $impresion = formulario_imprimir("$id","$control","");
+ $formulario_nombre = remplacetas('form_id','id',$id,'nombre') ;
+ $muestra_form = "$impresion
";
+ $respuesta->addAssign("muestra_form","innerHTML","$muestra_form");
+ $respuesta->addAssign("titulo_modal","innerHTML","$cabecera");
+ $respuesta->addAssign("pie_modal","innerHTML","$pie");
+ $respuesta->addscript("$('#muestraInfo').modal('toggle')");
+ return $respuesta;
+ }
+
+ $modificable = remplacetas('form_id','id',$id,'modificable') ;
+ if($modificable[0] != "1" and (!isset ( $_SESSION[id]) )) {
+ $resultado ="
Acceso restringido No se pueden consultar los datos.";
+ $respuesta->addAssign("muestra_form","innerHTML","$resultado");
+ $respuesta->addAssign("titulo_modal","innerHTML","$cabecera");
+ $respuesta->addAssign("pie_modal","innerHTML","$pie");
+ $respuesta->addscript("$('#muestraInfo').modal('toggle')");
+ return $respuesta;
+ }
+
+
+$consulta = "
+ SELECT * FROM form_id, form_contenido_campos
+ WHERE form_id.id = form_contenido_campos.id_form
+ AND form_id.id = '$id' ORDER BY form_contenido_campos.orden ASC
+ ";
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+ if($respuesta !='' AND $control !=''){$control =$control;}
+ else{$control = md5(rand(1,99999999).microtime());}
+ $descripcion=mysql_result($sql,0,"descripcion");
+ $nombre=mysql_result($sql,0,"nombre");
+ $id_empresa=mysql_result($sql,0,"id_empresa");
+ $encabezado = empresa_datos("$id_empresa",'encabezado');
+ $pie = empresa_datos("$id_empresa",'pie');
+ $cabecera = "
+ $encabezado
+
+
+
+
+
+
+
+
Compartir este formulario
+
+
";
+$subir_imagen = subir_imagen('');
+ $muestra_form = "
+
+ $subir_imagen
+
+
+
+
+
+
+ ";
+ if($tipo=="edit") {$control_edit = "$control";}else {$control_edit = "";}
+ mysql_data_seek($sql, 0);
+ while( $row = mysql_fetch_array( $sql ) ) {
+ if($row[multiple] ==='1' AND $tipo =='edit'){
+ $campos = formulario_campos_render_multiple($row[id_campo],$id,$control_edit);
+ }else{
+ $campos = formulario_campos_render($row[id_campo],$id,$control_edit,'');
+ }
+ $muestra_form .= "$campos ";
+ }
+ $muestra_form .="
+
+ ";
+ }
+
+$muestra_form .="
+
+
+
";
+
+
+$respuesta->addAssign("muestra_form","innerHTML","$muestra_form");
+$respuesta->addAssign("titulo_modal","innerHTML","$cabecera");
+$respuesta->addAssign("pie_modal","innerHTML","$pie");
+$respuesta->addscript("$('#muestraInfo').modal('toggle')");
+//$respuesta->addscript("$('textarea').markdown({autofocus:false,savable:false})");
+$respuesta->addscript("$(document).ready(function () { $('textarea').cleditor(); })");
+//$(document).ready(function () { $("#input").cleditor(); });
+
+
+
+return $respuesta;
+}
+$xajax->registerFunction("formulario_modal");
+
+function Conectarse(){
+ if ( !isset ( $link ) ) {
+
+ include("includes/datos.php");
+ if(!isset($db)) {
+ include("milfs/includes/datos.php");
+ }
+
+ if (!($link=mysql_connect($servidor,$usuario,$password)))
+ {
+ echo "Error conectando a la base de datos.";
+ exit();
+ }
+ if (!mysql_select_db($db,$link))
+ {
+ echo "Error seleccionando la base de datos.";
+ exit();
+ }
+
+
+ return $link;
+ }
+}
+
+function limpia_div($capa){
+$respuesta = new xajaxResponse('utf-8');
+$respuesta->addAssign($capa,"style.padding","0px");
+$respuesta->addClear($capa,"innerHTML");
+
+return $respuesta;
+}$xajax->registerFunction("limpia_div");
+
+function select($tabla,$value,$descripcion,$onchange,$where,$nombre){
+$link=Conectarse();
+$campos = explode(",",$descripcion);
+$campo1 = $campos[0];
+$campo2 = $campos[1];
+$debug = "($tabla,$value,$descripcion,$onchange,$where)";
+mysql_query("SET NAMES 'utf8'");
+$id_empresa= $_SESSION['id_empresa'];
+if($where =='AGRUPADO'){$group="group by $value ";}
+elseif($where != ''){$w = "AND ".$where;}else{ $w="";}
+$busca = array("[","]");
+if( strpos( $onchange,'[') !== false ){$fila=str_replace($busca,'',$onchange);$onchange='';};
+$consulta = "SELECT $value, $descripcion FROM $tabla WHERE 1 $w $group ";
+$sql=mysql_query($consulta,$link);
+if($nombre==''){$name=$tabla."_".$value;}else{$name = "$nombre";}
+if (mysql_num_rows($sql)!='0'){
+ if($onchange !=''){$vacio ="";}else{$vacio =" >> Nuevo $descripcion << ";}
+$resultado="
+Seleccione
+ " ;
+while( $row = mysql_fetch_array( $sql ) ) {
+
+$resultado .= " ".substr($row[$campo1], 0, 150 )." ".substr($row[$campo2], 0, 30 )." ";
+ }
+$resultado .= " ";
+ }else{$resultado = " No hay resultados
";}
+
+return $resultado;
+}
+
+function select_edit($id_campo,$form_id,$valor,$name,$control){
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+
+$consulta = "SELECT * FROM form_campos_valores WHERE id_form_campo ='$id_campo' ";
+$sql=mysql_query($consulta,$link);
+// $value = remplacetas("form_datos","control","$control","contenido","id_campo ='$id_campo' ");
+if (mysql_num_rows($sql)!='0'){
+
+$resultado="
+Seleccione
+ " ;
+while( $row = mysql_fetch_array( $sql ) ) {
+if($row[campo_valor] ==="$valor"){$selected="selected";}else{$selected ="";}
+$resultado .= " $row[campo_valor] ";
+ }
+$resultado .= " ";
+ }else{$resultado = " No hay resultados
";}
+
+return $resultado;
+}
+
+
+function rango($tabla,$campo,$key,$valor,$selected,$nombre,$onchange){
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+
+$consulta = "SELECT min($campo) as min , max($campo) as max FROM $tabla WHERE $key ='$valor' ";
+$sql=mysql_query($consulta,$link);
+
+if (mysql_num_rows($sql)!='0'){
+ $min=mysql_result($sql,0,"min");
+ $max=mysql_result($sql,0,"max");
+if($nombre==''){$name=$tabla."_".$value;}else{$name = "$nombre";}
+$resultado="
+ $min
+
+ $max $selected
+
" ;
+
+
+ }else{$resultado = " No hay resultados
";}
+
+return $resultado;
+}
+
+function limite($id_campo,$contenido){
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+
+$consulta = "SELECT campo_valor FROM form_campos_valores WHERE id_form_campo ='$id_campo' ";
+$sql=mysql_query($consulta,$link);
+
+if (mysql_num_rows($sql)!='0'){
+ $limite=mysql_result($sql,0,"campo_valor");
+
+ }else{}
+if($contenido !='') {
+ $respuesta = new xajaxResponse('utf-8');
+ $size= strlen($contenido);
+ $restante = ($limite - $size);
+ $div_input = "input_$id_campo";
+ if( $restante<=1) {
+$respuesta->addAssign("aviso_$id_campo","className","alert-danger ");
+$respuesta->addAssign("$div_input","className","has-error ");
+ }
+ elseif( $restante<=10) {
+$respuesta->addAssign("aviso_$id_campo","className","alert-warning ");
+$respuesta->addAssign("$div_input","className","has-warning ");
+ }else{
+$respuesta->addAssign("aviso_$id_campo","className","alert-succes ");
+$respuesta->addAssign("$div_input","className","has-success ");
+}
+ $respuesta->addAssign("aviso_$id_campo","innerHTML","$restante");
+
+ return $respuesta;
+ }
+ return $limite;
+}
+$xajax->registerFunction("limite");
+
+function confirma_campo($valor_1,$valor_2,$campo,$campo_confirmacion){
+ $respuesta = new xajaxResponse('utf-8');
+ $pos = strpos($campo,"email");
+
+if($pos == "") { //// si no es un email
+ }
+ else {//// si es un email se revisa
+ $email = validar_email("$valor_1");
+ if($email === 0 ) {
+ $respuesta->addAssign("$campo","value","");
+ $respuesta->addAssign("$campo"."_grupo","className"," input-group has-error ");
+ $respuesta->addAssign("$campo_confirmacion"."_grupo","className"," input-group has-error ");
+ $respuesta->addAlert("El email no es valido ");
+ $respuesta->addScript("document.getElementById('$campo').focus(); ");
+ return $respuesta;
+ }
+ else{
+ }
+ }
+
+
+
+ if($valor_1 != $valor_2){$resultado = "Los valores NO son iguales";
+ $respuesta->addAlert("$resultado");
+ /// $respuesta->addAssign("$campo","style.color","red");
+
+
+ $respuesta->addAssign("$campo","value","$pos");
+ $respuesta->addAssign("$campo_confirmacion","value","");
+ $respuesta->addAppend("$campo"."_grupo","className"," has-error ");
+ $respuesta->addAppend("$campo_confirmacion"."_grupo","className"," has-error ");
+ $respuesta->addScript("document.getElementById('$campo').focus(); ");
+ // document.getElementById('mobileno').focus();
+
+
+ }else{
+ $respuesta->addAssign("$campo_confirmacion","style.color","green");
+
+ $respuesta->addAssign("$campo"."_grupo","className"," input-group has-success ");
+ $respuesta->addAssign("$campo_confirmacion"."_grupo","className"," input-group has-success ");
+ }
+ return $respuesta;
+}
+$xajax->registerFunction("confirma_campo");
+
+
+function validar_campo($valor,$campo,$tabla,$div,$id){
+$valor = mysql_seguridad($valor);
+$respuesta = new xajaxResponse('utf-8');
+$link=Conectarse();
+mysql_query("SET NAMES 'utf8'");
+$consulta="SELECT $campo FROM $tabla WHERE $campo = '$valor' LIMIT 1";
+$sql =mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0' ){
+$verificacion = "atencion"; $existe='';
+
+$respuesta->addAssign($campo,"value","");
+///$respuesta->addAlert("El valor $valor $existe existe");
+$resultado = "Grrr $valor $existe existe ";
+$respuesta->addAssign("$id","style.backgroundColor","pink");
+$respuesta->addAssign($div,"innerHTML",$resultado);
+return $respuesta;
+ }else {$verificacion ="check"; $existe='NO';}
+$resultado = "Ok, buen $campo ! ";
+$respuesta->addAssign("$id","style.backgroundColor","#CBE7CB");
+//$resultado .= "$valor,$campo,$tabla,$div";
+$respuesta->addAssign($div,"innerHTML",$resultado);
+
+
+return $respuesta;
+}
+$xajax->registerFunction("validar_campo");
+
+
+function comprobar_email($email,$tipo,$campo){
+$email = mysql_seguridad($email);
+$respuesta = new xajaxResponse('utf-8');
+if($tipo =='tercero') {$id_campo='tercero_email';}
+
+
+else{$id_campo = 'email';}
+
+if($campo !=''){
+$id_campo="$campo";
+}
+
+
+if ($email == "" AND $tipo==''){
+ $respuesta->addAlert("El campo email es obligatorio ");
+ $respuesta->addAssign("$id_campo","style.backgroundColor","pink");
+ $respuesta->addAssign("$id_campo","value","");
+ return $respuesta;
+ }
+
+ $mail_correcto = 0;
+ //compruebo unas cosas primeras
+ if ((strlen($email) >= 6) && (substr_count($email,"@") == 1) && (substr($email,0,1) != "@") && (substr($email,strlen($email)-1,1) != "@")){
+ if ((!strstr($email,"'")) && (!strstr($email,"\"")) && (!strstr($email,"\\")) && (!strstr($email,"\$")) && (!strstr($email," "))) {
+ //miro si tiene caracter .
+ if (substr_count($email,".")>= 1){
+ //obtengo la terminacion del dominio
+ $term_dom = substr(strrchr ($email, '.'),1);
+ //compruebo que la terminación del dominio sea correcta
+ if (strlen($term_dom)>1 && strlen($term_dom)<5 && (!strstr($term_dom,"@")) ){
+ //compruebo que lo de antes del dominio sea correcto
+ $antes_dom = substr($email,0,strlen($email) - strlen($term_dom) - 1);
+ $caracter_ult = substr($antes_dom,strlen($antes_dom)-1,1);
+ if ($caracter_ult != "@" && $caracter_ult != "."){
+ $mail_correcto = 1;
+ }
+ }
+ }
+ }
+ }
+ if ($mail_correcto AND $tipo=='' )
+ {
+$consulta= "SELECT email FROM usuarios WHERE email = '$email' LIMIT 1 ";
+ $link=Conectarse();
+$sql=mysql_query($consulta,$link);
+$revisa=mysql_result($sql,0,"email");
+if ($revisa != ''){
+
+ $respuesta->addAlert("$email: ya está registrado ");
+ $respuesta->addAssign("email","style.color","red");
+ $respuesta->addAssign("email","value","");
+ return $respuesta;
+ }
+ $respuesta->addAssign("email","style.color","green");}
+ elseif ($mail_correcto AND $tipo==='revisar' ) {
+ $revisar = remplacetas("usuarios","email",$email,"email","");
+ if($revisar[0] != '') {
+
+ $respuesta->addAssign("$campo","style.color","white");
+ $respuesta->addAssign("$id_campo","style.backgroundColor","green");
+ }else{
+ $respuesta->addAlert("$email: No existe en el sistema)");
+ $respuesta->addAssign("$campo","value","");
+ }
+ return $respuesta;
+ }
+
+ elseif ($mail_correcto AND $tipo==='tercero' ) {
+ $documento = remplacetas("terceros","email",$email,"documento","");
+ if($documento[1] =='') { /// si el tercero NO existe
+
+ }else { /// si el tercero existe en el sistema
+
+ $tipo_persona = remplacetas("terceros","id",$documento[1],"tipo_persona","");
+
+ if($tipo_persona[0] =='1') {
+ $razon_social = remplacetas("terceros","id",$documento[1],"razon_social","");
+ $resultado .= " $razon_social[0]] Nit: $documento[0]";
+ } else {
+ $primer_nombre = remplacetas("terceros","id",$documento[1],"p_nombre","");
+ $segundo_nombre = remplacetas("terceros","id",$documento[1],"s_nombre","");
+ $primer_apellido = remplacetas("terceros","id",$documento[1],"p_apellido","");
+ $segundo_apellido = remplacetas("terceros","id",$documento[1],"s_apellido","");
+ $resultado .=" \r $primer_nombre[0] $segundo_nombre[0] $primer_apellido[0] $segundo_apellido[0] \r Documento: $documento[0]";
+ }
+
+ $respuesta->addAlert("$email: $resultado");
+ $respuesta->addAssign("tercero_documento","value","$documento[0]");
+ $respuesta->addAssign("tercero_primer_nombre","value","$primer_nombre[0]");
+ $respuesta->addAssign("tercero_segundo_nombre","value","$segundo_nombre[0]");
+ $respuesta->addAssign("tercero_primer_apellido","value","$primer_apellido[0]");
+ $respuesta->addAssign("tercero_segundo_apellido","value","$segundo_apellido[0]");
+ $respuesta->addAssign("tercero_razon_social","value","$razon_social[0]");
+ $respuesta->addAssign("tercero_id","value","$documento[1]");
+
+ }
+
+ }
+ else
+ {$respuesta->addAlert("$email: no es un correo válido");
+ $respuesta->addAssign("$id_campo","style.backgroundColor","pink");
+ $respuesta->addAssign("$id_campo","value","");
+ }
+ return $respuesta;
+}
+$xajax->registerFunction("comprobar_email");
+function obtener_ip()
+{
+if (!empty($_SERVER['HTTP_CLIENT_IP']))
+ return $_SERVER['HTTP_CLIENT_IP'];
+
+ if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
+ return $_SERVER['HTTP_X_FORWARDED_FOR'];
+
+ return $_SERVER['REMOTE_ADDR'];
+
+}
+
+function milfs(){
+ $crear_campos = formulario_crear_campo('','','');
+ $listado = formulario_listado('','');
+ $consultas = formulario_consultar('','');
+ $importador = formulario_importador('');
+ $limpiar_cache = borrar_tmp('');
+ $configuracion= configuracion('');
+ $login = login_boton();
+ $menu =
+"
+
+
+
+ $crear_campos
+
+ $listado
+ $consultas
+ $importador
+ $limpiar_cache
+ Presentación
+ $configuracion
+
+
+
+
+
";
+
+ return $menu;
+}
+function url_existe($url)
+{
+ $handle = @fopen($url, "r");
+ if ($handle == false)
+ return NULL;
+ fclose($handle);
+ return $url;
+}
+function es_imagen($url)
+ {
+ $imageSizeArray = getimagesize($url);
+ $imageTypeArray = $imageSizeArray[2];
+ return (bool)(in_array($imageTypeArray , array(IMAGETYPE_GIF , IMAGETYPE_JPEG ,IMAGETYPE_PNG )));
+ }
+function parametrizacion($array) {
+ //return $array;
+ $link=Conectarse();
+ mysql_real_escape_string($array);
+ $accion = $array[accion];
+ $tabla = $array[tabla];
+ $campo = $array[campo];
+ $opcion = $array[opcion];
+ $descripcion= $array[descripcion];
+ $visible= $array[visible];
+ $id= $array[id];
+
+ if($accion =='grabar'){
+ $consulta= "INSERT INTO parametrizacion set tabla='$tabla', campo ='$campo',opcion ='$opcion' , descripcion ='$descripcion' ,visible='$visible'";
+ }
+ // return $consulta;
+ $sql=mysql_query($consulta,$link);
+ if($sql){return "Campo grabado"; }else{return "Problema $consulta $array[tabla]";}
+
+}
+?>
\ No newline at end of file
diff --git a/milfs/funciones/funciones.php b/milfs/funciones/funciones.php
index 71b1312..7c18b75 100755
--- a/milfs/funciones/funciones.php
+++ b/milfs/funciones/funciones.php
@@ -5,7 +5,7 @@ function json($datos){
$datos = mysql_seguridad($datos);
$link=Conectarse();
if($datos[id] !=''){
- $consulta = "SELECT form_datos.id as id_dato, form_datos.form_id AS id_formulario, nombre as formulario, campo_nombre, contenido ,timestamp, control as identificador , form_datos.orden
+ $consulta = "SELECT form_datos.id as id_dato, form_datos.form_id AS id_formulario, nombre as formulario, campo_nombre, form_campos.id AS id_campo , contenido ,timestamp, control as identificador , form_datos.orden
FROM `form_datos` , `form_campos` ,form_id
WHERE form_datos.id_campo = `form_campos`.id
AND form_datos.form_id = `form_id`.id
@@ -14,7 +14,7 @@ function json($datos){
ORDER BY form_datos.control ,form_datos.timestamp ";
}
elseif($datos[identificador] !=''){
- $consulta = "SELECT form_datos.id as id_dato, form_datos.form_id AS id_formulario, nombre as formulario, campo_nombre, contenido ,timestamp, control as identificador , form_datos.orden
+ $consulta = "SELECT form_datos.id as id_dato, form_datos.form_id AS id_formulario, nombre as formulario, campo_nombre, form_campos.id AS id_campo ,contenido ,timestamp, control as identificador , form_datos.orden
FROM `form_datos` , `form_campos` ,form_id
WHERE form_datos.id_campo = `form_campos`.id
AND form_datos.form_id = `form_id`.id
@@ -23,7 +23,7 @@ function json($datos){
";
}
elseif($datos[dato] !=''){
- $consulta = "SELECT form_datos.id as id_dato, form_datos.form_id AS id_formulario, nombre as formulario, nombre as formulario, campo_nombre, contenido ,timestamp, control as identificador, form_datos.orden
+ $consulta = "SELECT form_datos.id as id_dato, form_datos.form_id AS id_formulario, nombre as formulario, nombre as formulario, campo_nombre, form_campos.id AS id_campo ,contenido ,timestamp, control as identificador, form_datos.orden
FROM `form_datos` , `form_campos` ,form_id
WHERE form_datos.id_campo = `form_campos`.id
AND form_datos.form_id = `form_id`.id
@@ -312,13 +312,13 @@ function imprime_geojson($id,$id2){
$link=Conectarse();
- $consulta = "SELECT form_id as id, control, GROUP_CONCAT(contenido ORDER by timestamp desc ) as data
- FROM `form_datos`
- WHERE (form_id = '$id_form' $w_id2 )
- AND ( id_campo ='$id_campo' $or_2 )
- group by control
- ORDER BY orden desc";
-
+ $consulta = "SELECT form_id as id, control, GROUP_CONCAT(contenido ORDER by timestamp desc ) as data
+FROM `form_datos`
+WHERE (form_id = '$id_form' $w_id2 )
+AND ( id_campo ='$id_campo' $or_2 )
+group by control
+ORDER BY orden desc";
+//return $consulta;
mysql_query("SET NAMES 'UTF8'");
$sql = mysql_query($consulta,$link) or die("error al ejecutar consulta ");
@@ -421,10 +421,17 @@ while( $row = mysql_fetch_array( $sql ) ) {
$nombre = strtoupper("$row[nombre]");
$contenido_listado = contenido_listado("$row[id]");
+if($row[nombre] =='Agenda') {
+$resultado_nav .= "
+ $nombre
+ $contenido_listado
+ ";
+ }else{
$resultado_nav .= "
$nombre
$contenido_listado
";
+ }
$resultado_nav .=" ";
$resultado .= "$row[id] $categoria $row[nombre] $mapa";
@@ -467,25 +474,26 @@ while( $row = mysql_fetch_array( $sql ) ) {
$titulo = remplacetas('form_datos','id',$identificador,'contenido',"") ;
$nav_li .="$titulo[0] ";
- $contenido .= "
-
+ -webkit-transform: translateY(-$orden"."px);
+ transform: translateY( -$orden"."px );
+ } ";
+ $links .= " ";
+ $contenido .= "
+
$contenido_desplegado
-
+
";
- $orden = $orden +600;
+ $orden = $orden +800;
}
$contenido = "
+
-
-
+ $links
+
";
}
@@ -512,6 +523,65 @@ while( $row = mysql_fetch_array( $sql ) ) {
}
$xajax->registerFunction("contenido_parallax");
+function contenido_timeline($id){
+$div = "contenedor";
+ $respuesta = new xajaxResponse('utf-8');
+
+ $campo_titulo = remplacetas('parametrizacion','campo',$id,'descripcion'," tabla='form_id' and opcion = 'titulo'") ;
+if($campo_titulo[0] !='') {$w_campo = "AND id_campo = '$campo_titulo[0]'";}
+$campo_titulo = $campo_titulo[0];
+$consulta ="SELECT *,GROUP_CONCAT(id ORDER by timestamp desc ) as identificador FROM form_datos WHERE form_id = '$id' $w_campo GROUP BY control order by contenido";
+$link=Conectarse();
+$sql=mysql_query($consulta,$link);
+if (mysql_num_rows($sql)!='0'){
+ $control = mysql_result($sql,0,control);
+ //$contenido = "