Advertisement
Guest User

Untitled

a guest
Jan 3rd, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.07 KB | None | 0 0
  1. var key_strokes= []; //tiempo de presion y realce
  2. var key_strokes_Unique= []; //tiempo de presion y realce
  3. var key_strokes_Deslice= []; //tiempo de presion y realce
  4. var nombreAux = "";
  5. var apellidoAux ="";
  6. var key_strokes_G= []; //tiempo de presion y realce
  7. var key_strokes_Unique_G= []; //tiempo de presion y realce
  8. var key_strokes_Deslice_g= []; //tiempo de presion y realce
  9. var id;
  10. var time;
  11. var keyName;
  12. var dato_G=[];
  13. var iteracion=0;
  14. var res=[];
  15.  
  16.  
  17. window.addEventListener('load', function(){
  18. var texto = document.getElementById('captureInput'),
  19. resultado = document.getElementById('resultado'),
  20. teclas = {}; //acá guardamos tiempo de inicio y fin de cada tecla
  21.  
  22. texto.addEventListener('keydown', function(keyboardEvent) {
  23. const timestamp = performance.now(),
  24. keyName = keyboardEvent.key,
  25. keyCode = keyboardEvent.code;
  26.  
  27. if (!teclas[keyCode]) { //Sólo si no se está manteniendo presionado
  28. teclas[keyCode] = {
  29. down: timestamp,
  30. key: keyName
  31. };
  32.  
  33. //Mostrar el tiempo intertecla
  34. if (teclas['Ultima-Tecla'] && keyName) {
  35. const intertecla = timestamp - teclas['Ultima-Tecla'].up,
  36. mensaje = 'Entre: (' + teclas['Ultima-Tecla'].key
  37. + ',' + keyName + ')'
  38. + 'tDemora: ' + intertecla.toPrecision(5) + ' ms';
  39. mostrarMensaje(mensaje);
  40. if(teclas['Ultima-Tecla'].key==keyName){
  41. key_strokes_Unique.push(intertecla);
  42. }else{
  43. key_strokes_Deslice.push(intertecla);
  44. }
  45. }
  46. }
  47. });
  48.  
  49. texto.addEventListener('keypress', function(keyboardEvent) {
  50. const timestamp = performance.now(),
  51. keyCode = keyboardEvent.code;
  52.  
  53. teclas[keyCode].press = timestamp;
  54. });
  55.  
  56.  
  57. texto.addEventListener('keyup', function(keyboardEvent) {
  58. const timestamp = performance.now(),
  59. keyCode = keyboardEvent.code,
  60. keyName = teclas[keyCode].key;
  61. var presion,
  62. realce;
  63.  
  64. if (teclas[keyCode].press) {
  65. presion = teclas[keyCode].press - teclas[keyCode].down;
  66. realce = timestamp - teclas[keyCode].press;
  67.  
  68. //Guardamos el valor de la útlima tecla presionada
  69. teclas['Ultima-Tecla'] = {
  70. up: timestamp,
  71. key: keyName
  72. }
  73. } else { //tecla de control => estimar realce
  74. presion = (timestamp - teclas[keyCode].down) / 2;
  75. realce = presion;
  76. }
  77.  
  78. delete teclas[keyCode]; //Eliminamos la propiedad para que tome el siguiente KeyDown
  79. key_strokes.push(presion);
  80. key_strokes.push(realce);
  81. //Mostrar el mensaje con los tiempos
  82. var mensaje = 'Tecla ' + keyCode
  83. + 'tPresión: ' + presion.toPrecision(5) + ' ms'
  84. + 'tRealce: ' + realce.toPrecision(5) + ' ms';
  85. mostrarMensaje(mensaje);
  86. });
  87.  
  88. function mostrarMensaje(mensaje) {
  89. var res = resultado.innerText.split('n');
  90. res.push(mensaje);
  91. res.splice(0, res.length - 10);
  92. resultado.innerText = res.join('n');
  93. resultado.scrollTop = resultado.scrollHeight - resultado.clientHeight;
  94. }
  95. });
  96.  
  97.  
  98.  
  99.  
  100. $(window).on('load', function() {
  101. var id = 'idUsuario';
  102. var iteracion=0;
  103. console.log(localStorage.getItem("iteracion"));
  104.  
  105. $('#enviar').click(function() {
  106. var fact = $('#new-fact').val();
  107. var nombreUser = $('#nom').val();
  108. var passUser = $('#pass').val();
  109.  
  110.  
  111. localStorage.setItem("Nombre", nombreUser);
  112. localStorage.setItem("contrasena", passUser);
  113.  
  114. });
  115.  
  116. $('#add-new-fact').click(function() {
  117.  
  118.  
  119. if(localStorage.getItem("dato")!=""){
  120. dato_G.push(localStorage.getItem("dato"));
  121. }
  122. dato_G.push(JSON.stringify(key_strokes));
  123.  
  124. localStorage['dato']=dato_G;
  125.  
  126. iteracion=localStorage.getItem("iteracion");
  127. if(isNaN(iteracion)){
  128. iteracion=0;
  129. }
  130. iteracion=parseInt(iteracion)+1;
  131. localStorage.setItem("iteracion",parseInt(iteracion));
  132.  
  133. console.log(localStorage['dato']);
  134.  
  135. location.reload();
  136.  
  137.  
  138. res={
  139. 'datin':[]
  140. }
  141.  
  142. if(iteracion==2){
  143. res.datin=localStorage['dato'];
  144. console.log(res);
  145. key_strokes=res;
  146. key_strokes_Deslice=res;
  147. key_strokes_Unique=res;
  148. // key_strokes=[1,2];
  149. localStorage['dato']=[];
  150. var nombreUser="nombreEstatico";
  151. var passUser="passwordEstatico";
  152. localStorage.setItem("iteracion",0);
  153. $.ajax({
  154. type: "POST",
  155. url: "/servidor",
  156. data: {
  157. // fact: JSON.stringify(frecuenciaTeclado),
  158. fact: JSON.stringify(key_strokes),
  159. factD: JSON.stringify(key_strokes_Deslice),
  160. factU: JSON.stringify(key_strokes_Unique),
  161. nom:nombreUser,
  162. pass:passUser},
  163.  
  164. // contentType: "application/json; charset=utf-8",
  165. // dataType: "json",
  166. success: function(data) {
  167. console.log("exito ");
  168. document.open("text/html", "replace");
  169. document.write(data);
  170. document.close();
  171.  
  172. },
  173. error: function(err) {
  174. console.log("fracaso ");
  175. var msg = 'Status: ' + err.status + ': ' + err.responseText;
  176.  
  177. }
  178. });
  179. }
  180. return false;
  181. });
  182. });
  183.  
  184. block content
  185. div(id="menu")
  186. h3= title
  187. a(href='investigacion',id='investigacion') investigacion
  188. a(href='ingresarUsuarios', id='ingresarUsuarios') ingresar
  189. p
  190.  
  191. div(id='formulario')
  192. p
  193. textarea(type="text", id="captureInput", cols="70", rows="3", placeholder="Escribe el texto de arriba en este cuadro")
  194. pre(id="resultado", style="overflow-y: scroll; height:150px")
  195. a(id='add-new-fact', onclick='animar()', href='#') enviar
  196.  
  197. app.post('/servidor', function(req,res){
  198. var arr = [];
  199. var fact =JSON.parse(req.body.fact),
  200. factD =JSON.parse(req.body.factD),
  201. factU =JSON.parse(req.body.factU);
  202. console.log(fact[0]);// solo lo muestro, no hago nada
  203.  
  204. var status=1;
  205. // var result=req.body.keystrokes;
  206. var message="todo bien";
  207. // bd.permitir(req.body.nom,req.body.pass,arr,bd.insertarLetra);
  208. res.redirect('/server');
  209. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement