

var siteUrl = "";
var siteName = "";
    
// fix the MSIE 6.0 bugs
if(navigator.appName.indexOf("Internet Explorer") > 0 && 
    parseInt(navigator.appVersion.substr(navigator.appVersion.indexOf("MSIE")+4, 4)) < 7) {
    document.write( "<link rel='stylesheet' type='text/css' href='ie6.inc.css' />" );    
}

function minwidth(minvalue, value){
    return document.body.offsetWidth <= minvalue ? minvalue - 5 + "px" : value + "%";
}
    
function setAsStartPage(){
    var obj = window.event.srcElement;
        if (obj != undefined){
        obj.style.behavior = "url(#default#homepage)";
        obj.setHomePage(siteUrl);
        }
    return false;
}

function addToFavorites(){
    try {
        if (window.external != undefined)
            window.external.addFavorite(siteUrl, siteName);
    }
    catch(e) {
        alert("Ваш браузер не поддерживает данной функции.");
    }
    return false;
}

function IsEMail(value) {
    if(value == "")
        return true;
    else {
        re = /.@{1}[0-9A-Za-z\-]{1,}\.{1}[A-Za-z]{2,4}/
    return re.test(value)
    }
}

function win(src, w, h, scrollBars, resizable) { //location , menubar , toolbar , titlebar , fullscreen
    var top = Math.round(window.screen.height/2 - h/2);
    var left = Math.round(window.screen.width/2 - w/2);
    
    var wnd = window.open(src, "untitled_" + Math.ceil(Math.random()*100), "status=no,help=no,resizable="+resizable+",scrollbars="+scrollBars+",width=" + w + ",height=" + h + ",top=" + top + ",left=" + left);
    if (wnd){
        wnd.opener = window; //
        wnd.focus();
    }
    
    return false;
}

function toggleDisplay(eid, persits){
    var e = document.getElementById(eid);
    if (!e)
        return;
    
    e.className = e.className.indexOf("hidden") != -1 ? persits : "hidden";
}

function PostBack(formId, urlParams){
    var form = document.getElementById(formId);
    
    if (urlParams != ""){
        var params = urlParams.split(";");
        
        var prm = "";
        var fprm = "";
        var furl = "";
        
        //var s = form.action.indexOf("?");
        var furla = form.action.split("?");
        
        furl = furla.length > 1 ? furla[0] : form.action;
        fprm = furla.length > 1 ? furla[1] : "";
        
        for (var i = 0; i < params.length; i++)
             if (fprm.indexOf(params[i]) < 0)
                 prm += "&" + params[i];
        
        form.action = furl + (fprm ? "?" + fprm : "") + (fprm ? prm : "?" + prm.substr(1));
    }
    
    form.submit();
}

function updateQueryString(newParams, url){
    var tmp = "";
    var oldUrl = "";
    var prefix = "";
    
    var url = url ? url : new String(window.location);
    
    var newParamsList = newParams.split(";");
    
    for (var i = 0; i < newParamsList.length; i++){
        tmp = newParamsList[i].split("=");
        
        if (tmp.length < 2)
            continue;
        
        oldUrl = url;
        url = url.replace(new RegExp("([?|&])(" + tmp[0] + "=[^&]*)"), "$1" + newParamsList[i]);
        //out(url, tmp[0], url.match("[?|&]" + tmp[0]));
        if (oldUrl == url && !url.match("[?|&]" + tmp[0])){
            prefix = url.indexOf("?") >= 0 ? "&" : "?";
            url += prefix + newParamsList[i];
        }
    }
    
    //out(url);
    return url;
}

function redirect(newParams, url){
    //updateQueryString(newParams, url);
    window.location = updateQueryString(newParams, url);
}

function comboRedirect(el){
    var value = el.options[el.selectedIndex].value;
    if (value == -1)
        return;
    window.location = value;
}

function write(value){
    document.write(value);
}

function swapBg(obj, bgSrc){
    obj.style.backgroundImage = "url(" + bgSrc + ")";
    return false;
}

function swapSrc(itemId, pre){
    var item = document.getElementById(itemId);
    
    if (!item)
        return;
    
    if (item.className != "selected"){
        var h_item = document.getElementById(pre + itemId);
        var src = item.src;
        item.src = h_item.src;
        h_item.src = src;
    }
}

function smartInput(el){
    var ovalue = el.getAttribute("ovalue");
    if (ovalue){
        if (el.value == ovalue)
            el.value = "";
        else if (el.value == "")
            el.value = ovalue;
    } else {
        el.setAttribute("ovalue", el.value);
        el.value = "";
    }
}

function isArray(obj) {
    if (!obj)
        return;
        
    return !(obj.constructor.toString().indexOf("Array") == -1);
}

function out(){
    var top = "0px";
    var left = "0px";
    
    var test = document.getElementById("debug");
    if (test){
        top = (test.offsetTop + test.offsetHeight + 10) + 'px';
        left = '0px';
    }
    
    var debug = document.createElement("DIV");
    debug.id = "debug";
    debug.style.backgroundColor = "#fff";
    debug.style.padding = "5px";
    debug.style.color = "#d4251c";
    debug.style.position = "absolute";
    debug.style.top = top;
    debug.style.left = left;
    debug.style.display = "block";
    debug.style.border = "1px solid #000";
    
    var v = "";
    
    for (var i = 0; i < arguments.length; i++){
        v += "<div style='border: 1px solid #00f;'>";
        if (isArray(arguments[i])){
            v = "<strong>array:</strong> ";
            for (var j = 0; j < arguments[i].length; j++)
                v += "<div>[" + j + "] => " + arguments[i][j] + "</div>";
            v += "<strong>end array</strong>";
        } else
            v += arguments[i];
        v += "</div>";
    }
        
    debug.innerHTML = v;
    
    document.body.appendChild(debug);
}

function showImage(src) {
    var img = new Image();
    img.src = src;
    
    win(src, img.width+20, img.height+20, true, false);
}

function AjaxRequest(cmd, data, callback, callbackdata) {
    var iframe = document.createElement('IFRAME');
    iframe.width="1";
    iframe.height="1";
    iframe.style.display="none";
    iframe.style.position="absolute";
    iframe.style.width="0px";
    iframe.style.height="0px";
    iframe.src="about:blank";
    document.body.appendChild(iframe);
    
    var url = "/ajax.php?";
    url = url + "cmd=" + cmd + "&"
    url = url + "data=" + escape(data);

    iframe.time = new Date();
    iframe.loading = true;
    iframe.callback = callback;
    iframe.callbackdata = callbackdata;
    iframe.cmd = cmd;
    iframe.data = data;
    iframe.onload = AjaxLoaded;
    iframe.onreadystatechange = AjaxLoaded;
    iframe.src = url+'&time='+(new Date).getTime();
}


function AjaxLoaded(e) {
    
    if(!e)
        e = window.event;
    
    if(this.readyState && this.readyState != "complete")
        return false;
    
    var objE = new Object();
    objE.returnData = this.contentWindow.document.body.innerHTML; 
    objE.requestTime = this.time;
    objE.responseTime = new Date();
    objE.requestCommand = this.cmd;
    objE.requestData = this.data;
    
    this.callback(objE, this.callbackdata);
    
    this.onload = null;
    this.onreadystatechange = null;    
    this.contentWindow.location.href = "about:blank";
    
    document.body.removeChild(this);
    return true;
}

function getNextNews(id, container) {
    
    AjaxRequest("Blocks.GetNews", 
                id, 
                function(res, container) {
                    if(res.returnData.substr(0, 5) == "error")
                        container.innerHTML = "Список новостей пуст.";
                    else {
                        container.innerHTML = res.returnData;
                    }
                }, 
                document.getElementById(container));    
    
    return false;
}


                      



                      




                      



