var G_set = {
    "opacity_timer_d" : false,
    "opacity_timer_b" : false,
    "opacity_div" : "forum_div"
}
var GVarOnPage = {
    "search"  : false
}

function G_page_onkeydown(event) {
    var id = false;
    event = event || window.event;
    var key = event.keyCode;
    if(event.ctrlKey) {
        var tag = (event.target || event.srcElement).tagName;
        if(tag != 'INPUT' && tag != 'TEXTAREA') {
            if(key == 37) {
                id = document.getElementById('page_previous');
                if (id) {
                    if (GVarOnPage['search']) {
                        Search_onsubmit(GVarOnPage['search'] - 1);
                        return;
                    }
                }
            }
            if(key == 39) {
                id = document.getElementById('page_next');
                if (id) {
                    if (GVarOnPage['search']) {
                        Search_onsubmit(GVarOnPage['search'] + 1);
                        return;
                    }
                }
            }
            if(id) {
                location.href = id.href;
            }
        }
    }
}

function G_search(sObj) {
	var oFind = document.getElementById(sObj);
	if (oFind.value.length < 3) {
		alert('Искомое слово не должно содержать менее трёх символов!');
		oFind.focus();
		return false;
	}
	return true;
}

function G_print() {
    if (typeof(window.print) != 'undefined') {
        window.print();
    }
}

function openWin(file, title, params) {
	w = window.open(file, title, params);
}

function showimg(u,wd,hg) {
	s = window.open('','Pic','toolbar=no,location=no,directoties=no,status=no,scrollbars=no,menubar=no,resizable=yes,top=20, left=20,width='+(wd+16)+',height='+(hg+16));
	s.document.open();
	s.document.writeln('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>photo</title></head><body bgcolor=#ffffff onload="window.self.focus();return true;" style="margin: 0px;"><table cellspacing=0 cellpadding=5 border=0 style="height: 100%; width: 100%;"><tr><td align=center><a href=javascript:window.close()><img src="' + u + '" border="0" width="' + wd + '" height="' + hg + '" alt="close"></a></td></tr></table></body></html>');
	s.document.close();
	s.focus();
}

function GetCookie(sName) {
	var aCookie = document.cookie.split("; ");
	for (var i=0; i < aCookie.length; i++) {
		var aCrumb = aCookie[i].split("=");
		if (sName == aCrumb[0])
			return unescape(aCrumb[1]);
	}
  return null;
}

function BodyOnLoad() {
	var cookieUserFrom = GetCookie('user_from');
	if (cookieUserFrom == null && document.referrer) {
		document.cookie = 'user_from=' + escape(document.referrer) + '; path=/';
	}
}

function G_AjaxRequest(request, funcName) {
    var http_request = false;
    if (window.XMLHttpRequest) {
        http_request = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        try {
            http_request = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch (e) {
            try {
                http_request = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch (e) {}
        }
    }

    if (!http_request) return false;

    http_request.onreadystatechange = function() { G_OnReadyState(http_request, funcName); };
    http_request.open('POST', '/inc/request.php', true);
    http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http_request.send(request);
}

function G_OnReadyState(http_request, funcName) {
    if (http_request.readyState == 4) {
        if (http_request.status == 200) {
            eval(funcName + '(http_request.responseXML);');
        }
    }
}

function G_forum_submit() {
    var name = document.getElementById('forum_name');
    var pass = document.getElementById('forum_pass');
    if (name.value.length <= 0) {
        alert('Введите имя.');
        name.focus();
    } else if (pass.value.length <= 0) {
        alert('Введите пароль.');
        pass.focus();
    } else {
        document.getElementById('forum_button').disabled = true;
        G_AjaxRequest('case=forum&name=' + encodeURIComponent(name.value)
            + '&pass=' + encodeURIComponent(pass.value) + '', 'GI_forum_submit');
    }
}

function GI_forum_submit(oXMLDoc) {
    var oSPAN, oA;
    var form_user = document.getElementById('forum_user');
    var oRootNode = oXMLDoc.getElementsByTagName('root').item(0);
    if (oRootNode.hasChildNodes()) {
        var XML_error = oRootNode.getElementsByTagName('error').item(0);
        var XML_username = oRootNode.getElementsByTagName('username').item(0);
        var XML_userid  = oRootNode.getElementsByTagName('userid').item(0);
        if (XML_error) {
            alert(XML_error.firstChild.data);
            document.getElementById('forum_button').disabled = false;
        } else if (XML_username && XML_userid) {
            oSPAN = document.createElement('span');
            oSPAN.innerHTML = 'Мой профиль: ';
            form_user.appendChild(oSPAN);

            oA = document.createElement('a');
            oA.innerHTML = XML_username.firstChild.data;
            oA.href = '/forum/member.php?' + XML_userid.firstChild.data + '-' + encodeURIComponent(XML_username.firstChild.data);
            form_user.appendChild(oA);

            clearInterval(G_set['opacity_timer_d']);
            G_set['opacity_timer_d'] = window.setInterval(G_dim, 50);
        }
    }
}

function G_dim() {
    var div = document.getElementById(G_set['opacity_div']);
    var opacity = Math.floor(parseFloat(div.style.opacity) * 100);
    if (opacity <= 0) {
        clearInterval(G_set['opacity_timer_d']);
        document.getElementById('forum_form').style.display = 'none';
        document.getElementById('forum_user').style.display = 'block';
        clearInterval(G_set['opacity_timer_b']);
        G_set['opacity_timer_b'] = window.setInterval(G_bright, 50);
    } else {
        div.style.opacity = opacity / 100 - 0.1;
        div.style.filter = "alpha(opacity=" + (opacity - 10) + ")";
    }
}

function G_bright() {
    var div = document.getElementById(G_set['opacity_div']);
    var opacity = Math.floor(parseFloat(div.style.opacity) * 100);
    if (opacity >= 100) {
        clearInterval(G_set['opacity_timer_b']);
    } else {
        div.style.opacity = opacity / 100 + 0.1;
        div.style.filter = "alpha(opacity=" + (opacity + 10) + ")";
    }
}

