var ie4 = (document.all && !document.getElementById); var ie5 = (document.all && document.getElementById); var ns6 = (!document.all && document.getElementById); var is_chrome = /chrome/.test(navigator.userAgent.toLowerCase()); //var is_chrome = navigator.userAgent.toLowerCase().indexOf('chrome') > -1; function GID(name) { return document.getElementById(name); } function callbackFunc(x) { if('object' === typeof x) { if(x.module == 'NFC' && x.action == 'login') { GID('fhUID').value = x.value; GID('fhUIDform').submit(); } } else alert('onfired(): ' + x) } function addEvent(obj, name, func) { if(obj.addEventListener) { obj.addEventListener(name, func, false); if(ie4 || ie5) obj.onfired = func; } else if(obj.attachEvent) { obj.attachEvent("on" + name, func); if(ie4 || ie5) obj.onfired = func; } else alert("Add handler is not supported"); } function init() { var plugin = GID('plugin0'); if(plugin) { try { addEvent(plugin, 'fired', callbackFunc); plugin.Initialize('NFC'); } catch(e) { } } } /*инициализация события загрузки страницы*/ function InitLoading() { if(document.addEventListener) // Opera document.addEventListener("DOMContentLoaded", init, false); // Safari if(/WebKit/i.test(navigator.userAgent)) { var _timer = setInterval(function() { if(/loaded|complete/.test(document.readyState)) { clearInterval(_timer); delete _timer; init(); } }, 10); } // Other window.onload = init; } function getClientWidth() { return document.compatMode == 'CSS1Compat' && !window.opera ? document.documentElement.clientWidth : document.body.clientWidth; } function getClientHeight() { return document.compatMode == 'CSS1Compat' && !window.opera ? document.documentElement.clientHeight : document.body.clientHeight; } function PrintAct(path) { var PrintWindow; PrintWindow = window.parent.open(path, "��� �������"); if(PrintWindow.IsOpen()) PrintWindow.print(); } function PrintConfirmation(path) { var PrintWindow; PrintWindow = window.parent.open(path, "��������������"); if(PrintWindow.IsOpen()) PrintWindow.print(); } function CheckAllEx(C, A, xFunc) { var E = C.form.elements; /*var ex = '/^'+A+'\[\d+\]$/i'*/ var ex = new RegExp(A, 'i'); var exrep = /^[^\d]*(\d+)[^\d]*$/i; var num = ''; var myalldiv = GID('div_' + C.id); myalldiv.className = (C.checked) ? "checkbox_checked" : "checkbox_unchecked"; for(var D = 1, B = E.length; D < B; D++) { //alert(E[D].name); if(E[D].name.search(ex) != -1) { if(E[D].checked != C.checked) { //alert('2-'+E[D].name); GID('div_' + E[D].id).className = (C.checked) ? "checkbox_checked" : "checkbox_unchecked"; num = E[D].name; num = num.replace(exrep, '$1'); try { if(xFunc != '') eval(xFunc + '(' + num + ', ' + C.checked + ');'); } catch(B) { continue; } E[D].checked = C.checked; } } } } function CheckAll(C, A) { var E = C.form.elements; var R = ''; /*var ex = '/^'+A+'\[\d+\]$/i';*/ var ex = new RegExp(A, 'i'); var myalldiv = GID('div_' + C.id); myalldiv.className = (C.checked) ? "checkbox_checked" : "checkbox_unchecked"; for(var D = 1, B = E.length; D < B; D++) { if(E[D].name.search(ex) != -1) { /*alert('123321');return;*/ if(E[D].checked != C.checked) { GID('div_' + E[D].id).className = (C.checked) ? "checkbox_checked" : "checkbox_unchecked"; E[D].checked = C.checked; R = R + E[D].id + ','; } } } try { xajax_SetCheckAll(R, C.checked); } catch(B) { } } function CheckCB(A) { /*A.checked=!A.checked;*/ CheckThis(A); try { xajax_SetCheck(A.id, A.checked); } catch(B) { } } function CheckThisEx(C, A) { var is_checked = C.checked; if(is_checked) { C.checked = false; var E = C.form.elements; var R = ''; var ex = new RegExp(A, 'i'); var myalldiv = GID('div_' + C.id); if(myalldiv) myalldiv.className = (C.checked) ? "checkbox_checked" : "checkbox_unchecked"; for(var D = 1, B = E.length; D < B; D++) { if(E[D].name.search(ex) != -1) { /*alert('123321');return;*/ if(E[D].checked != C.checked) { GID('div_' + E[D].id).className = (C.checked) ? "checkbox_checked" : "checkbox_unchecked"; E[D].checked = C.checked; R = R + E[D].id + ','; } } } try { xajax_SetCheckAll(R, C.checked); } catch(B) { } } C.checked = is_checked; CheckThis(C); } function CheckThis(A) { var B = GID('div_' + A.id); if(B) { B.className = (A.checked || B.className == "checkbox_unchecked") ? "checkbox_checked" : "checkbox_unchecked"; A.checked = (B.className == "checkbox_checked"); //override } } function GetViewTextConf(A, B) { B.style.display = (A.checked) ? 'block' : 'none'; } /* изменение конфигурации*/ function EditConf_ChangeVag(T, NUM, NUMZ, MAX, SEL, newval, newvalZ, prev_bor, new_bor) { var Obj = 0; for(var i = 1; i <= MAX; i++) { /*alert('t'+SEL+i);*/ Obj = document.getElementById('t' + SEL + i); if(Obj == null) continue; /*alert(Obj.style.border); if (Obj.style.border!='1px #666 solid') */ Obj.style.border = prev_bor;//'1px #666 solid'; } T.style.border = new_bor;//'3px #AADDFF solid'; //alert('='+NUM.value); NUM.value = newval; //alert('1'); NUMZ.value = newvalZ; /*Date_Hid = document.getElementById('date'+SEL+'6'); Kilo_Hid = document.getElementById('kilo'+SEL+'6'); Date_Obj = document.getElementById('date_'+SEL); Kilo_Obj = document.getElementById('kilo_'+SEL); Date_Obj.value = Date_Hid.value; Kilo_Obj.value = Kilo_Hid.value;*/ document.getElementById('date_' + SEL).value = ''; document.getElementById('kilo_' + SEL).value = ''; try { document.getElementById('date_' + SEL).value = document.getElementById('date' + SEL + newval).value; document.getElementById('kilo_' + SEL).value = document.getElementById('kilo' + SEL + newval).value; } catch(B) { } ; if(GID('cascad_' + SEL)) GID('cascad_' + SEL).checked = (GID('num' + SEL).value == 1) ? true : false; return; } var Elem; function ch_pr(A, B, C, D) { var Els = new Array('A', 'B', 'C', 'D'); //alert(Els[A.value-1]); var str = ''; if(A.checked) str += 'A '; if(B.checked) str += 'B '; if(C.checked) str += 'C '; if(D.checked) str += 'D '; //alert(Elem.value); Elem.value = str; } function focus_pr(tpr, A, B, C, D) { var str = tpr.value; A.checked = false; B.checked = false; C.checked = false; D.checked = false; if(str.search(/A/i) != -1) A.checked = true; if(str.search(/B/i) != -1) B.checked = true; if(str.search(/C/i) != -1) C.checked = true; if(str.search(/D/i) != -1) D.checked = true; //th.value = str; //alert('1'); } function Sel(A) { A.style.textDecoration = 'underline'; A.style.color = '#44F'; } function UnSel(A) { A.style.textDecoration = 'none'; A.style.color = '#000'; } var SelectedItem = []; function SelectItem(A, pref) { //var E; var B; var count = 9999; // если выбран старый выбранный элемент, то на выход if(pref + 'tr' + SelectedItem[pref] == A.id) return; var exrep = /^[^\d]*(.+)$/i; var num = A.id; var newElem = num.replace(exrep, '$1'); //alert(newElem+'-'+num); //alert(pref + 'tr' + SelectElement); // выделение выбранного элемента for(var j = 1; j < count; j++) { B = GID(pref + 'td' + newElem + '_' + j); if(B == null) break; B.style.border = 'solid 2px #BB0'; } // убираю выделение старого выбранного элемента (если такой был) if(SelectedItem[pref]) { for(var j = 1; j < count; j++) { B = GID(pref + 'td' + SelectedItem[pref] + '_' + j); if(B == null) break; B.style.border = ''; } } SelectedItem[pref] = newElem; } function SelectElemREM(A, pref, rem_cnt, inp_cnt) { var E; var TD; var max_cnt; for(var i = 1, B = 100; i < B; i++) { E = document.getElementById(pref + 'tr' + i); if(E == null) break; E.style.border = 'none'; if(A.id == E.id) { TD = document.getElementById(rem_cnt + i); //alert(TD.innerHTML); if(GID(inp_cnt)) GID(inp_cnt).value = Number(TD.innerHTML); if(GID('max_' + inp_cnt)) GID('max_' + inp_cnt).value = Number(TD.innerHTML); TD = document.getElementById('id_' + rem_cnt + i); if(GID('id_' + inp_cnt)) GID('id_' + inp_cnt).value = Number(TD.value); //alert(document.getElementById('max_'+inp_cnt).value); for(var j = 1, C = 100; j < C; j++) { TD = document.getElementById(pref + 'td' + i + '_' + j); if(TD == null) break; TD.style.border = 'solid 2px #BB0'; } } else { for(var j = 1, C = 100; j < C; j++) { TD = document.getElementById(pref + 'td' + i + '_' + j); if(TD == null) break; TD.style.border = 'none'; } } } } var SelectElement = -1; function SelectElem(A, pref) { //var E; var TD; var count = 9999; var begin = 1; if(document.getElementById(pref + 'tr0') != null) begin = 0; // если выбран старый выбранный элемент, то на выход if(pref + 'tr' + SelectElement == A.id) return; var exrep = /^[^\d]*(\d+)$/i; var num = A.id; var newElem = num.replace(exrep, '$1'); //alert('-'+num); // выделение выбранного элемента for(var j = 1; j < count; j++) { TD = document.getElementById(pref + 'td' + newElem + '_' + j); if(TD == null) break; TD.style.border = 'solid 1px #BB0'; } // убираю выделение старого выбранного элемента (если такой был) if(SelectElement != -1) { for(var j = 1; j < count; j++) { TD = document.getElementById(pref + 'td' + SelectElement + '_' + j); if(TD == null) break; TD.style.border = '1px solid #fff'; } } SelectElement = newElem; } function SelectElem_old(A, pref) { var E; var TD; var count = 999999; var begin = 1; if(document.getElementById(pref + 'tr0') != null) begin = 0; for(var i = begin; i < count; i++) { E = document.getElementById(pref + 'tr' + i); if(E == null) break; //E.style.border = '0px solid #fff'; if(A.id == E.id) { // for(var j = 1; j < count; j++) { TD = document.getElementById(pref + 'td' + i + '_' + j); if(TD == null) break; TD.style.border = 'solid 1px #BB0'; } } else { for(var j = 1; j < count; j++) { TD = document.getElementById(pref + 'td' + i + '_' + j); if(TD == null) break; TD.style.border = '0px solid #fff'; } } } //alert(A.id); //alert(A.style.border); //A.style.border = 'small none -moz-use-text-color'; /*A.style.border = 'solid 2px #BB0'; A.style.backgroundColor = '#BB0';*/ } function ChangeTab(A) { var E; for(var i = 1, B = 100; i < B; i++) { E = document.getElementById('tab' + i); if(E == null) { if (i==3) continue; else break; } //E.style.background = 'none'; E.style.border = 'none'; document.getElementById(E.id + '_div').style.display = 'none'; } //A.style.background = 'url(images/borders1.gif) repeat-x transparent left'; //alert(A.id); document.getElementById(A.id + '_div').style.display = 'block'; A.style.border = 'solid 2px #BB0'; } function getAbsolutePos(el) { var r = { x: el.offsetLeft, y: el.offsetTop }; if(el.offsetParent) { var tmp = getAbsolutePos(el.offsetParent); r.x += tmp.x; r.y += tmp.y; } return r; } function toolTip(el, th) { var obj = document.getElementById(el); //var obj = find_child_obj(E, 'div'); var objth = document.getElementById(th); //var obj = el; if(obj && objth) { if(obj.style.visibility != "visible") { //alert(th.offsetLeft); var res = getAbsolutePos(objth); obj.style.left = res.x + "px"; obj.style.top = res.y + objth.offsetHeight + "px"; /*obj.style.left = event.clientX/2; obj.style.top = event.clientY/2+document.body.scrollTop;*/ /*obj.style.left = "5px"; obj.style.top = "5px";*/ obj.style.width = "300px"; obj.style.height = "300px"; obj.style.display = "block"; obj.style.visibility = "visible"; } } } function hideTip(el) { //var obj = find_child_obj(el, 'div'); var obj = document.getElementById(el); if(obj) { obj.style.display = "none"; obj.style.visibility = "hidden"; } } /* function onOver(event,id) { var div = document.getElementById(id); div.style.display = "block"; onMove(event,id); } function onMove(event,id) { var div = document.getElementById(id); div.style.left = event.clientX + document.documentElement.scrollLeft; div.style.top = event.clientY + document.documentElement.scrollTop; // alert(document.body.scrollTop); } function onOut(id) { var div = document.getElementById(id); div.style.display = "none"; } function showHide(id) { if (document.layers["id"].visibility == "show") document.layers["id"].visibility= "hide" else document.layers["id"].visibility= "show"; } */ function numberOnly(evt) { evt = (evt) ? evt : ((window.event) ? event : null); if(evt) { var elem = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null); if(elem) { var charCode = (evt.charCode) ? evt.charCode : ((evt.which) ? evt.which : evt.keyCode); if((charCode < 32 ) || (charCode > 44 && charCode < 47) || (charCode > 47 && charCode < 58)) { return true; } else { return false; } } } } function ViewDetails(is_checked) { return true; } /* * Функция отображает элемент с параметром id = vobj * относительно элемента с параметром id = obj */ function vis(obj, vobj, left, width, top) { obj = document.getElementById(obj); vobj = document.getElementById(vobj); var lastObj = null; var x = 0, y = 0, h = 0; while(obj) { x += obj.offsetLeft; y += obj.offsetTop; h = obj.offsetHeight; lastObj = obj; obj = obj.offsetParent; } vobj.style.top = (top == -1) ? y + "px" : top + "px"; vobj.style.width = width + "px"; vobj.style.left = (left == true) ? (x - width - 20) + "px" : (x + 25) + "px"; vobj.style.display = 'block'; } function vis2(obj, vobj, isleft, istop) { obj = document.getElementById(obj); vobj = document.getElementById(vobj); vobj.style.display = 'block'; var lastObj = null; var x = 0, y = 0, h = 0; while(obj) { x += obj.offsetLeft; y += obj.offsetTop; h = obj.offsetHeight; w = obj.offsetWidth; lastObj = obj; obj = obj.offsetParent; } if(isleft) { deltaW = x - vobj.offsetWidth; if(deltaW < 0) deltaW = 0; } else { deltaW = x + 20; if(deltaW + vobj.offsetWidth > w) deltaW = w - vobj.offsetWidth; } if(istop) { deltaH = y - vobj.offsetHeight; if(deltaH < 0) deltaH = 0; } else { deltaH = y; if(deltaH + vobj.offsetHeight > h) deltaH = h - vobj.offsetHeight; } //alert(window.clientHeight); //if (deltaH > window.clientHeight) deltaH = window.clientHeight; vobj.style.top = deltaH + "px"; vobj.style.width = vobj.offsetWidth + "px"; vobj.style.left = deltaW + "px"; /* vobj.style.top = (top == -1) ?y + "px": y - vobj.offsetHeight + "px"; vobj.style.width = (left==true) ?vobj.offsetWidth + "px": width + "px"; vobj.style.left = (left==true) ?x - vobj.offsetWidth + "px": (x + 25) + "px"; */ } /* * Функция скрывает элемент с параметром id=obj */ function hide(obj) { obj = document.getElementById(obj); if(obj != null) obj.style.display = 'none'; } function show(obj, ie_obj) { obj = document.getElementById(((ie4 || ie5) ? ie_obj : obj)); if(obj != null) obj.style.display = ''; } /* последний элемент с фокусом */ /*var focusedElement = null; if (document.addEventListener) { document.addEventListener('focus', function(e){ /*alert(e.target,'-'); /focusedElement = e.target }, true); document.addEventListener('blur', function(e){ focusedElement = null }, true); }*/ // получение фокуса для IE function GetFocusIE() { //document.getElementById(\''.$name.'\').value = /*document.activeElement.id/focusedElement.id;return false; return document.activeElement; } function CloseFilter(obj, div_obj) { if(!(ie4 || ie5 || is_chrome)) return; //alert(focusedElement+'-CloseFilter'); //alert(focusedElement.id+'-'+focusedElement.name+'-'); focusedElem = GetFocusIE(); //alert(focusedElem+'-'); //p_2 p_1 dp_1 //alert('-'+focusedElem.id+'-'+obj+'-'+div_obj); /*obj = document.getElementById(obj); div_obj = document.getElementById(div_obj);*/ if(focusedElem.id == '' || (focusedElem.id != obj && focusedElem.id != div_obj/* && (ie4||ie5)*/)) hide(div_obj) } function addHandler(object, event, handler, useCapture) { if(object.addEventListener) { object.addEventListener(event, handler, useCapture ? useCapture : false); } else if(object.attachEvent) { object.attachEvent('on' + event, handler); } else alert("Add handler is not supported"); } function removeHandler(object, event, handler) { if(object.removeEventListener) { object.removeEventListener(event, handler, false); } else if(object.detachEvent) { object.detachEvent('on' + event, handler); } else alert("Remove handler is not supported"); } /* создание окна для фильтра */ var focusedElem = null; var ElObj = null; function documentFocusFilter(e) { // ff //alert("2-"+e.currentTarget.id+'-'+e.target.id+'='+focusedElem.id+'-'+ElObj.id); //2-undefined-p_2=d_inp_1-[object HTMLInputElement] var el = /*(ie4||ie5)?e.srcElement:*/e.target; if(el != null && focusedElem != null && (el.id == undefined || el.id != 'd' + ElObj.id)) { //alert('-'); hide(focusedElem.id); //removeHandler(document, "focus", documentFocusFilter); //focusedElem = null; } } function CreateFilterSelect(obj, /*vobj_name,*/ left, width, top) { //p_1-d_inp_1-false--1--2 //alert(obj+'-'+vobj_name+'-'+left+'-'+width+'-'+top); obj = document.getElementById(obj); var firstobj = obj; var vobj_name = 'd_in'+obj.id; var vobj = document.getElementById(vobj_name); if(vobj == null) { vobj = document.createElement("div"); vobj.id = vobj_name; vobj.style.position = "absolute"; vobj.style.zIndex = 50; } var lastObj = null; var x = 0, y = 0, h = 0; while(obj) { x += obj.offsetLeft; y += obj.offsetTop; h = obj.offsetHeight; lastObj = obj; obj = obj.offsetParent; } if(top == -2) vobj.style.top = y + firstobj.offsetHeight + "px"; else vobj.style.top = (top == -1) ? y + "px" : top + "px"; vobj.style.width = (width == -1) ? firstobj.offsetWidth + 20 + "px" : width + 20 + "px"; vobj.style.left = (left == true) ? (x - width - 20) + "px" : /*(x + 25)*/x + "px"; vobj.style.display = 'block'; // для FF if(!(ie4 || ie5)) { //alert(vobj.id+'-'+firstobj.id); focusedElem = vobj; ElObj = firstobj; addHandler(document, "focus", documentFocusFilter, true); //addHandler(El, "focus", ChangeFilterFunc, true); } document.body.appendChild(vobj); } //GetCbids(this, 'cb') function GetCbids(C, A) { //var E=C.form.elements; var E = document.getElementsByName(C); var RES = []; var i = 0; var txt = A + '\d*'; var ex = new RegExp(txt, 'i'); for(var D = 0, B = E.length; D < B; D++) { if(E[D].id.search(ex) != -1) { //alert('-'+E[D].name); if(E[D].checked) { RES[i] = E[D].id; i++; } } } //alert(RES); return RES; } // отображение и скрытие одного столбца function show_hide_column(table_name, col_no, do_show, ncol) { var stl; stl = (do_show) ? '' : 'none'; var tbl = document.getElementById(table_name); var rows = tbl.getElementsByTagName('tr'); var colsn = 0; var bl = false; var cels; var cel = 0; for(var row = 0; row < rows.length; row++) { cels = rows[row].getElementsByTagName('td'); // количество столбцов при проходе в цикле(colSpan) colsn = 0; bl = false; for(cel = 0; cel < cels.length; cel++) { //alert(cels[cel].tagName+' '+cels[cel].innerHTML+' '+cels[cel].colSpan); //if (do_show && row<=5 && cels[cel].colSpan>0) alert('Кол-во:'+colsn+' Номер столбца:'+col_no+' Столбец:'+cel+' colSpan:'+cels[cel].colSpan); if(do_show) { // ncol - количество столбцов /*if (cels[cel].colSpan >= 1 && ncol>cels.length && (/*если конец столбца/cels[cel+1]==null || (cels[cel+1]!=null && cels[cel+1].colSpan+colsn > col_no+1))) { //alert(cels[cel].tagName+' '+cels[cel].innerHTML+' '+cels[cel].colSpan); //cels[cel].colSpan++; if (colspans[table_name+'_'+row+'_'+cel]) cels[cel].colSpan = colspans[table_name+'_'+row+'_'+cel]; bl = true; break; } colsn += cels[cel].colSpan;*/ if(cels[cel].colSpan >= 1 && colspans[table_name + '_' + row + '_' + cel]) { //alert('-'+colspans[table_name+'_'+row+'_'+cel]); cels[cel].colSpan = colspans[table_name + '_' + row + '_' + cel]; } } else { if(cels[cel].colSpan > 1 && colsn >= cel) { //alert(cels[cel].tagName+' '+cels[cel].innerHTML+' '+cels[cel].colSpan); cels[cel].colSpan--; bl = true; break; } colsn += cels[cel].colSpan; } } //alert('042'+cels[col_no]); if(cels[col_no] != null && !bl) { //if (do_show && row<5) alert(col_no+'='+cels[col_no].style.display); cels[col_no].style.display = stl; cels[col_no].style.backgroundColor = '#DDF'; //if (do_show && row<5) alert(cels[col_no].style.display); } } } // отображение и скрытие списка столбцов // чистка для аякса var sh_tables = {}; function SHCClear() { sh_tables = {}; } // отображение и скрытие списка столбцов var colspans = {}; function show_hide_columns(table_name, col_no, checkb_name, ncol) { /* настройки */ var checkb = document.getElementById(checkb_name); if(checkb) { var do_show = checkb.checked; var cookie_name = 'shc_' + table_name; if(!sh_tables[table_name]) // первый раз читаем куки { sh_cols = getCookie(cookie_name); if(sh_cols == '') sh_cols = do_show; // если нет куков do_show = checkb.checked = (sh_cols == 'true') ? true : false; // чекбокс в true и для всех столбцов } CheckThis(checkb); sh_tables[table_name] = true; setCookie(cookie_name, do_show, "Mon, 01-Jan-2025 00:00:00 GMT", "/"); /* чтение данных colspan */ if(!do_show) { tbl = document.getElementById(table_name); rows = tbl.getElementsByTagName('tr'); for(var row = 0; row < rows.length; row++) { cels = rows[row].getElementsByTagName('td'); for(cel = 0; cel < cels.length; cel++) if(cels[cel].colSpan > 1) colspans[table_name + '_' + row + '_' + cel] = cels[cel].colSpan; //alert(table_name+'_'+row+'_'+cel+' = '+colspans[table_name+'_'+row+'_'+cel]); } } /* изменение видимости столбцов */ for(var i = 0; i < col_no.length; i++) show_hide_column(table_name, col_no[i], do_show, ncol); } } /* РАБОТА с COOKIEs */ function setCookie(name, value, expires, path, domain, secure) { document.cookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : ""); } function getCookie(name) { var cookie = " " + document.cookie; var search = " " + name + "="; var setStr = null; var offset = 0; var end = 0; if(cookie.length > 0) { offset = cookie.indexOf(search); if(offset != -1) { offset += search.length; end = cookie.indexOf(";", offset) if(end == -1) { end = cookie.length; } setStr = unescape(cookie.substring(offset, end)); } } return(setStr); } function vis_load(obj, vobj, isLeft, isTop) { obj = document.getElementById(obj); vobj = document.getElementById(vobj); var lastObj = null; var x = 0, y = 0, h = 0; while(obj) { x += obj.offsetLeft; y += obj.offsetTop; h = obj.offsetHeight; w = obj.offsetWidth; lastObj = obj; obj = obj.offsetParent; } var vobj_offsetWidth = 30; var vobj_offsetHeight = 30; var deltaW, deltaH; if(isLeft) { deltaW = x - vobj_offsetWidth; } else { deltaW = x + 20; } if(deltaW < 0) deltaW = 0; if(deltaW + vobj_offsetWidth > w) deltaW = w - vobj_offsetWidth; if(isTop) { deltaH = y - vobj_offsetHeight; } else { deltaH = y; } if(deltaH < 0) deltaH = 0; if(deltaH + vobj_offsetHeight > h) deltaH = h - vobj_offsetHeight; vobj.style.top = deltaH + "px"; vobj.style.width = vobj_offsetWidth + "px"; vobj.style.height = vobj_offsetHeight + "px"; vobj.style.left = deltaW + "px"; /*vobj.style.top = y + "px"; vobj.style.width = "30px"; vobj.style.height = "30px"; vobj.style.left = x + 25 + "px";*/ //vobj.style.backgroundImage = "images/ajax_loader.gif"; vobj.innerHTML = ''; vobj.style.display = 'block'; } function createKeyboardEvent(elem_name, ev_name) { // для FF if(!(ie4 || ie5 || is_chrome)) { var evt = document.createEvent("KeyboardEvent"); evt.initKeyEvent( ev_name/*"keypress"*/, // in DOMString typeArg, true, // in boolean canBubbleArg, true, // in boolean cancelableArg, null, // in nsIDOMAbstractView viewArg, Specifies UIEvent.view. This value may be null. false, // in boolean ctrlKeyArg, false, // in boolean altKeyArg, false, // in boolean shiftKeyArg, false, // in boolean metaKeyArg, 13, // in unsigned long keyCodeArg, 0); //╨┐╤Ç╨╕╨╝╨╡╨╜╤Å╨╡╨╝ ╤ì╤é╨╛ ╤ü╨╛╨▒╤ï╤é╨╕╨╡ ╨┤╨╗╤Å ╤ì╨╗╨╡╨╝╨╡╨╜╤é╨░ target = document.getElementById(elem_name); target.dispatchEvent(evt); } } function vcenter(el) { var p = el.parentNode, s = el.style; var y = (document.documentElement.clientHeight || document.body.clientHeight) / 2 - (p.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"; if(y) s.top = y; }