onLoadFunctionList=new Array();
function performOnLoadFunctions()
{
    for(var i=0;i<onLoadFunctionList.length;i++)
    {
        onLoadFunctionList[i]();
    }
}
function getXmlHttpRequest()
{
    var httpRequest=null;
    try
    {
        httpRequest=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e)
    {
        try
        {
            httpRequest=new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(e)
        {
            httpRequest=null;
        }
    }
    if(!httpRequest&&typeof XMLHttpRequest!="undefined")
    {
        httpRequest=new XMLHttpRequest();
    }
    return httpRequest;
}
function postUrl(url,data,async,stateChangeCallback)
{
    var xmlHttpReq=getXmlHttpRequest();
    if(!xmlHttpReq)
    return;
    xmlHttpReq.open("POST",url,async);
    xmlHttpReq.onreadystatechange=function()
    {
        stateChangeCallback(xmlHttpReq);
    };
    xmlHttpReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    xmlHttpReq.send(data);
}
function urlEncodeDict(dict)
{
    var result="";
    for(var i=0;i<dict.length;i++){
        result+="&"+encodeURIComponent(dict[i].name)+"="+encodeURIComponent(dict[i].value);
    }
    return result;
}
function execOnSuccess(stateChangeCallback)
{
    return function(xmlHttpReq)
    {
        if(xmlHttpReq.readyState==4&&
        xmlHttpReq.status==200)
        stateChangeCallback(xmlHttpReq);
    };
}
function postFormByForm(form,async,successCallback){
    var formVars=new Array();
    for(var i=0;i<form.elements.length;i++)
    {
        var formElement=form.elements[i];
        if((formElement.type=='checkbox'||formElement.type=='radio')&&!formElement.checked){
            continue;
        }
        var v=new Object;
        v.name=formElement.name;
        v.value=formElement.value;
        formVars.push(v);
    }
    postUrl(form.action,urlEncodeDict(formVars),async,execOnSuccess(successCallback));
}
function postForm(formName,async,successCallback)
{
    var form=document.forms[formName];
    return postFormByForm(form,async,successCallback);
}
function replaceDivContents(xmlHttpRequest,dstDivId)
{
    var dstDiv=document.getElementById(dstDivId);
    dstDiv.innerHTML=xmlHttpRequest.responseText;
}
function hasClass(element,_className){
    if(!element){
        return;
    }
    var upperClass=_className.toUpperCase();
    if(element.className){
        var classes=element.className.split(' ');
        for(var i=0;i<classes.length;i++){
            if(classes[i].toUpperCase()==upperClass){
                return true;
            }
        }
    }
    return false;
}
function addClass(element,_class){
    if(!hasClass(element,_class)){
        element.className+=element.className?(" "+_class):_class;
    }
}
function removeClass(element,_class){
    var upperClass=_class.toUpperCase();
    var remainingClasses=[];
    if(element.className){
        var classes=element.className.split(' ');
        for(var i=0;i<classes.length;i++){
            if(classes[i].toUpperCase()!=upperClass){
                remainingClasses[remainingClasses.length]=classes[i];
            }
        }
        element.className=remainingClasses.join(' ');
    }
}

function postPollResults(formName, divId){
	document.forms[formName]['ajax'].value=1;
	postForm(formName,true,function(req){
		replaceDivContents(req,divId);
	});
}
function postArtPollResults(pollId,divId){
	if (!artpolls || !document.forms["formArtPoll" + pollId])
	{
		return;
	}
	prepareArtPollResults(pollId);
	postForm("formArtPoll" + pollId,true,function(req){
		var msg = '';
		try { div = document.getElementById(divId);
			if (req.responseText.indexOf("<error>") >= 0){
				if ((req.responseText.indexOf("<message>") >= 0) && (req.responseText.indexOf("</message>") >= 0)){
					alert('Îøèáêà: ' + req.responseText.slice(req.responseText.indexOf("<message>") + 9, req.responseText.indexOf("</message>")));
				}
			} else {
				if ((req.responseText.indexOf("<message>") >= 0) && (req.responseText.indexOf("</message>") >= 0)){
					msg = '<p class="vote_message_ok">' + req.responseText.slice(req.responseText.indexOf("<message>") + 9, req.responseText.indexOf("</message>")) + '</p>';
				}
				if ((req.responseText.indexOf("<results><![CDATA[") >= 0) && (req.responseText.indexOf("]]></results>") >= 0)){
					msg += req.responseText.slice(req.responseText.indexOf("<results><![CDATA[") + 18, req.responseText.indexOf("]]></results>"));
				}
				div.innerHTML = msg;
			}
		} catch(err) {}
	});
}
function prepareArtPollResults(pollId)
{
	var formName = "formArtPoll" + pollId;
	var form = document.forms[formName];
	if (!form || !artpolls)
	{
		return;
	}
	var i = 1;
	var el = document.getElementById(formName + "opt" + i);
	var votes = "";
	while (el)
	{
		if (el.checked)
		{
			votes += ", " + artpolls[pollId][i]["id"];
		}
		i++;
		el = document.getElementById(formName + "opt" + i);
	}
	form.elements["votes"].value = (votes.length > 0) ? votes.slice(2) : "";
}

function bookmarksite(href, title){
if (document.all)
window.external.AddFavorite(href, title);
else if (window.sidebar)
window.sidebar.addPanel(title, href, "")
}

function mm_show (num, razdel, razdelname){
	razdel_id = "mm2_" + razdel;
	num2 = num * 2;
	num3 = num2 + 1;
	for (i=1; i<=num; i++) {
		document.getElementById("mm2_" + i).style.display = 'none';
	}
	document.getElementById(razdel_id).style.display = '';
	
	razdelname_id = "mm" + razdelname;
	for (i=1; i<=num3 ; i++) {
		document.getElementById("mm"+i).className  = 'mm';
	}
	for (i=2; i<=num2 ; i=i+2) {
	document.getElementById("mmi" + i).src  = 'http://images.izvestia.ru/week/sys/mm_fl_mask.gif';
	}

	document.getElementById("mm" + (razdelname-1)).className  = 'mm_selected_left';
	document.getElementById("mm" + (razdelname+1)).className  = 'mm_selected_right';		
	document.getElementById(razdelname_id).className  = 'mm_selected';
	document.getElementById("mmi" + razdelname).src  = 'http://images.izvestia.ru/week/sys/mm_fl_selected_mask.gif';
}

function dm_show (num, razdel, razdelname){
	razdel_id = "dm2_" + razdel;
	num2 = num * 2;
	num3 = num2 + 1;
	for (i=1; i<=num; i++) {
		document.getElementById("dm2_" + i).style.display = 'none';
	}
	document.getElementById(razdel_id).style.display = '';
	
	razdelname_id = "dm" + razdelname;
	for (i=1; i<=num3 ; i++) {
		document.getElementById("dm"+i).className  = 'dm';
	}
	for (i=2; i<=num2 ; i=i+2) {
	document.getElementById("dmi" + i).src  = 'http://images.izvestia.ru/week/sys/mm_fl_mask.gif';
	}

	document.getElementById("dm" + (razdelname-1)).className  = 'dm_selected_left';
	document.getElementById("dm" + (razdelname+1)).className  = 'dm_selected_right';		
	document.getElementById(razdelname_id).className  = 'dm_selected';
	document.getElementById("dmi" + razdelname).src  = 'http://images.izvestia.ru/week/sys/dm_fl_selected_mask.gif';
}

function mm_hilite (razdel){
	razdel_id = "mm" + razdel;			
	document.getElementById(razdel_id).className  = 'mm_hilite';			
}
function mm_unhilite (razdel){
	razdel_id = "mm" + razdel;
	document.getElementById(razdel_id).className  = 'mm';	
}
