From 015955526bfb7e136f673ebec1dca9855df4dd8b Mon Sep 17 00:00:00 2001
From: humano
Date: Fri, 21 Nov 2014 12:33:44 -0500
Subject: [PATCH] Correcion problema generacion json, mejora soporte parallax ,
agregado id_campo al api
---
milfs/css/images/buttons.gif | Bin 0 -> 3064 bytes
milfs/css/images/toolbar.gif | Bin 0 -> 68 bytes
milfs/css/jquery.cleditor.css | 26 +
milfs/css/style.css | 172 ++
milfs/css/styletimeline.css | 157 ++
milfs/css/timeline/biggerdot.png | Bin 0 -> 1016 bytes
milfs/css/timeline/buttons.gif | Bin 0 -> 3064 bytes
milfs/css/timeline/dot.gif | Bin 0 -> 1098 bytes
milfs/css/timeline/grad_bottom.png | Bin 0 -> 986 bytes
milfs/css/timeline/grad_left.png | Bin 0 -> 981 bytes
milfs/css/timeline/grad_right.png | Bin 0 -> 981 bytes
milfs/css/timeline/grad_top.png | Bin 0 -> 989 bytes
milfs/css/timeline/next.png | Bin 0 -> 2944 bytes
milfs/css/timeline/next_v.png | Bin 0 -> 2880 bytes
milfs/css/timeline/prev.png | Bin 0 -> 2935 bytes
milfs/css/timeline/prev_v.png | Bin 0 -> 2892 bytes
milfs/css/timeline/toolbar.gif | Bin 0 -> 68 bytes
milfs/funciones.php | 3648 ++++++++++++++++++++++++++++
milfs/funciones/funciones.php | 151 +-
milfs/js/jquery.cleditor.js | 1190 +++++++++
milfs/js/jquery.cleditor.min.js | 11 +
milfs/js/jquery.timelinr-0.9.54.js | 270 ++
22 files changed, 5589 insertions(+), 36 deletions(-)
create mode 100644 milfs/css/images/buttons.gif
create mode 100644 milfs/css/images/toolbar.gif
create mode 100644 milfs/css/jquery.cleditor.css
create mode 100644 milfs/css/style.css
create mode 100644 milfs/css/styletimeline.css
create mode 100644 milfs/css/timeline/biggerdot.png
create mode 100644 milfs/css/timeline/buttons.gif
create mode 100644 milfs/css/timeline/dot.gif
create mode 100644 milfs/css/timeline/grad_bottom.png
create mode 100644 milfs/css/timeline/grad_left.png
create mode 100644 milfs/css/timeline/grad_right.png
create mode 100644 milfs/css/timeline/grad_top.png
create mode 100644 milfs/css/timeline/next.png
create mode 100644 milfs/css/timeline/next_v.png
create mode 100644 milfs/css/timeline/prev.png
create mode 100644 milfs/css/timeline/prev_v.png
create mode 100644 milfs/css/timeline/toolbar.gif
create mode 100755 milfs/funciones.php
create mode 100644 milfs/js/jquery.cleditor.js
create mode 100644 milfs/js/jquery.cleditor.min.js
create mode 100644 milfs/js/jquery.timelinr-0.9.54.js
diff --git a/milfs/css/images/buttons.gif b/milfs/css/images/buttons.gif
new file mode 100644
index 0000000000000000000000000000000000000000..2e464d0c8c7ac7c8dd29d165e4eff36ea27fdd2d
GIT binary patch
literal 3064
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
literal 0
HcmV?d00001
diff --git a/milfs/css/images/toolbar.gif b/milfs/css/images/toolbar.gif
new file mode 100644
index 0000000000000000000000000000000000000000..e6eb2da554925c9587169b7fc1dade3d37da9c46
GIT binary patch
literal 68
zcmZ?wbhEHbWMq(HSj52a`t|EipFaKn|9|GpnQz~|Wq<+2pDbXe4u}M)Wnkvi*m%cL
L;S}c)4+d)hRvr~C
literal 0
HcmV?d00001
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 0000000000000000000000000000000000000000..66324b66b430b8f644c6c77db4a1e5345e060e4c
GIT binary patch
literal 1016
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
literal 0
HcmV?d00001
diff --git a/milfs/css/timeline/dot.gif b/milfs/css/timeline/dot.gif
new file mode 100644
index 0000000000000000000000000000000000000000..609bda0c5a71e36e8a7344c89a2e18f9b5327c39
GIT binary patch
literal 1098
zcmZ?wbhEHbWMN=oXkcXce`eIIg#cFVINM%8)
zeo$(0erZv1Dp0vH$f^P>=c3falKi5O{QMkPC+XvUCm4#%^aPaEu0JuT@5Uqj4hlkjT}u)91Wb!
zoGf5^UGkGlb5rw5V0u#!dYy3U1to>t0-((Enm@@7}(7{p#h5=g*!#dHm?%gZuaH-no72=8fyuu3ou(>Eea+=gyuved^?i(;JWy=vu(<;#{XS-fcBg8B32&Y3-H=8Wmn
zrcRkWY2t+bzTTehuFj73w$_&BrpAW)y4srRs>+J;veJ^`qQZjwyxg4Ztjvt`wA7U3
zq{M{yxY(HJsK|)$u+Wg;puhlsKVKhjFHaA5H&+*DCr1Z+J6juTD@zM=GgA{|BVd-&
z)78<|($r8_Q&mw`QdE$ala-N{l9Uh^6BQ8_5)|O)w9!tA{#Zbg?C8T3=pH*xPd^)HJhk{OuP5|6y+FZnsur*QZpXO
z7Irx^#&D7AQ#Qlo)+67v+K7M#YC4|6{`&Np1&*z-Ptyi8d=0gn;$DEZ_R3XjuWd;-
zyM74H$MH{!X9J}&mEkGv0K^5cOQ582^nBcI5eV}cn
zfni#X7uy58VaO#fB&KJflCH2+fpZ*NRx@I%py~O%wx$Zg29)xtHBA!L^r{NAOnz;|
z)v?uakw->c`--bg;=bk1xD9&$f%SRHqAMiMCLPxq?F)7#JQ}#ui3S`~DX^!*R!Xw^pZh^Nwm0
zPe2Jqh`oTZIc{b)4v@WqDQMtj*Vp*ncOQ7*IvRg3YeF+9;-)*_3GqUwQnNcNcHZG<
zZ-SXvWda_i2*lp1AE~j%cXd^EPOe2BbRl#_;}3(Xn^jOGAqH6irfislASVe@I-@Ac
z4Io1aicl6MIVCA-T2>(hy^m+!LT5>}^m5M^voyX*X`qT?tJM-(X@P{xqLk0)6Af8T
zF+?hA`xM0~Kbq<*=s2=NH=r)@L86EnWQ}S(i}WxBFBr)BQLjv_U}B5{Q4(O1QXgoV
z|A%_s03A^aAI1Am;i%RQuxR0ktc5mf+|pFyDo~3dMwEm#LRR}#tTqWHQIiCqxR3=V
zvRyy1yLi)74L_pDx3QsXJW~){*HPuNp2;eTG^doIB$Z%6%H;FK^mJ}o&Ss{e)aUBN
zUh}X|`&{RUD-Y!+qu>S1vyMae0d~qE@jy3a)g2m3t~^w)$90Cs0*7)%7L1rQ_OC|w
zuh{e?$HCY#V=(yGXVV_Cv3~jL(F`t>-AK(5xK6d%)
z!Q;*6+ve89pL^5^S2r@3S2IB#$9hdOAHhHz^3hw6kH?
z`RwzNyM2rQ(+6+w^64R4Z?bLDW<5l)uy3@ZvLG5`+mcXf#>V-84NC
zN+`ofX&7_1AS|tFUQg<25}_SgF$^QqP}Mv~
zsQxwaJ1hbTeK-c|0
zGz>@Rgw^qt-?73;;~>Uz9VcX;di>(ri&?1HtWb;?p$$UzhE=R}2_s3D#GtZW1TOM|
zDBJh(u4_6`!cgR4$F@YSAO(TXt7#azYM0jZs-h_Ca8)T7Mnx-^%4)GthRTp@6K_An
z5gT&-E3SSmH*1A3=8K#>WxwcFNmYb3WeWPr`BR)kgZg_50#tWkRj(?6h@nWI_b-H+o_bbsm*oLe}%r%s;VI2I;^uk*Rk
SrtY`wp*ibY_WQNxCw~Ep2P{qi
literal 0
HcmV?d00001
diff --git a/milfs/css/timeline/grad_top.png b/milfs/css/timeline/grad_top.png
new file mode 100644
index 0000000000000000000000000000000000000000..4e0a5da6806cd373a15e9dbfb2dc6310585a9e25
GIT binary patch
literal 989
zcmaJ=&ui0A9M4#lF&L;Yor3Vl23~CPlCJF<8b_O?u3*N@3ijC7~uOpCnJ!sB}#=t
zA<>ZKG()7LEuW$|?MJf%1sz9r=myj!K1dW%lWbCzXOW(y-~~fjKkAo>6-;Xm>IQ#h(^1z5CjL^ea4HEwM-aTO?9h!G`WjgXB&6<6AXlBi7r
zpsi+siEP(T>>l1Um8u_6T-Q-bIXP3&^h#M^%6j
zD;)09>3hZ(ar)KK<(c&O++nNnesAaTS^uE1^Lgyt%-%Eeq1@h19X|Q~;Q09X%1h<#
a8Eyh{2Ok?>_wRS3OStVHj03c^$
zjdhT$3X+$(Zms0&Bvj={7DYDBnSGeC
ze~NO(6F`=9CIy6q!1TOfC>RI@hrsm>3=Iu+K?oQe28AJ@aD*P*5TlR4z+j*s4_K0o
zN%p}wV6A@Sl0>FpKQ^0zfkHVP4uqo*p)-AGZT_pI?*>sj4odL2u
zj0E9H-qfI#_&Xkt$Jhk1*rXtDiVfBjEKz_^sbtJPIL-*M4*}a}h_iyjaWD(G0UB+o
zZ-g>JAPtOQ@Sj{P-8+Ov31a``lK;bn|CYOA1sX$=8B1YOk5kB2Ogatp{mK~XZ)<_$
zeyjI`Oa5&waI4>Pp^{>tD}(*7LH|6GxMyYi%eIo>m+>h<61OuYw%&3roB{wyPupNE
zh}_Orm-PfSs14HyaLUH1l*aIfN5Wq#RoZ
zbqtyZXvViZMJz(m5)9RuRDypHXmtBQ;<4S6O5DX~`dX_)We((zoh)rcMFcb+R6aIW
zkE8#U?p&qXvZl4Wq!pBhIjs*oaB+KAME9r85#@DQ-9w_h9kY
zqG&_l#;ky4kF09xlSWOhN9(Z0(oKV}wlBsk?YOkOYeJA*&BYqvwBnQPvOE-K^OO^L
z{VGs06l`^a1u%!))
zmKX4!Dtc1~{M*jtJDG2&-zzTHin7*rY0wE2UV5}{-Id$^s}-|4oBk*mn%_oxzTY$M
zDtkoUxF@gqbnkZNnHnyk7zI+ln(h_tc51d+&eg=-BpD$$8I$XOs;uK#kap_ESYT56
zV4Y{{tiiXj<}0*0!m*HxFK%cR0`ChzyC$c>&MDtaW@z0TRzRIqN;bcjX9@y
z6I-&r*PNpg0Y+^u+?1HGYe+UU@7~{Tvb*o^JL)H16j5lq&qAoH1zN7o0uAi
z`sh^{QY9!$PJY#vq>w3y7QY_pItI;3yY>=c?xh9HNvv=2d$>ifA)iQ7O#+tqr)q95
z)OZ62I+|U1u?o@^t_VNq7N%yM3;Z^>r3ZP_xHale!I4vtNn~!C?~Shj|LmnXUR0?`r~>
z;{xod7eu1;Q&-upiTC0A7~^ip=s}UW{eYDH(<$o%dObI&q{cD^zS$#Y*SOog0$kEk
zI(He84b*OwB@@GY`8H`;^uyN((}WBKL*MmchAHa&6MsWhb+hxu3pIDYBrfV#9(trw
z_8`q?QNvbPCU4U6_TJ5Yre4XiwQ+!@`(70yQB%KUiWf~2RdA9W5V3Uz)jU_sQI@V-
zD!W*$89$)y_TU3o`<#xPnzpxj50W}xCw(P3=fvD!_Yr3U2Rh{4U?$vG;rF%?K+?RdZ?^dJ`950K)>Ui?}JE1v@1$=FQY~s5}{Qd^UXpP^7
z)C9X{cTygAeWrfRP7a!;F9@&NwwlLPj@rGjyrVUDRQ)r!UIjfP$9z+e@;N~xywEWb_6mWAIogSZPX{`EJd?(;)qf5;(!41NV%j<@@!!pR3QtvV_
zvf8ivw#>3nz%!|OlVMhgd2%N;3Ux~~N3FfDI7EM#>^m7O+OR2mmB~c&>2aB7!5WLT
zlYE=P`TFvB6(93msaIf#?89zpNy@&fj3TXaw$
zrgGHJk|taC&VIa_)NxiL^OITJqx1m2N1#<96#XKhG~t7ArsG6A`QnuOV&Ra#$%piS
zEn50cc3APFNRP8zL?4=c*2-nn7A?(ww=*w*B$9Q=3(LqsWJWBt&Z!yie!3>-1kR}amZX*he|*{Y
m83Q|$A^x_kGjw@bqYeObJ(~aMtA)|ZKd}wY4$I%?8S!s3jVqY|
literal 0
HcmV?d00001
diff --git a/milfs/css/timeline/next_v.png b/milfs/css/timeline/next_v.png
new file mode 100644
index 0000000000000000000000000000000000000000..05e84ff2f55f54354959f2062ed29dc2bce4e510
GIT binary patch
literal 2880
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
vtyKq3nzuHVYwUkG#!^Y_w3fS~?U5C}w-
z>`L;IjZoPuQc{$CeL4(7WrH^8Ob4lg17Ija1VFa31xx@&<}v&MFMz?81~mb85QqYt
zL!*OqiW{CK;2{~y7^H+Jl(8WYI|qr7!QuiSj0yO2_yqXG-6}YY!zRFetSD%T&Wu&?qz(g~1{)IQ(WT9*u^5d*HHYBK85i
z7s=&YEZK?x4*)?S9)$`G4Mm1-MhZm!D2$Db&9Vj-i;y7@VksYFNDzFn(RT$BAZCd;
zLXaci!jl~odE(+APx`+VNO&l7=^*&
z@R!$L@e~T4%ol?UJ_{g|2ymGKlEY!+i5TZCSR&Svh;w$qV4TrgF_tzqPMfz_Z^2qw
zZb4(db4dbLFc08^-??lV7wbZ@w8B|$CE{Gr|Hxgo0#7K5Oaerl5P67XPOOU85l
zJs0f1=khm~{SUc(t7G%Oa#6BmP|FAVKL`DNOXi;C=?~k=7C(#+@MUfn$!twM8lwq;
ztQsSew$daop6piMN$b&GnroV-KaE`pJ(@bX2D(Snd&Rmt@^TS7iI=W<$0wG%Yix+e
z8=Z_Nn>5#rJmXvlIB#sxbs#_4yWaZg<>Iryu}R!~=hq}q$Eq&I%ZW*nnkn6#Z>vyJ
z<~lC58kcYW(ih$aRE58@c{RWE<*wHA%(Gab^~j+(u3zfLp7yEh_d|Y3*Ofcgj@%uF
zHa~h2)jo9wjP^#}%$f!3w;K=gBZ=Cu=ix7c=3IYyx&Pd+n>9N#{7sEILgYo|qx?&?
z9nODfi@c9qpBpjAW+t~RqInz>^(_|H*Dm4PN+E>Ak98<1Yg4lRG0rr(*c!NWHQL2)
z&HA7B?(jJX*k_+}7*C@bdqxm%oyZB#B|t;9AUN~$(M9p4uhf?wxHfFDv{usg>PU$z
zv2e>3FS>^1=%p2KaYZgQzrJUdj#s@IAvsZiZf@_9Z9V)Wuha)?C!Y|rb@ym$=py9Z
z((mlrz2r6^B%~!p6<9o=8VG4G>cgi}a1Gd9s!Z&tu+qjK=0R3IxT|_a`wlxqjJ-<^
zwFQ!SGJV~E)X40KCeCbWTgRB9mffNEhqX>Z)Kbz2hK3~p+O#E?V(SfKA8T)GeG&cS
zPrv$7Iyo<0FX$b{oZ=xGuRJ|7tlrptRGV$K@$`(A3M0-s;@E6sQjHBEjTLy%lpRgi
z3S7|ugv>-n*MwB3bc_!aWORy#4L_5|2pR#6U}GP>p3(`(S`*jVzoOubUPa8L_5I~DPyx^rRRd3re$
zXMS!++>U~!Pn+g$?4<|aE@aHYjf;j|eLp)+%=+QvfZnIKpCp=et8cv+u=Pq$sQri_dlp59n+zXA9>C2Q76
zcyp&(Y(>^F%Srq9)fypNOW{=25Vp9vr_XQD_D4
zCGmwBEv(wU^?_KE+@Y>f+VilAiVS3?M_#`}vzStN&=!8WKL;p!6H2Kh1n|v^t+IFH7i;3RMlD9rzMXX
ztN0+ju_B_rQ4qyQF7rwn>u`=*!%R;*>2i2s;)M*A+_G~jQ)zoJz0WJl1h~Bc>61w&
zn{v24+p_Yg-O?2q!#Tfk9cfqIOr^oicV)J=Nb6B&D<^4&l4ga&0TcqWvvOKy-R-TO
zn_fuu{M9IpK3^(ZsD9=7^7Iy$@r=5p)qRQ!diAgR3eOK_3`{o;4AQ9}6!1mdzyCy1
ze9QJ)`Om$(ycr{sP4SdcO{0fv)bg?%;8d>zrXxMa2NG6pYAbFtUM*ei^5*wdxe2Xq
zJ#62g`qbO2_~y<;u3%Cnw~JG+_1<)+PhJCMcivQ2KI;^pPne$V@3lgF3fe=B
zq>DB8Y9{W>71N5$P28fp$#~_j|}@2k2z65-q)T2tZnNTHm_<%kZBC
ztq9egNmF;{8`#E1cJ?_)6p7}zi486AziF}C31UKx~`6f(fIa0={q!m{8^}6r`4U`fGB77eesww
zczNxFFV6yQNq1<8(EuXdU%d=kJZI!rP4t-ch2At@^EAq`t4m1*b6i{^7nEm+$gj%e
z+t*pFR^C1ydnj8$y5xG6aK?u>R5Uu7oikRC9*nC=P%{ulJnl7nDN636Iy4URc+pL}
zXYL3o=3vC*Gj`CZVy9>15AtEB`8UrfpLa|K`!S9>DOfOhU*jzkl&zk!e)Q}y$L=Tl
zYUJHpZ##$avNAR_UFuDUo`5>5OXK9ONk1rLdIvVU($#hg>!{Ms4N^j(CuxRQEt2FKY@FF)5n4MIwq%p&-&+vWKzD!sxG;O4twr0_GC%zazN~0;1
zt~*os?C_NTcm~LC8o#>nuoI3uEPu6IbpBlkY>*$V_a4lwzw)x!B1Lt@I^7Gt3Yun2
zx!z<2UjK_DK*!+ZmDZIvB8p}fwrR#B+z1=Ii=2rpa9A3i*DZaS&^0H%HycaPznP}L
f@L*3@sJse9`81(<+xkf4@~<%2*_~8G+#mH9s?Gsm
literal 0
HcmV?d00001
diff --git a/milfs/css/timeline/prev_v.png b/milfs/css/timeline/prev_v.png
new file mode 100644
index 0000000000000000000000000000000000000000..95b6ff848773eca8a21af9529129044d693e41fa
GIT binary patch
literal 2892
zcmbVOdo+}J9~Xs4DA$B(l1!VKXNEDCObs(GGaC0IVRxDt4Cc~Ym~l&E>EgPUQVKCh
zyM^3&Q5GeOrP@s;cgm#@(pL5zwf24g*t73B?{m)c{C?lx@B8_D@8>+{T%8@%RCcJy
z$;qja9Et9-)l~M{Dl5vq2fU>tvPEBD=PmHy1PH>ZJcgVNopXW#BC)7}40i^VEk4^4o6u6CDuu$BPQ-Uf*VYzb%r
z9Bv0-Y%S0P48jI!X#)_fY|-mj5}PlevT2NUyG)tgFIbfQKVq>29)l|2@H{!3(De>*
z4dMtm{2&e&MDRd@C{!Agy(X`f=S#Fi29FuWpxg5}EYRotVwrzq|9{8*1xx>bat4z*
z16ym3|7w=?BUuNoZU1V0nef-}Fxaw*;mJk=`JQl1PEIL`M6~e~J$-&j?7BT%>z*+Q
ztssfranr#wZNr&MI)+uEA-Iap4_ke%uDVri&p0~m9r)PB7OT8)xJ7B2rNYu||KKK_AaL^invX>E&Vs9k^mXqbO3!a`2gYJ$n0bf6Frd
z&dWp~Hqh6@>V?4STuUVJ+r3vah%LI3~ZHer~XaXgB7|8yzzu8{8}R=N@bj@xHakbee#jM1|Jd##cc|)ZM<9yVIO)%
zjL%nH_w#()=0M_Z07dSl#8s>Y|V2
zj0<<@eB5AvfuOv%DPE^v%OY3x(vre*LU_-ERD3CXFx~)vIjb~k
z+N#+vOmiGh^MF8H9M2()l4o0tF;R%+32bh9ef0GP@yf~&FYhgc87dVM{a1Hfgk5nV
zc{Dr6mj#Xbcs!n-E=BGw5AQGONUgZEf8~N(##px@=y~&1sY#)Q87c5)&Q!ih-Qy{n
z;vDsw?@jUT-P^7azmFTPSuT)nulZ_tWhBhTqXpt09p%{ys_V6B|FszduOTXk3;x9cN
zV+nc1YO}ikiGg*jFfi6h>>*tq-gXSsTO^&1{0Z(-Xj?M8OQ^eQoZ*>MqgSeenkGNE
z8LX|fU?!v=2NpPOWg{#}H(h!oBEFsq|-D4(`I8CG{lzb5_(deQl6?A7#k=cL>IndqzO+xm!-
zxfhqa;?z*{Zz3D4TW1%{UtN51x21BLQu}mh3mM#C_{NSj^=r>iYq~gHGJ{e#7V7KBn6@Y~5npnw
zJk<%Dtbixvx0l`bQW%R=J)V(KUFYC=F*8jUyg4XpLp6njIa8;i+S;~3o;gQFXV8zA
z{&b&}1nDRqoGR`LSkk~2H-E}O6icsH9k~`09kx$8Z*9G)Q+?pvX!fi_(+S5skLrg7
z((@AI;U_Iw#YZSayRYb$A>SCVBOJ2R(`Ko|za!2VEobzd$0x}{C+qgKh(
zEqB!t`mPT)W~71NF*}c2dM&(UH$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 = "