// JavaScript Document /*==================================*\ || Автор кода — Сергей Мосцевенко || || f-ph.ru || || || || Код распространяется бесплатно || \*==================================*/ var fph_include_base = true; // Свойства объектов function mousePos(event) { event = event || window.event; var ret; if(event.clientX) { ret = new Array(event.clientX, event.clientY); } else if(event.screenX) { ret = new Array(event.screenX, event.screenY); } else if(event.pageX) { ret = new Array(event.pageX, event.pageY); } else { ret = new Array(0, 0); } return ret; } function getAbsolutePosition(el) { var r = { x: el.offsetLeft, y: el.offsetTop }; if (el.offsetParent) { var tmp = getAbsolutePosition(el.offsetParent); r.x += tmp.x; r.y += tmp.y; } return r; } function getStyle(elem, name) { if(elem.style[name]) { return elem.style[name]; } else { if(elem.currentStyle) { return elem.currentStyle[name]; } else { if(document.defaultView && document.defaultView.getComputedStyle) { name = name.replace(/([A-Z])/g,"-$1"); name = name.toLowerCase(); var s = document.defaultView.getComputedStyle(elem,""); return s && s.getPropertyValue(name); } else { return null; } } } } 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 getClientSTop() { return document.documentElement.scrollTop || document.body.scrollTop; } function getClientSLeft() { return document.documentElement.scrollLeft || document.body.scrollLeft; } function set_atr(id, atr, value) { document.getElementById(id).setAttribute(atr, value); } function getBrowser(text) { if(!text) { text = navigator.appName; } if(text.indexOf('Internet Explorer') != -1) { return 'Internet Explorer'; } return text; } if(navigator.appName == 'Microsoft Internet Explorer') var is_ie = true; else var is_ie = false; if(is_ie && (navigator.appVersion.indexOf('MSIE 6') != -1 || navigator.appVersion.indexOf('MSIE 7') != -1)) var is_ie_bad = true; else var is_ie_bad = false; // Ajax function ajax_load(where,what) { var xml; var t; if(window.ActiveXObject) { xml=new ActiveXObject("Microsoft.XMLHTTP"); } else { if(window.XMLHttpRequest) { xml=new XMLHttpRequest(); } else { alert('Видимо в вашем браузере не поддреживается ajax'); } } xml.onreadystatechange = function() { if(xml.readyState != 4 || xml.readyState==0) { } if(xml.readyState == 4) { if(xml.status == 200) { t = xml.responseText; } else { t = false; } } } xml.open("POST", where, false); xml.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xml.send(what); if(t) { return t; } else { return false; } } // Обработка текста function clearValue(value) { value = value + 'p'; return value.slice(0, value.indexOf('p')) * 1; } function get_property_block(source, key1, key2) { if(source) { var key_1 = source.toLowerCase().indexOf(key1); if(key_1 != -1) { source = source.slice(key_1 + key1.length, source.length); return source.slice(0, source.toLowerCase().indexOf(key2)); } else { return false; } } else { return false; } } function str_replace(src, from, to) { var i = src.indexOf(from); var j; var part1; var part2; while(i != -1) { if(i > 0) { part1 = src.slice(0, i); } else { part1 = ''; } j = i + from.length; if(j < src.length) { part2 = src.slice(j); } else { part2 = ''; } src = part1 + to + part2; i = src.indexOf(from); } return src; } // Математика function abs(i) { if(i < 0) { i = -i; } return i; } function div(a, b) { return (a - a%b)/b; } function floor(src) { return Math.floor(src); } function rand(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } // Массивы function in_array(arr, value) { var length = arr.length; var key = false; for(var i in arr) { if(arr[i] == value) { key = i; break; } } return key; } function array_concat(arr1, arr2) { for(var i in arr2) { if(arr1[i]) { arr1[i] = array_concat(arr1[i], arr2[i]); } else { arr1[i] = arr2[i]; } } return arr1; } // События function hookEvent(elem, eventName, callback) { if(typeof(elem) == 'string') { elem = document.getElementById(elem); } if(!elem) { return false; } if(elem.addEventListener) { if (eventName == 'mousewheel') { elem.addEventListener('DOMMouseScroll', callback, false); } elem.addEventListener(eventName, callback, false); } else if(elem.attachEvent) { elem.attachEvent('on' + eventName, callback); } else { return false; } return true; } function unhookEvent(elem, eventName, callback) { if(typeof(elem) == 'string') { elem = document.getElementById(elem); } if(!elem) { return false; } if(elem.removeEventListener) { if(eventName == 'mousewheel') { elem.removeEventListener('DOMMouseScroll', callback, false); } elem.removeEventListener(eventName, callback, false); } else if(elem.detachEvent) { elem.detachEvent('on' + eventName, callback); } else { return false; } return true; } function cancelEvent(e) { e = e ? e : window.event; if(e.stopPropagation) { e.stopPropagation(); } if (e.preventDefault) { e.preventDefault(); } e.cancelBubble = true; e.cancel = true; e.returnValue = false; return false; } isIE = document.all || window.opera; // Изображения var imgloadsrc = new Array(); function imgLoad(src, hard) { if(src && (!(imgloadsrc[src]) || hard)) { imgloadsrc[src] = new Image(100, 100); imgloadsrc[src].src = src; return true; } else { return false; } } // Выделение function get_seletion() { if (document.getSelection) { return document.getSelection(); } else if(document.selection && document.selection.createRange) { return document.selection.createRange(); } else { return false; } }