//function $(el) { return document.getElementById(el); }
function $$()
    {
    var elements = new Array();
    for (var i = 0; i < arguments.length; i++)
        {
        var element = arguments[i];
        if (typeof element == 'string')
            element = document.getElementById(element);
        if (arguments.length == 1)
            return element;
    	elements.push(element);
	}
    return elements;
    }


function show(id,value)
    {//отображает или скрывает элемент по его id
    var v = document.getElementById(id);
    if (value) v.style.display = value;
    else v.style.display = (v.style.display == 'none') ? '' : 'none';
    }
   

function require_js (src, callback)
    { //функция подгрузки js файла
    var head = document.getElementsByTagName("head")[0];
    var script = document.createElement("script");
 
    script.type = "text/javascript";
    head.appendChild(script);
    script.src = src;
 
    script.onload = callback; // Normal browsers
    
    script.onreadystatechange = function() // IE
        {
        if(this.readyState == "loaded"  || this.readyState == "complete")
            if (callback)
                callback();
        }
    }
    

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 setCookie (name, value, expires, path, domain, secure)
    {
    document.cookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
    }

function deleteCookie( name, path, domain )
    {
    if ( getCookie( name ) ) document.cookie = name + '=' +
            ( ( path ) ? ';path=' + path : '') +
            ( ( domain ) ? ';domain=' + domain : '' ) +
            ';expires=Thu, 01-Jan-1970 00:00:01 GMT';
    }
    
function insertAfter(parent, node, referenceNode)
    {//функция вставляет после элемента DOM
    parent.insertBefore(node, referenceNode.nextSibling);
    }

window.onload = function ()
    {
    //require_js ('/js/ckeditor/ckeditor.js');
    //check_ie();
    }

    
function ajax_request()
    {
    var req;
    if(window.XMLHttpRequest)
        req = new XMLHttpRequest();
    else if(window.ActiveXObject)
        {
        try { req = new ActiveXObject("Msxml2.XMLHTTP"); }
        catch(e) { req = new ActiveXObject("Microsoft.XMLHTTP"); }
        }
    return req;
    }
    
function ajax_json(post, callback, show, url)
    {    
    var req = ajax_request(); //инициируем ajax запрос
    url = (url) ? url : '/api/api.php';
    //alert (url);
    req.open('POST', url, true);
    req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    req.onreadystatechange=function()
        {
	if (req.readyState == 4)
            {
            //alert (req.responseXML);
            if (show == true) alert (req.responseText);
            if (req.responseText != '')
                {
                var result = eval ( '('+ req.responseText +')');
                //alert (result.status);
                if (result.status == "OK")    
                    callback(result);
                else
                    alert ('Ошибка '+result.info);
                }
            }
            
        }
    //alert (post);
    req.send(post); //отправляем запрос
    }

