popover-exit.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306
  1. // localStorage.clear();
  2. // Cookies.remove('modalBoletin');
  3. setTimeout(function() {
  4. let localBoletin = localStorage.getItem("modalEmail");
  5. let cookieBoletin = Cookies.get('cookieBoletin');
  6. if (!localBoletin && !cookieBoletin) {
  7. $j('#ouibounce-modal').show();
  8. }
  9. }, 300000);
  10. $j(document).ready(function() {
  11. $j(".caso_practico").click(function(event) {
  12. event.preventDefault(); //evitar redireccionar al documento
  13. var href = $j(this).attr('href');
  14. // c, almacena el numero de formulario en el que vamos
  15. var c = Cookies.get('c');
  16. if (c == null) {
  17. //Primer modal
  18. $j("#popover-datos2").hide();
  19. $j("#popover-datos3").hide();
  20. $j("#popover-datos4").hide();
  21. $j("#popover-datos5").hide();
  22. localStorage.setItem("href", href);
  23. //mostramos el modal para obtener la información del usuario y poder descargar cualquier archivo
  24. $j('#myModal2').css({
  25. display: 'block'
  26. });
  27. //Si preciona el boton enviar datos
  28. $j('#enviar_form').click(function(event) {
  29. var nombre = $j('#nombre').val();
  30. var apellido = $j('#apellido').val();
  31. var email = $j('#email').val();
  32. Cookies.set('email', email, { expires: 3 });
  33. var acceptc = $j('#accept_conditions').prop('checked');
  34. if (nombre != "" && apellido != "" && email != "" && acceptc == true) {
  35. var modal = "modalPreguntas";
  36. //enviar los datos por ajax
  37. $j.ajax({
  38. type: 'POST',
  39. url: 'shared/procesar_formularios.php',
  40. data: { 'nombre': nombre, 'apellido': apellido, 'email': email, 'modalPreguntas': modal },
  41. beforeSend: function() {
  42. $j('#contenido_modal').html("<center><p><img src='media/img/loader.gif'/></p></center>")
  43. },
  44. success: function(data) {
  45. var arrResponse = JSON.parse(data);
  46. $j('#contenido_modal').html(arrResponse.msj);
  47. if (arrResponse.error) {
  48. if (arrResponse.data !== '' && arrResponse.data !== null && typeof arrResponse.data === 'number') {
  49. Cookies.set('c', arrResponse.data); //cookie que caduca a los 3 días
  50. }else{
  51. Cookies.set('c', 1); //cookie que caduca a los 3 días
  52. }
  53. setInterval('no_redireccionar()', 3000);
  54. }else{
  55. //capturamos el error de vuelta
  56. var r = $j("#error")[0];
  57. if (r == null) {
  58. var r = "";
  59. }
  60. if(r == ""){
  61. Cookies.set('c', 1); //cookie que caduca a los 3 días
  62. setInterval('redireccionar()', 3000);
  63. }else if(r.classList.contains("descargar")){
  64. Cookies.set('c', 1); //cookie que caduca a los 3 días
  65. setInterval('redireccionar()', 3000);
  66. }else{
  67. setInterval('no_redireccionar()', 3000);
  68. }
  69. }
  70. }
  71. });
  72. } //fin if validatos
  73. else {
  74. //evita que el formulario se envie y muetras las validaciones
  75. event.stopPropagation();
  76. }
  77. }) //fin enviar_datos form
  78. //termina el primer modal
  79. } else if (c == 1) {
  80. //segundo modal
  81. $j("#popover-datos1").hide();
  82. $j("#popover-datos3").hide();
  83. $j("#popover-datos4").hide();
  84. $j("#popover-datos5").hide();
  85. //mostramos el modal para obtener la información del usuario y poder descargar cualquier archivo
  86. $j('#myModal2').css({
  87. display: 'block'
  88. });
  89. $j('#enviar_form2').click(function(event) {
  90. localStorage.setItem("href", href);
  91. var email = $j('#email2').val();
  92. var pr1 = $j('#pr1').val();
  93. if (pr1 != "" && email != "") {
  94. // console.log("Datos capturados "+email);
  95. pro_pregunta(pr1, 1, email);
  96. } else {
  97. //evita que el formulario se envie y muetras las validaciones
  98. event.stopPropagation();
  99. }
  100. });
  101. } //fin if c == 1
  102. else if (c == 2) {
  103. //tercer Modal
  104. $j("#popover-datos1").hide();
  105. $j("#popover-datos2").hide();
  106. $j("#popover-datos4").hide();
  107. $j("#popover-datos5").hide();
  108. //mostramos el modal para obtener la información del usuario y poder descargar cualquier archivo
  109. $j('#myModal2').css({
  110. display: 'block'
  111. });
  112. //al precionar submit3
  113. $j('#enviar_form3').click(function(event) {
  114. localStorage.setItem("href", href);
  115. var email = $j('#email3').val();
  116. var pr2 = $j('#pr2').val();
  117. if (pr2 != "" && email != "") {
  118. // console.log("Datos capturados "+email);
  119. pro_pregunta(pr2, 2, email);
  120. } else {
  121. //evita que el formulario se envie y muetras las validaciones
  122. event.stopPropagation();
  123. }
  124. });
  125. } else if (c == 3) {
  126. //Cuarto Modal
  127. $j("#popover-datos1").hide();
  128. $j("#popover-datos2").hide();
  129. $j("#popover-datos3").hide();
  130. $j("#popover-datos5").hide();
  131. //mostramos el modal para obtener la información del usuario y poder descargar cualquier archivo
  132. $j('#myModal2').css({
  133. display: 'block'
  134. });
  135. //al precionar submit4
  136. $j('#enviar_form4').click(function(event) {
  137. localStorage.setItem("href", href);
  138. var email = $j('#email4').val();
  139. var pr3 = $j('#pr3').val();
  140. if (pr3 != "" && email != "") {
  141. pro_pregunta(pr3, 3, email);
  142. } else {
  143. //evita que el formulario se envie y muetras las validaciones
  144. event.stopPropagation();
  145. }
  146. });
  147. } else if (c == 4) {
  148. //quinto modal
  149. $j("#popover-datos1").hide();
  150. $j("#popover-datos2").hide();
  151. $j("#popover-datos3").hide();
  152. $j("#popover-datos4").hide();
  153. //mostramos el modal para obtener la información del usuario y poder descargar cualquier archivo
  154. $j('#myModal2').css({
  155. display: 'block'
  156. });
  157. //al precionar submit5
  158. $j('#enviar_form5').click(function(event) {
  159. localStorage.setItem("href", href);
  160. var email = $j('#email5').val();
  161. var pr4 = $j('#pr4').val();
  162. if (pr4 != "" && email != "") {
  163. pro_pregunta(pr4, 4, email);
  164. } else {
  165. //evita que el formulario se envie y muetras las validaciones
  166. event.stopPropagation();
  167. }
  168. });
  169. } else {
  170. window.location.href = href;
  171. }
  172. });
  173. // cuando los usuarios hagan clic <span> (x), cerrar modal
  174. $j(".close").click(function(event) {
  175. /* Act on the event */
  176. $j('#myModal2').css({
  177. display: 'none'
  178. });
  179. });
  180. //Reiniciar si se mueve el mouse o presiona alguna tecla
  181. // $j(this).mousemove(function(e) {
  182. // // console.log(idleTime);
  183. // idleTime = 0;
  184. // });
  185. // $j(this).keypress(function(e) {
  186. // // console.log(idleTime);
  187. // idleTime = 0;
  188. // });
  189. // cuando los usuarios hagan clic <span> (x), cerrar modal
  190. $j('#exit_modal').click(function(event) {
  191. $j('#ouibounce-modal').fadeOut('fast');
  192. });
  193. //Si presionamos si, deseo suscribirme en el modal principal
  194. $j("#emailRequerido").hide();
  195. $j("#emailValido").hide();
  196. $j("#enviarModal1").click(function(event) {
  197. var modal = 'modalPrincipal';
  198. event.preventDefault();
  199. var email = $j("#emailModal1").val();
  200. if (email.length != 0) {
  201. if (validateEmail(email)) {
  202. localStorage.setItem('modalEmail', email);
  203. Cookies.set('cookieBoletin', email, { expires: 365 });
  204. enviarEmail(email, modal);
  205. } else {
  206. $j("#emailRequerido").hide();
  207. $j("#emailValido").show();
  208. }
  209. } else {
  210. $j("#emailRequerido").show();
  211. $j("#emailValido").hide();
  212. }
  213. });
  214. }); //exit document ready function
  215. function enviarEmail(email, modal) {
  216. $j.ajax({
  217. type: 'POST',
  218. url: 'shared/procesar_formularios.php',
  219. data: { 'email': email, 'modal': modal },
  220. beforeSend: function() {
  221. $j('#load').html("<center><p><img src='media/img/loader.gif'/></p> <p>Cargando...</p> </center>")
  222. },
  223. success: function(data) {
  224. $j('#load').html(data);
  225. $j('#footer-modal').hide();
  226. }
  227. })
  228. }
  229. function pro_pregunta(pregunta, nm, email) {
  230. var pr = "pregunta" + nm;
  231. $j.ajax({
  232. type: 'POST',
  233. url: 'shared/procesar_formularios.php',
  234. data: { 'pr': pr, 'email': email, 'pregunta': pregunta },
  235. beforeSend: function() {
  236. $j('#contenido_modal').html("<center><p><img src='media/img/loader.gif'/></p></center>")
  237. },
  238. success: function(data) {
  239. $j('#contenido_modal').html(data);
  240. //capturamos el error de vuelta
  241. var r = $j("#error")[0];
  242. var r2 = $j("#error-r")[0];
  243. if (r == null && r2 == null) {
  244. var r = "";
  245. var r2 = "";
  246. }
  247. //error -r reinciiar cookie a cero y recargar
  248. if (r2.id == "error-r") {
  249. Cookies.remove('c');
  250. setInterval('no_redireccionar()', 2000);
  251. return false;
  252. }
  253. if (r.id != "error") {
  254. Cookies.set('c', nm + 1, { expires: 3 }); //cookie que caduca a los 3 días
  255. setInterval('redireccionar()', 2000);
  256. }
  257. }
  258. });
  259. }
  260. function redireccionar() {
  261. var href = localStorage.getItem("href");
  262. window.open(href, '_blank');
  263. localStorage.clear(href);
  264. location.reload();
  265. }
  266. function no_redireccionar() {
  267. location.reload();
  268. }
  269. function validateEmail(email) {
  270. var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  271. return re.test(String(email).toLowerCase());
  272. }