1function busquedaRapida(){ 2 var cadena = jQuery("#cadena").val(); 3 cadena = formatear(cadena); 4 if(cadena.length > 3 ){ 5 6 jQuery.getJSON("/LdapSearch/ServletLdap", 7 { 8 busquedaRapida: "OK", 9 cadena: cadena 10 }, 11 function(json){ 12 jQuery('div.usuario').remove(); 13 jQuery('div.contenedorUsuario').remove(); 14 jQuery.each( json, function(k, v) 15 { 16 if(v.grupo!= ""){ 17 jQuery('#contenido').append("<div class='contenedorUsuario'></div>"); 18 jQuery('.contenedorUsuario:last').append("<div class='usuario'></div>"); 19 jQuery('.usuario:last').append("<p><strong>"+v.nombre +"</strong></p>"); 20 jQuery('.usuario:last').append("<p>"+v.grupo+"</p>"); 21 //jQuery('.usuario:last').append("<p><strong>Usuario: </strong> " + replaceImg(v.id) 22 jQuery('.contenedorUsuario:last').append("<div class='usuario2'></div>"); 23 jQuery('.usuario2:last').append("<p><strong> Correo Electrónico: </strong>"+ replaceImg(v.mail) + "</p>"); 24 jQuery('.usuario2:last').append("<p><strong> Teléfono/s: </strong>"+ v.telefono + "</p>"); 25 jQuery('.usuario2:last').append("<p><strong> Fax: </strong>"+ v.fax + "</p>"); 26 if(v.orcid!= "N/D"){ 27 jQuery('.usuario2:last').append("<p><strong> <img alt='Icono orcid' src='/LdapSearch/LdapResources/orcid.png' style='width: 24px; height: 24px; '> </strong> <a target='_blank' href="+ v.orcid + ">"+v.orcid+"</a></p>"); 28 } 29 //jQuery('.usuario2:last').append("<br/><img src='/LdapSearch/LdapResources/barra.png' alt=' '/><br/>"); 30 jQuery('.contenedorUsuario:last').append("<br/><img src='/LdapSearch/LdapResources/barraGris.png' alt='Icono Barra'/><br/>"); 31 }else{ 32 jQuery('#contenido').append("<div class='contenedorUsuario'></div>"); 33 jQuery('#contenido').append("<div class='usuario'></div>"); 34 jQuery('.usuario:last').append("<p>"+v.nombre +"</p>"); 35 } 36 }); 37 }); 38 return(false); 39 } 40 else{ 41 //mostrar aviso 42 jQuery('div.contenedorUsuario').remove(); 43 jQuery('#contenido').append("<div class='usuario'></div>"); 44 jQuery('.usuario:last').append("<p>Se necesita más información para realizar la búsqueda</p>"); 45 return(false); 46 } 47} 48 49function busquedaAvanzada(){ 50 51 var nombre = formatear(jQuery("#nombre").val()); 52 var apellidos = formatear(jQuery("#apellidos").val()); 53 //var nombre_usuario = formatear(jQuery("#nombre_usuario").val()); 54 var grupo = formatear(jQuery("#grupo").val()); 55 var email = formatear(jQuery("#email").val()); 56 57 if( (nombre.length > 3) 58 || (apellidos.length > 3) 59 //|| (nombre_usuario.length > 3) 60 || (grupo.length > 3) 61 || (email.length > 3) ){ 62 63 jQuery.getJSON("/LdapSearch/ServletLdap", 64 { 65 busquedaAvanzada: "OK", 66 nombre: nombre, 67 apellidos: apellidos, 68 //nombre_usuario: nombre_usuario, 69 grupo: grupo, 70 email: email 71 }, 72 function(json){ 73 jQuery('div.usuario').remove(); 74 jQuery('div.contenedorUsuario').remove(); 75 jQuery.each( json, function(k, v) 76 { 77 if(v.grupo!= ""){ 78 jQuery('#contenido').append("<div class='contenedorUsuario'></div>"); 79 jQuery('.contenedorUsuario:last').append("<div class='usuario'></div>"); 80 jQuery('.usuario:last').append("<p><strong>"+v.nombre +"</strong></p>"); 81 jQuery('.usuario:last').append("<p>"+v.grupo+"</p>"); 82 //jQuery('.usuario:last').append("<p><strong>Usuario: </strong> " + replaceImg(v.id) 83 jQuery('.contenedorUsuario:last').append("<div class='usuario2'></div>"); 84 jQuery('.usuario2:last').append("<p><strong> Correo Electrónico: </strong>"+ replaceImg(v.mail) + "</p>"); 85 jQuery('.usuario2:last').append("<p><strong> Teléfono/s: </strong>"+ v.telefono + "</p>"); 86 jQuery('.usuario2:last').append("<p><strong> Fax: </strong>"+ v.fax + "</p>"); 87 if(v.orcid!= "N/D"){ 88 jQuery('.usuario2:last').append("<p><strong> <img alt='Icono orcid' src='/LdapSearch/LdapResources/orcid.png' style='width: 24px; height: 24px; '> </strong> <a target='_blank' href="+ v.orcid + ">"+v.orcid+"</a></p>"); 89 } 90 //jQuery('.usuario2:last').append("<br/><img src='/LdapSearch/LdapResources/barra.png' alt=' '/><br/>"); 91 jQuery('.contenedorUsuario:last').append("<br/><img src='/LdapSearch/LdapResources/barraGris.png' alt='Icono Barra'/><br/>"); 92 }else{ 93 jQuery('#contenido').append("<div class='contenedorUsuario'></div>"); 94 jQuery('.contenedorUsuario:last').append("<div class='usuario'></div>"); 95 jQuery('.usuario:last').append("<p>"+v.nombre +"</p>"); 96 } 97 }); 98 }); 99 return(false); 100 } 101 else{ 102 //mostrar aviso 103 jQuery('div.contenedorUsuario').remove(); 104 jQuery('#contenido').append("<div class='usuario'></div>"); 105 jQuery('.usuario:last').append("<p>Se necesita más información para realizar la búsqueda</p>"); 106 return(false); 107 } 108} 109 110jQuery(document).ready(function(){ 111 112 jQuery('#busquedaRapida').bind({ 113 submit: function(){ 114 jQuery('div.resultado').show(); 115 return busquedaRapida(); 116 } 117 });
118}); 119 120jQuery(document).ready(function(){ 121 jQuery('#busquedaAvanzada').bind({ 122 submit: function(){ 123 jQuery('div.resultado').show(); 124 return busquedaAvanzada(); 125 } 126 }); 127}); 128 129function formatear (string){ 130 var cadena = string; 131 var aAcento = new RegExp('[áÃ]','g'); 132 var eAcento = new RegExp('[éÃ]','g'); 133 var iAcento = new RegExp('[ÃÃ]','g'); 134 var oAcento = new RegExp('[óÃ]','g'); 135 var uAcento = new RegExp('[úÃ]','g'); 136 var nAcento = new RegExp('[ñÃ]','g'); 137 var cedillaAcento = new RegExp('[ç]','g'); 138 cadena = cadena.replace(aAcento, 'a'); 139 cadena = cadena.replace(eAcento, 'e'); 140 cadena = cadena.replace(iAcento, 'i'); 141 cadena = cadena.replace(oAcento, 'o'); 142 cadena = cadena.replace(uAcento, 'u'); 143 cadena = cadena.replace(nAcento, 'n'); 144 cadena = cadena.replace(cedillaAcento, 'c'); 145 cadena = cadena.replace(/\(/g, ''); 146 cadena = cadena.replace(/\)/g, ''); 147 cadena = cadena.replace(/\;/g, ''); 148 cadena = cadena.replace(/\=/g, ''); 149 cadena = cadena.replace(/\*/g, ''); 150 cadena = cadena.replace(/\!/g, ''); 151 cadena = cadena.replace(/\¡/g, ''); 152 cadena = cadena.replace(/\&/g, ''); 153 cadena = cadena.replace(/\|/g, ''); 154 cadena = cadena.replace(/\?/g, ''); 155 cadena = cadena.replace(/\¿/g, ''); 156 cadena = cadena.replace(/\jQuery/g, ''); 157 cadena = cadena.replace(/\//g, ''); 158 cadena = cadena.replace(/\%/g, ''); 159 cadena = cadena.replace(/\:/g, ''); 160 cadena = cadena.replace(/\_/g, ''); 161 cadena = cadena.replace(/^\s*|\s*jQuery/g,''); 162 return cadena; 163} 164 165function rnd(){ 166 return String((new Date()).getTime()).replace(/\D/gi,'') 167} 168 169function replaceImg (string){ 170 var cadena = string; 171 172 //creacion codigos alfanumericos 173 var a = rnd()+6156764145841; 174 var b = rnd()-6153476454812; 175 var c = rnd()+6153453456429; 176 var d = rnd()-6153453443337; 177 var e = rnd()+3243264444448; 178 var f = rnd()-6153433247644; 179 var g = rnd()+6156546676456; 180 var h = rnd()-6156764534264; 181 var i = rnd()+3242567644568; 182 var j = rnd()-6544536415795; 183 var k = rnd()-8768664135875; 184 var l = rnd()-8675674452128; 185 var m = rnd()-4574576484894; 186 var n = rnd()+3453453641321; 187 var o = rnd()-7869856642168; 188 var p = rnd()+3423454789456; 189 var q = rnd()-3421566412486; 190 var r = rnd()+9870764487318; 191 var s = rnd()-9678764418795; 192 var t = rnd()-6158769676448; 193 var u = rnd()-6151234676415; 194 var v = rnd()+6987987657156; 195 var w = rnd()-6150967648764; 196 var x = rnd()-6156765676415; 197 var y = rnd()+8556764487794; 198 var z = rnd()-8657676468784; 199 var arroba = rnd()+1567862157651; 200 201 //sustitucion por alfanumericos 202 cadena = cadena.replace(/a/g,a); 203 cadena = cadena.replace(/b/g,b); 204 cadena = cadena.replace(/c/g,c); 205 cadena = cadena.replace(/d/g,d); 206 cadena = cadena.replace(/e/g,e); 207 cadena = cadena.replace(/f/g,f); 208 cadena = cadena.replace(/g/g,g); 209 cadena = cadena.replace(/h/g,h); 210 cadena = cadena.replace(/i/g,i); 211 cadena = cadena.replace(/j/g,j); 212 cadena = cadena.replace(/k/g,k); 213 cadena = cadena.replace(/l/g,l); 214 cadena = cadena.replace(/m/g,m); 215 cadena = cadena.replace(/n/g,n); 216 cadena = cadena.replace(/o/g,o); 217 cadena = cadena.replace(/p/g,p); 218 cadena = cadena.replace(/q/g,q); 219 cadena = cadena.replace(/r/g,r); 220 cadena = cadena.replace(/s/g,s); 221 cadena = cadena.replace(/t/g,t); 222 cadena = cadena.replace(/u/g,u); 223 cadena = cadena.replace(/v/g,v); 224 cadena = cadena.replace(/w/g,w); 225 cadena = cadena.replace(/x/g,x); 226 cadena = cadena.replace(/y/g,y); 227 cadena = cadena.replace(/z/g,z); 228 cadena = cadena.replace(/\@/g,arroba); 229 230 var regA = new RegExp(a,"g"); 231 var regB = new RegExp(b,"g"); 232 var regC = new RegExp(c,"g"); 233 var regD = new RegExp(d,"g"); 234 var regE = new RegExp(e,"g"); 235 var regF = new RegExp(f,"g"); 236 var regG = new RegExp(g,"g"); 237 var regH = new RegExp(h,"g"); 238 var regI = new RegExp(i,"g"); 239 var regJ = new RegExp(j,"g"); 240 var regK = new RegExp(k,"g"); 241 var regL = new RegExp(l,"g"); 242 var regM = new RegExp(m,"g"); 243 var regN = new RegExp(n,"g"); 244 var regO = new RegExp(o,"g"); 245 var regP = new RegExp(p,"g"); 246 var regQ = new RegExp(q,"g"); 247 var regR = new RegExp(r,"g"); 248 var regS = new RegExp(s,"g"); 249 var regT = new RegExp(t,"g"); 250 var regU = new RegExp(u,"g"); 251 var regV = new RegExp(v,"g"); 252 var regW = new RegExp(w,"g"); 253 var regX = new RegExp(x,"g"); 254 var regY = new RegExp(y,"g"); 255 var regZ = new RegExp(z,"g"); 256 var regArroba = new RegExp(arroba,"g"); 257 258 //sustitucion alfanumericos por imagenes 259 cadena = cadena.replace(regA,"<img src='/LdapSearch/LdapResources/a.png' alt='" + a +"\'\/>"); 260 cadena = cadena.replace(regB,"<img src='/LdapSearch/LdapResources/b.png' alt='" + b +"\'\/>"); 261 cadena = cadena.replace(regC,"<img src='/LdapSearch/LdapResources/c.png' alt='" + c +"\'\/>"); 262 cadena = cadena.replace(regD,"<img src='/LdapSearch/LdapResources/d.png' alt='" + d +"\'\/>"); 263 cadena = cadena.replace(regE,"<img src='/LdapSearch/LdapResources/e.png' alt='" + e +"\'\/>"); 264 cadena = cadena.replace(regF,"<img src='/LdapSearch/LdapResources/f.png' alt='" + f +"\'\/>"); 265 cadena = cadena.replace(regG,"<img src='/LdapSearch/LdapResources/g.png' alt='" + g +"\'\/>"); 266 cadena = cadena.replace(regH,"<img src='/LdapSearch/LdapResources/h.png' alt='" + h +"\'\/>"); 267 cadena = cadena.replace(regI,"<img src='/LdapSearch/LdapResources/i.png' alt='" + i +"\'\/>"); 268 cadena = cadena.replace(regJ,"<img src='/LdapSearch/LdapResources/j.png' alt='" + j +"\'\/>"); 269 cadena = cadena.replace(regK,"<img src='/LdapSearch/LdapResources/k.png' alt='" + k +"\'\/>"); 270 cadena = cadena.replace(regL,"<img src='/LdapSearch/LdapResources/l.png' alt='" + l +"\'\/>"); 271 cadena = cadena.replace(regM,"<img src='/LdapSearch/LdapResources/m.png' alt='" + m +"\'\/>"); 272 cadena = cadena.replace(regN,"<img src='/LdapSearch/LdapResources/n.png' alt='" + n +"\'\/>"); 273 cadena = cadena.replace(regO,"<img src='/LdapSearch/LdapResources/o.png' alt='" + o +"\'\/>"); 274 cadena = cadena.replace(regP,"<img src='/LdapSearch/LdapResources/p.png' alt='" + p +"\'\/>"); 275 cadena = cadena.replace(regQ,"<img src='/LdapSearch/LdapResources/q.png' alt='" + q +"\'\/>"); 276 cadena = cadena.replace(regR,"<img src='/LdapSearch/LdapResources/r.png' alt='" + r +"\'\/>"); 277 cadena = cadena.replace(regS,"<img src='/LdapSearch/LdapResources/s.png' alt='" + s +"\'\/>"); 278 cadena = cadena.replace(regT,"<img src='/LdapSearch/LdapResources/t.png' alt='" + t +"\'\/>"); 279 cadena = cadena.replace(regU,"<img src='/LdapSearch/LdapResources/u.png' alt='" + u +"\'\/>"); 280 cadena = cadena.replace(regV,"<img src='/LdapSearch/LdapResources/v.png' alt='" + v +"\'\/>"); 281 cadena = cadena.replace(regW,"<img src='/LdapSearch/LdapResources/w.png' alt='" + w +"\'\/>"); 282 cadena = cadena.replace(regX,"<img src='/LdapSearch/LdapResources/x.png' alt='" + x +"\'\/>"); 283 cadena = cadena.replace(regY,"<img src='/LdapSearch/LdapResources/y.png' alt='" + y +"\'\/>"); 284 cadena = cadena.replace(regZ,"<img src='/LdapSearch/LdapResources/z.png' alt='" + z +"\'\/>"); 285 cadena = cadena.replace(regArroba,"<img src='/LdapSearch/LdapResources/missing.PNG' alt='" + arroba +"\'\/>"); 286 287 return cadena; 288} 289 290 291 292 293
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.