
function VKI_buildKeyboardInputs(){var self=this;this.VKI_version="1.10";this.VKI_target=this.VKI_visible="";this.VKI_shift=this.VKI_capslock=this.VKI_alternate=this.VKI_dead=false;this.VKI_deadkeysOn=false;this.VKI_kt="Russian";this.VKI_range=false;this.VKI_keyCenter=3;this.VKI_layout=new Object();this.VKI_layoutDDK=new Object();this.VKI_layout.Russian=[[["\u0451","\u0401"],["1","!"],["2",'"'],["3","\u2116"],["4",";"],["5","%"],["6",":"],["7","?"],["8","*"],["9","("],["0",")"],["-","_"],["=","+"],["Bksp","Bksp"]],[["Tab","Tab"],["\u0439","\u0419"],["\u0446","\u0426"],["\u0443","\u0423"],["\u043A","\u041A"],["\u0435","\u0415"],["\u043D","\u041D"],["\u0433","\u0413"],["\u0448","\u0428"],["\u0449","\u0429"],["\u0437","\u0417"],["\u0445","\u0425"],["\u044A","\u042A"],["Enter","Enter"]],[["Caps","Caps"],["\u0444","\u0424"],["\u044B","\u042B"],["\u0432","\u0412"],["\u0430","\u0410"],["\u043F","\u041F"],["\u0440","\u0420"],["\u043E","\u041E"],["\u043B","\u041B"],["\u0434","\u0414"],["\u0436","\u0416"],["\u044D","\u042D"],["\\","/"]],[["Shift","Shift"],["/","|"],["\u044F","\u042F"],["\u0447","\u0427"],["\u0441","\u0421"],["\u043C","\u041C"],["\u0438","\u0418"],["\u0442","\u0422"],["\u044C","\u042C"],["\u0431","\u0411"],["\u044E","\u042E"],[".",","],["Shift","Shift"]],[[" "," "]]];this.VKI_deadkey=new Object();this.VKI_deadkey['"']=this.VKI_deadkey['\u00a8']=[["a","\u00e4"],["e","\u00eb"],["i","\u00ef"],["o","\u00f6"],["u","\u00fc"],["y","\u00ff"],["\u03b9","\u03ca"],["\u03c5","\u03cb"],["A","\u00c4"],["E","\u00cb"],["I","\u00cf"],["O","\u00d6"],["U","\u00dc"],["Y","\u0178"],["\u0399","\u03aa"],["\u03a5","\u03ab"]];this.VKI_deadkey['~']=[["a","\u00e3"],["o","\u00f5"],["n","\u00f1"],["A","\u00c3"],["O","\u00d5"],["N","\u00d1"]];this.VKI_deadkey['^']=[["a","\u00e2"],["e","\u00ea"],["i","\u00ee"],["o","\u00f4"],["u","\u00fb"],["w","\u0175"],["y","\u0177"],["A","\u00c2"],["E","\u00ca"],["I","\u00ce"],["O","\u00d4"],["U","\u00db"],["W","\u0174"],["Y","\u0176"]];this.VKI_deadkey['\u02c7']=[["c","\u010D"],["s","\u0161"],["z","\u017E"],["r","\u0159"],["d","\u010f"],["t","\u0165"],["n","\u0148"],["l","\u013e"],["e","\u011b"],["C","\u010C"],["S","\u0160"],["Z","\u017D"],["R","\u0158"],["D","\u010e"],["T","\u0164"],["N","\u0147"],["L","\u013d"],["E","\u011a"]];this.VKI_deadkey['\u02d8']=[["a","\u0103"],["g","\u011f"],["A","\u0102"],["G","\u011e"]];this.VKI_deadkey['`']=[["a","\u00e0"],["e","\u00e8"],["i","\u00ec"],["o","\u00f2"],["u","\u00f9"],["A","\u00c0"],["E","\u00c8"],["I","\u00cc"],["O","\u00d2"],["U","\u00d9"]];this.VKI_deadkey["'"]=this.VKI_deadkey['\u00b4']=this.VKI_deadkey['\u0384']=[["a","\u00e1"],["e","\u00e9"],["i","\u00ed"],["o","\u00f3"],["u","\u00fa"],["\u03b1","\u03ac"],["\u03b5","\u03ad"],["\u03b7","\u03ae"],["\u03b9","\u03af"],["\u03bf","\u03cc"],["\u03c5","\u03cd"],["\u03c9","\u03ce"],["A","\u00c1"],["E","\u00c9"],["I","\u00cd"],["O","\u00d3"],["U","\u00da"],["\u0391","\u0386"],["\u0395","\u0388"],["\u0397","\u0389"],["\u0399","\u038a"],["\u039f","\u038c"],["\u03a5","\u038e"],["\u03a9","\u038f"]];this.VKI_deadkey['\u02dd']=[["o","\u0151"],["u","\u0171"],["O","\u0150"],["U","\u0170"]];this.VKI_deadkey["\u0385"]=[["\u03b9","\u0390"],["\u03c5","\u03b0"]];this.VKI_deadkey['\u00b0']=this.VKI_deadkey['\u00ba']=[["a","\u00e5"],["A","\u00c5"]];var inputElems=[document.getElementsByTagName('input'),document.getElementsByTagName('textarea'),]
for(var x=0,inputCount=0,elem;elem=inputElems[x++];){if(elem){for(var y=0,keyid="",ex;ex=elem[y++];){if((ex.nodeName=="TEXTAREA"||ex.type=="text"||ex.type=="password")&&ex.className.indexOf("keyboardInput")>-1){if(!ex.id){do{keyid='keyboardInputInitiator'+inputCount++;}while(document.getElementById(keyid));ex.id=keyid;}else keyid=ex.id;var keybut=document.createElement('img');keybut.src="http://img.labirint.ru/design/keyb2.gif";keybut.alt="Экранную клавиатура";keybut.className="keyboardInputInitiator";keybut.title="Открыть экранную клавиатуру";keybut.onclick=(function(a){return function(){self.VKI_show(a);};})(keyid);if(ex.id=='search-field'||ex.id=='txtwords'||ex.id=='txtwordsadv')
{keybut.className='topsearchbut';ex.parentNode.insertBefore(keybut,ex);}
else
{ex.parentNode.insertBefore(keybut,ex.nextSibling);}
if(!window.sidebar&&!window.opera){ex.onclick=ex.onkeydown=ex.onselect=function(){if(self.VKI_target.createTextRange)self.VKI_range=document.selection.createRange();};}}}}}
this.VKI_keyboard=document.createElement('table');this.VKI_keyboard.id="keyboardInputMaster";this.VKI_keyboard.cellSpacing=this.VKI_keyboard.cellPadding=this.VKI_keyboard.border="0";var layouts=0;for(ktype in this.VKI_layout)if(typeof this.VKI_layout[ktype]=="object")layouts++;var thead=document.createElement('thead');var tr=document.createElement('tr');var th=document.createElement('th');if(layouts>1){var kblist=document.createElement('select');for(ktype in this.VKI_layout){if(typeof this.VKI_layout[ktype]=="object"){var opt=document.createElement('option');opt.value=ktype;opt.appendChild(document.createTextNode(ktype));kblist.appendChild(opt);}}
kblist.value=this.VKI_kt;kblist.onchange=function(){self.VKI_kt=this.value;self.VKI_buildKeys();self.VKI_position();};th.appendChild(kblist);}
var label=document.createElement('label');var checkbox=document.createElement('input');checkbox.type="checkbox";checkbox.checked=this.VKI_deadkeysOn;checkbox.title="Toggle dead key input";checkbox.style.display="none";checkbox.onclick=function(){self.VKI_deadkeysOn=this.checked;this.nextSibling.nodeValue=" Dead keys: "+((this.checked)?"On":"Off");self.VKI_modify("");return true;};label.appendChild(checkbox);th.appendChild(label);tr.appendChild(th);var td=document.createElement('td');var closer=document.createElement('span');closer.id="keyboardInputClose";img=document.createElement('img');img.src="http://img.labirint.ru/design/close.gif";closer.appendChild(img);closer.title="Закрыть окно";closer.onmousedown=function(){this.className="pressed";};closer.onmouseup=function(){this.className="";};closer.onclick=function(){self.VKI_close();};td.appendChild(closer);td.className=" closer";tr.appendChild(td);thead.appendChild(tr);this.VKI_keyboard.appendChild(thead);var tbody=document.createElement('tbody');var tr=document.createElement('tr');var td=document.createElement('td');td.colSpan="2";var div=document.createElement('div');div.id="keyboardInputLayout";td.appendChild(div);var div=document.createElement('div');var ver=document.createElement('var');div.appendChild(ver);td.appendChild(div);tr.appendChild(td);tbody.appendChild(tr);this.VKI_keyboard.appendChild(tbody);$('#keyboardInputMaster').css({display:"none"},700)
$('#keyboardInputMaster').animate({opacity:"show"},700)
this.VKI_buildKeys=function(){this.VKI_shift=this.VKI_capslock=this.VKI_alternate=this.VKI_dead=false;this.VKI_deadkeysOn=(this.VKI_layoutDDK[this.VKI_kt])?false:this.VKI_keyboard.getElementsByTagName('label')[0].getElementsByTagName('input')[0].checked;var container=this.VKI_keyboard.tBodies[0].getElementsByTagName('div')[0];while(container.firstChild)container.removeChild(container.firstChild);for(var x=0,hasDeadKey=false,lyt;lyt=this.VKI_layout[this.VKI_kt][x++];){var table=document.createElement('table');table.cellSpacing=table.cellPadding=table.border="0";if(x==1){table.className="tab1";}
if(x==2){table.className="tab2";}
if(x==3){table.className="tab3";}
if(x==4){table.className="tab4";}
if(lyt.length<=this.VKI_keyCenter)table.className="keyboardInputCenter";var tbody=document.createElement('tbody');var tr=document.createElement('tr');for(var y=0,lkey;lkey=lyt[y++];){if(!this.VKI_layoutDDK[this.VKI_kt]&&!hasDeadKey)
for(var z=0;z<lkey.length;z++)
if(this.VKI_deadkey[lkey[z]])hasDeadKey=true;var td=document.createElement('td');td.appendChild(document.createTextNode(lkey[0]));var alive=false;if(this.VKI_deadkeysOn)for(key in this.VKI_deadkey)if(key===lkey[0])alive=true;td.className=(alive)?"alive":"";if(lyt.length>this.VKI_keyCenter&&y==lyt.length)
td.className+="last";if(y==1)
td.className+="first";if(lkey[0]==" ")
td.style.width=360+"px";td.onmouseover=function(){if(this.className!="dead"&&this.firstChild.nodeValue!="\xa0")this.className+="hover";};td.onmouseout=function(){if(this.className!="dead")this.className=this.className.replace(/ ?(hover|pressed)/g,"");};td.onmousedown=function(){if(this.className!="dead"&&this.firstChild.nodeValue!="\xa0")this.className+="pressed";};td.onmouseup=function(){if(this.className!="dead")this.className=this.className.replace(/ ?pressed/g,"");};td.ondblclick=function(){return false;};switch(lkey[1]){case"Caps":case"Shift":case"Alt":case"AltGr":td.onclick=(function(type){return function(){self.VKI_modify(type);return false;}})(lkey[1]);break;case"Tab":td.onclick=function(){self.VKI_insert("\t");return false;};break;case"Bksp":td.onclick=function(){self.VKI_target.focus();if(self.VKI_target.setSelectionRange){var srt=self.VKI_target.selectionStart;var len=self.VKI_target.selectionEnd;if(srt<len)srt++;self.VKI_target.value=self.VKI_target.value.substr(0,srt-1)+self.VKI_target.value.substr(len);self.VKI_target.setSelectionRange(srt-1,srt-1);}else if(self.VKI_target.createTextRange){try{self.VKI_range.select();}catch(e){}
self.VKI_range=document.selection.createRange();if(!self.VKI_range.text.length)self.VKI_range.moveStart('character',-1);self.VKI_range.text="";}else self.VKI_target.value=self.VKI_target.value.substr(0,self.VKI_target.value.length-1);if(self.VKI_shift)self.VKI_modify("Shift");if(self.VKI_alternate)self.VKI_modify("AltGr");return true;};break;case"Enter":td.onclick=function(){if(self.VKI_target.nodeName=="TEXTAREA"){self.VKI_insert("\n");}
else{if(self.VKI_target.id=='search-field'){document.getElementById('searchform').submit();}
if(self.VKI_target.id=='txtwords'){document.forms['big-search-form'].submit();}
if(self.VKI_target.id=='txtwordsadv'){document.forms['searchformadvanced'].submit();}
self.VKI_close();}
return true;};break;default:td.onclick=function(){if(self.VKI_deadkeysOn&&self.VKI_dead){if(self.VKI_dead!=this.firstChild.nodeValue){for(key in self.VKI_deadkey){if(key==self.VKI_dead){if(this.firstChild.nodeValue!=" "){for(var z=0,rezzed=false,dk;dk=self.VKI_deadkey[key][z++];){if(dk[0]==this.firstChild.nodeValue){self.VKI_insert(dk[1]);rezzed=true;break;}}}else{self.VKI_insert(self.VKI_dead);rezzed=true;}
break;}}}else rezzed=true;}
self.VKI_dead=false;if(!rezzed&&this.firstChild.nodeValue!="\xa0"){if(self.VKI_deadkeysOn){for(key in self.VKI_deadkey){if(key==this.firstChild.nodeValue){self.VKI_dead=key;this.className="dead";if(self.VKI_shift)self.VKI_modify("Shift");if(self.VKI_alternate)self.VKI_modify("AltGr");break;}}
if(!self.VKI_dead)self.VKI_insert(this.firstChild.nodeValue);}else self.VKI_insert(this.firstChild.nodeValue);}
self.VKI_modify("");return false;};}
tr.appendChild(td);tbody.appendChild(tr);table.appendChild(tbody);for(var z=lkey.length;z<4;z++)lkey[z]="\xa0";}
container.appendChild(table);}
this.VKI_keyboard.getElementsByTagName('label')[0].style.display=(hasDeadKey)?"inline":"none";};this.VKI_buildKeys();VKI_disableSelection(this.VKI_keyboard);this.VKI_modify=function(type){switch(type){case"Alt":case"AltGr":this.VKI_alternate=!this.VKI_alternate;break;case"Caps":this.VKI_capslock=!this.VKI_capslock;break;case"Shift":this.VKI_shift=!this.VKI_shift;break;}
var vchar=0;if(!this.VKI_shift!=!this.VKI_capslock)vchar+=1;var tables=this.VKI_keyboard.getElementsByTagName('table');for(var x=0;x<tables.length;x++){var tds=tables[x].getElementsByTagName('td');for(var y=0;y<tds.length;y++){var dead=alive=target=false;var lkey=this.VKI_layout[this.VKI_kt][x][y];switch(lkey[1]){case"Alt":case"AltGr":if(this.VKI_alternate)dead=true;break;case"Shift":if(this.VKI_shift)dead=true;break;case"Caps":if(this.VKI_capslock)dead=true;break;case"Tab":case"Enter":case"Bksp":break;default:if(type)tds[y].firstChild.nodeValue=lkey[vchar+((this.VKI_alternate&&lkey.length==4)?2:0)];if(this.VKI_deadkeysOn){var char=tds[y].firstChild.nodeValue;if(this.VKI_dead){if(char==this.VKI_dead)dead=true;for(var z=0;z<this.VKI_deadkey[this.VKI_dead].length;z++)
if(char==this.VKI_deadkey[this.VKI_dead][z][0]){target=true;break;}}
for(key in this.VKI_deadkey)if(key===char){alive=true;break;}}}
tds[y].className=(dead)?"dead":((target)?"target":((alive)?"alive":""));if(y==tds.length-1&&tds.length>this.VKI_keyCenter)tds[y].className+="last";if(y==0)tds[y].className+="first";}}
this.VKI_target.focus();};this.VKI_insert=function(text){this.VKI_target.focus();if(this.VKI_target.setSelectionRange){var srt=this.VKI_target.selectionStart;var len=this.VKI_target.selectionEnd;this.VKI_target.value=this.VKI_target.value.substr(0,srt)+text+this.VKI_target.value.substr(len);if(text=="\n"&&window.opera)srt++;this.VKI_target.setSelectionRange(srt+text.length,srt+text.length);}else if(this.VKI_target.createTextRange){try{this.VKI_range.select();}catch(e){}
this.VKI_range=document.selection.createRange();this.VKI_range.text=text;this.VKI_range.collapse(true);this.VKI_range.select();}else this.VKI_target.value+=text;if(this.VKI_shift)this.VKI_modify("Shift");if(this.VKI_alternate)this.VKI_modify("AltGr");this.VKI_target.focus();};this.VKI_show=function(id){if(this.VKI_target=document.getElementById(id)){if(this.VKI_visible!=id){this.VKI_range="";try{this.VKI_keyboard.parentNode.removeChild(this.VKI_keyboard);}catch(e){}
var elem=this.VKI_target;this.VKI_target.keyboardPosition="absolute";do{if(VKI_getStyle(elem,"position")=="fixed"){this.VKI_target.keyboardPosition="fixed";break;}}while(elem=elem.offsetParent);this.VKI_keyboard.style.top=this.VKI_keyboard.style.right=this.VKI_keyboard.style.bottom=this.VKI_keyboard.style.left="auto";this.VKI_keyboard.style.position=this.VKI_target.keyboardPosition;document.body.appendChild(this.VKI_keyboard);this.VKI_visible=this.VKI_target.id;this.VKI_position();this.VKI_target.focus();}else this.VKI_close();}};this.VKI_position=function(){if(self.VKI_visible!=""){var inputElemPos=VKI_findPos(self.VKI_target);if(self.VKI_target.id=='search-field'||self.VKI_target.id=='txtwords'||self.VKI_target.id=='txtwordsadv')
{self.VKI_keyboard.style.top=inputElemPos[1]-((self.VKI_target.keyboardPosition=="fixed")?document.body.scrollTop:0)+self.VKI_target.offsetHeight+3+"px";}
else
{self.VKI_keyboard.style.top=inputElemPos[1]-((self.VKI_target.keyboardPosition=="fixed")?document.body.scrollTop:0)+self.VKI_target.offsetHeight+25+"px";}
self.VKI_keyboard.style.left=Math.min(VKI_innerDimensions()[0]-self.VKI_keyboard.offsetWidth-15,inputElemPos[0])+"px";}};if(window.addEventListener){window.addEventListener('resize',this.VKI_position,false);}else if(window.attachEvent)
window.attachEvent('onresize',this.VKI_position);this.VKI_close=function(){try{this.VKI_keyboard.parentNode.removeChild(this.VKI_keyboard);}catch(e){}
this.VKI_visible="";this.VKI_target.focus();this.VKI_target="";};}
if(window.addEventListener){window.addEventListener('load',VKI_buildKeyboardInputs,false);}else if(window.attachEvent)
window.attachEvent('onload',VKI_buildKeyboardInputs);function VKI_findPos(obj){var curleft=curtop=0;do{curleft+=obj.offsetLeft;curtop+=obj.offsetTop;}while(obj=obj.offsetParent);return[curleft,curtop];}
function VKI_innerDimensions(){if(self.innerHeight){return[self.innerWidth,self.innerHeight];}else if(document.documentElement&&document.documentElement.clientHeight){return[document.documentElement.clientWidth,document.documentElement.clientHeight];}else if(document.body)
return[document.body.clientWidth,document.body.clientHeight];return[0,0];}
function VKI_getStyle(obj,styleProp){if(obj.currentStyle){var y=obj.currentStyle[styleProp];}else if(window.getComputedStyle)
var y=window.getComputedStyle(obj,null)[styleProp];return y;}
function VKI_disableSelection(elem){elem.onselectstart=function(){return false;};elem.unselectable="on";elem.style.MozUserSelect="none";elem.style.cursor="default";if(window.opera)elem.onmousedown=function(){return false;};}