var nodetails,mapping=new Array(); function setsel(val) { // IE bug workaround if (document.all) { var sbs=document.getElementsByTagName('SELECT'); for (var i in sbs) if (sbs[i].style) sbs[i].style.display=val; } } function show_choices(where,field,match) { setsel('none'); var FS=document.getElementsByName(field); var F=FS[0]; var FDD=document.getElementById('dd'); FDD.style.display='block'; FDD.style.height='300px'; FDD.style.width=(F.offsetWidth-2)+'px'; //style.width; var pos=getPos(F); FDD.style.left=pos[0]+'px'; FDD.style.top=(pos[1]+F.offsetHeight-1)+'px'; SXreq('dd','http://www.battagame.hu/appz/search.php?where='+where+'&field='+field+'&match='+encodeURIComponent(match)+'&limit=20&full='+full+'&disp='+encodeURIComponent(disp)+(nodetails?'&nodetails=1':'')); } function select(fs,vs) { setsel('inline'); var fields=fs.split(','); if (vs==false) { document.getElementById('dd').style.display='none'; return true; } var vals=vs.split(','); var dsp=disp.split(','); for (var i in fields) { vals[i]=vals[i].replace(/_comma_/g,','); vals[i]=vals[i].replace(/\\n/g,"\n"); } var m2=new Array(); for (var i in fields) { if (mapping[fields[i]]) { // real to display mappings m2[fields[i]]=mapping[fields[i]]; for (var j in fields) { var rpl=m2[fields[i]].indexOf(fields[j]); var sb=(m2[fields[i]].charAt(rpl-1)==' ' && m2[fields[i]].charAt(rpl+fields[j].length)==' '); if (rpl!=-1) m2[fields[i]]=m2[fields[i]].substr(0,rpl)+vals[j]+m2[fields[i]].substr(rpl+fields[j].length+(sb && vals[j]==''?1:0)); } vals[i]=m2[fields[i]]; } } for (var i in fields) { var FS=document.getElementsByName(fields[i]); var F=FS[0]; if (F) { if (F.options) { for (var j=0; j1 && onfillall!=undefined) { onfillall(); } } function init_dd_system(where) { var targets=new Array('INPUT','TEXTAREA'); for (var t in targets) { var inputs=document.getElementsByTagName(targets[t]); for (var i in inputs) { if (inputs[i].className) if (inputs[i].className.match('searchable')) { inputs[i].onkeydown=function(e) { this.hide=(e.keyCode==27); } inputs[i].onkeyup=function(e) { if (this.value!='' && !this.hide) show_choices(where,this.name,this.value); else dd_hide(); }; inputs[i].onfocus=inputs[i].onblur=function(e) { dd_hide(); }; } } } } function dd_hide() { document.getElementById('dd').style.display='none'; }