formulario.html 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. <!doctype html>
  2. <head>
  3. <meta charset="utf-8">
  4. <!-- <link type="text/css" rel="Stylesheet" href="css/menu.css" /> -->
  5. <link type="text/css" rel="Stylesheet" href="css/spinner.css" />
  6. <link type="text/css" rel="Stylesheet" href="css/normalize.css" />
  7. <link type="text/css" rel="Stylesheet" href="css/skeleton.css" />
  8. <link type="text/css" rel="Stylesheet" href="css/formulario.css" />
  9. <link type="text/css" rel="Stylesheet" href="css/themes/bigbox.css" />
  10. <script src="js/rivets.bundled.min.js"></script>
  11. <script src="js/humane.min.js"></script>
  12. </head>
  13. <body>
  14. <div class="row nav-bar">
  15. <div class="nine columns">
  16. <a class="button" href="#">Volver</a>
  17. </div>
  18. <div class="three columns">
  19. <img src="Images/logo-horizontal.png" class="logo">
  20. </div>
  21. </div>
  22. <div class="section promocion">
  23. <div class="container max-top-space">
  24. <div class="row">
  25. <div class="eight columns xl-top-space">
  26. <h1>Actualizá tus datos</h1>
  27. <p>Estarás participando por un sorteo para ganar un set de productos de ESPECIFICOS Buenos Aires</p>
  28. </div>
  29. <div class="four columns">
  30. <img src="Images/productos/productos.png" class="productos">
  31. </div>
  32. </div>
  33. </div>
  34. </div>
  35. <div class="section">
  36. <div class="container">
  37. <div id="spinner" class="loading">Loading&#8230;</div>
  38. <form>
  39. <div class="row">
  40. <h4>Datos personales</h4>
  41. </div>
  42. <div class="row">
  43. <div class="four columns">
  44. <label for="exampleEmailInput">Nombre</label>
  45. <input id="nombre" class="u-full-width" type="text" rv-value='user.nombre'>
  46. </div>
  47. <div class="four columns">
  48. <label for="exampleEmailInput">Apellido</label>
  49. <input id="ap" class="u-full-width" type="text" rv-value='user.apellido'>
  50. </div>
  51. </div>
  52. <div class="row">
  53. <div class="four columns">
  54. <label for="exampleEmailInput">País</label>
  55. <input class="u-full-width" type="text" rv-value='user.pais'>
  56. </div>
  57. <div class="four columns">
  58. <label for="exampleEmailInput">Provincia/Estado</label>
  59. <input class="u-full-width" type="text" rv-value='user.provincia'>
  60. </div>
  61. <div class="four columns">
  62. <label for="exampleEmailInput">Ciudad</label>
  63. <input class="u-full-width" type="text" rv-value='user.zona'>
  64. </div>
  65. </div>
  66. <div class="row">
  67. <div class=" column">
  68. <label>Cumpleaños <span class="mandatory">*</span></label>
  69. <div class="row">
  70. <input class="two columns" type="number" min="1" max="31" placeholder="Dia (DD)" rv-value='user.dia'>
  71. <input class="two columns" type="number" min="1" max="12" placeholder="Mes (MM)" rv-value='user.mes'>
  72. </div>
  73. <div class="help"> <span class="mandatory">*</span> Durante el mes de tu cumpleaños, recibirás importantes descuentos y beneficios</div>
  74. </div>
  75. </div>
  76. <hr>
  77. <div class="row">
  78. <h4>Contacto</h4>
  79. </div>
  80. <div class="row">
  81. <div class="six columns">
  82. <label for="exampleEmailInput">Email</label>
  83. <input class="u-full-width" placeholder="email@ejemplo.com" type="email" rv-value='user.email'>
  84. </div>
  85. <div class="six columns">
  86. <label for="exampleEmailInput">Teléfono</label>
  87. <div class="row">
  88. <input class="four columns" type="number" placeholder="Cod. Area (ej: 011)" rv-value='user.prefijo'>
  89. <input class="eight columns" type="number" rv-value='user.telefono'>
  90. </div>
  91. </div>
  92. </div>
  93. <hr>
  94. <div class="row">
  95. <label class="example-send-yourself-copy">
  96. <input type="checkbox" rv-checked='user.infocursos'>
  97. <span class="label-body">Quiero recibir información sobre los cursos presenciales y a distancia</span>
  98. </label>
  99. <div class="u-pull-right">
  100. <input class="button-primary" value="Enviar" type="button" id="button">
  101. </div>
  102. </div>
  103. <hr>
  104. </form>
  105. <div class="disclaimer">
  106. <p>En cumplimiento de la Ley 25.326 (Protección de Datos Personales) - Art 27. inc 3 y del Decreto 1558/2001 (cuyas partes pertinentes se transcriben a continuación)le informamos que si deseara no recibir más información publicitaria, tiene el derecho de solicitar el retiro o bloqueo total o parcial de su nombre en nuestras bases de datos seleccionando la opción que se encuentra al final de este anuncio. Ley 25.326 (Protección de Datos Personales), Artículo 27, inciso 3: El titular podrá en cualquier momento solicitar el retiro o bloqueo de su nombre de los bancos de datos a los que se refiere el presente artículo. Decreto 1558/2001, Anexo I, artículo 27, párrafo tercero: En toda comunicación con fines de publicidad que se realice por correo, teléfono, correo electrónico, Internet u otro medio a distancia a conocer, se deberá indicar, en forma expresa y destacada, la posibilidad del titular del dato de solicitar el retiro o bloqueo, total o parcial, de su nombre de la base de datos. A pedido del interesado, se deberá informar el nombre del responsable o usuario del banco de datos que proveyó la información.</p>
  107. </div>
  108. <div class="u-pull-right">
  109. <a class="button" href="#">No quiero recibir más información sobre ESPECIFICOS Buenos Aires</a>
  110. </div>
  111. </div>
  112. </div>
  113. <script>
  114. var urlparams=window.location.search.replace("?", "").split("&");
  115. var params={};
  116. var xhttp = new XMLHttpRequest();
  117. urlparams.forEach(function(elem,ind,arr) {
  118. var k = elem.split("=")[0];
  119. var v = elem.split("=")[1];
  120. params[k]=v;
  121. });
  122. window.addEventListener('load', function() {
  123. var elems = document.querySelectorAll('input'), i;
  124. var spinner = document.getElementById("spinner");
  125. var bigbox = humane.create({baseCls: 'humane-bigbox', timeout: 1000})
  126. document.getElementById("button").onclick = send;
  127. bigbox.error = bigbox.spawn({addnCls: 'humane-bigbox-error'})
  128. function updateModel(){
  129. for (i = 0; i < elems.length; ++i)
  130. rivets.bind(elems[i], {user: user});
  131. }
  132. function send() {
  133. spinner.style.display="block";
  134. xhttp.onreadystatechange = function() {
  135. if (xhttp.readyState == 4) {
  136. var data =JSON.parse(xhttp.responseText);
  137. spinner.style.display="none";
  138. switch (xhttp.status) {
  139. case 200:
  140. bigbox.log(data.mensaje, { timeout: 5000, clickToClose: true });
  141. break;
  142. case 401:
  143. bigbox.error(data.mensaje, { timeout: 5000, clickToClose: true });
  144. break;
  145. }
  146. }
  147. };
  148. xhttp.open("POST", "back/update.php", true);
  149. // xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  150. xhttp.send(JSON.stringify(user));
  151. };
  152. function get() {
  153. xhttp.onreadystatechange = function() {
  154. if (xhttp.readyState == 4) {
  155. var data =JSON.parse(xhttp.responseText);
  156. spinner.style.display="none";
  157. switch (xhttp.status) {
  158. case 200:
  159. user = data;
  160. user.hash=params["hash"];
  161. updateModel();
  162. break;
  163. case 401:
  164. bigbox.error(data.mensaje, { timeout: 5000, clickToClose: true });
  165. break;
  166. }
  167. }
  168. };
  169. xhttp.open("GET", "back/update.php?mail="+params["email"]+"&hash="+params["hash"], true);
  170. xhttp.send();
  171. }
  172. get();
  173. }, false);
  174. </script>
  175. </body>