var xmlDoc;
function toggleStylesheet(anchor1, anchor2)
{
	var objToggle = elementById('pvswitch');
	var cssScreen = elementById('screenstyle');
	var cssPrint = elementById('printstyle');
	if (cssScreen.href!=cssPrint.href)
	{
		mainstylehref=cssScreen.href;
		cssScreen.href=cssPrint.href;
		objToggle.innerHTML = anchor2;
	} 
	else 
	{
		cssScreen.href=mainstylehref;
		objToggle.innerHTML = anchor1;
	}
	objToggle.blur();
	return false;
}
function createXmlDoc()
{
	var xmlDoc = null;
	/*@cc_on @*/
	/*@if (@_jscript_version >= 5)
	// JScript gives us Conditional compilation, we can cope with old IE versions.
	// and security blocked creation of the objects.
	 try {
	  xmlDoc = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
	  try {
	   xmlDoc = new ActiveXObject("Microsoft.XMLHTTP");
	  } catch (E) {
	   xmlDoc = false;
	  }
	 }
	@end @*/
	if (!xmlDoc && typeof XMLHttpRequest!='undefined') {
		try 
		{
			xmlDoc = new XMLHttpRequest();
		} catch (e) 
		{
			xmlDoc = false;
		}
	}
	if (!xmlDoc && window.createRequest) 
	{
		try 
		{
			xmlDoc = window.createRequest();
		} catch (e) 
		{
			xmlDoc = false;
		}
	}
	return xmlDoc;
}
// output region result
function outVotingResult()
{	
    if (xmlDoc.readyState == 4) 
	{	
		elementById('voting').setAttribute('class', '');
		elementById('voting').setAttribute('className', '');

		if (elementById('voting').className) elementById('voting').className = '';
		if (xmlDoc.status == 200)
		{
			elementById('voting').innerHTML = xmlDoc.responseText;
		}
	}
}
// get vote result
function getVotingResult(f)
{
	var votingQuestionId = f.votingid.value;
	var votingAnswerId = -1;
	for (i=0; i<f.answer.length; i++)
	{
		if (f.answer[i].checked)  votingAnswerId = f.answer[i].value;
	}
	if (votingAnswerId!=-1)
	{
		xmlDoc = createXmlDoc();
		if (xmlDoc)
		{
		
			elementById('voting').setAttribute('class', 'votingloader');
			elementById('voting').setAttribute('className', 'votingloader');
			xmlDoc.onreadystatechange = outVotingResult;
			xmlDoc.open("GET", 'http://' + location.host + '/ajaxvoting/'+votingQuestionId+'/'+votingAnswerId+'/'+Math.random()+'/', true);
			xmlDoc.send(null);
			return false;
		}
		else return true;
	} else return false;
}
// get element of page by id (cross-browser)
function elementById(Name) {
	if(navigator.appName.indexOf("Microsoft")!=-1) {
	// IE
		if(!eval('document.all("'+Name+'")')) return 0; else return document.all(Name);
  	}
  	else {
	// NN & others
    		if(!eval('document.'+Name))  {
			if (document.getElementById) {
				return eval('document.getElementById("'+Name+'")');
			} else
			return 0;
    		}
    		else
		return eval('document.'+Name);
	}
}
// set element property (cross-browser)
function setProp(Name, Param, Val) {
    		if(!eval('document.'+Name))  {
			if (document.getElementById) {
				eval('document.getElementById("'+Name+'").style.'+Param+'='+Val);
			} else
			return 0;
    		}
    		else
		eval('document.'+Name+'.'+Param+'='+Val);
}
// get element property (cross-browser)
function getProp(Name, Param) {
    		if(!eval('document.'+Name))  {
			if (document.getElementById) {
				return eval('document.getElementById("'+Name+'").style.'+Param);
			} else
			return 0;
    		}
    		else
		return eval('document.'+Name+'.'+Param);
}
// set element property (cross-browser)
function setProp2(Obj, Param, Val) {
	if (Obj.style) Obj.style[Param] = Val; else return 0;
}
// get element property (cross-browser)
function getProp2(Obj, Param) {
	if (Obj.style) return Obj.style[Param]; else return 0;
}
// send mail
function sendMail(a, z, b) 
{
	location.href = 'mai'+'lto'+':'+a+'@'+b;
	return false;
}
// this handy function from Simon Willison allows you to stack up 'window.onload' events without them stepping on each other's toes
function addLoadEvent(func) 
{
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}
// switch visibility (for left menu)
function switchVisibility(obj)
{
	var v = (getProp2(obj, 'display').indexOf('none')==-1) ? 'none' : '';
	setProp2(obj, 'display', v);
	var tmp = obj.parentNode.getElementsByTagName('a');
	if (tmp.length>0) 
	{
		tmp = tmp[0];
		setProp2(tmp, 'borderBottom', ((v=='')?'1px solid #fff':'none'));
	}
}
// left menu click handler
function leftMenuClick(evt)
{
	if (!evt) evt = window.event;	
	var el = false;
	if (evt.target) 
	{
		evt.preventDefault(); 
		el = evt.target; 
	}
	else el = evt.srcElement;
	if (!el) return false;
	
	// expand / collapse item
	var parent = el.parentNode;
    var ols = parent.getElementsByTagName('ol');
	for (var i = 0; i < ols.length; i++) 
	{
		if (ols[i].parentNode!=parent) continue;
		switchVisibility(ols[i]);
	}
	el.blur();
	return false;
}
// setup left menu if exist
function setupLeftMenu()
{
	var leftMenu = elementById('leftmenu');
    if(!document.getElementsByTagName) return;	
	if (!leftMenu) return;
    var anchors = leftMenu.getElementsByTagName('a');
    for (var i = 0; i < anchors.length; i++) 
	{
        var anchor = anchors[i];
		if (anchor.href&&anchor.href.indexOf('javascript')!=-1) 
		{
			if(window.addEventListener){ // Mozilla, Netscape, Firefox
				anchor.addEventListener('click', leftMenuClick, false);
			} else { // IE
				anchor.attachEvent('onclick', leftMenuClick);
			}
		}
		if (anchor.href&&anchor.href.indexOf('javascript')==-1&&anchor.parentNode.parentNode.tagName&&anchor.parentNode.parentNode.tagName.toLowerCase()=='ul')
		{			
			setProp2(anchor, 'borderBottom', 'none');
		}		
	}	
	var ols = leftMenu.getElementsByTagName('ol');
    for (var i = 0; i < ols.length; i++) 
	{
		var tmp = ols[i].getElementsByTagName('li');
		if (tmp.length>0) setProp2(tmp[0], 'borderTop', 'none');
	    var anchors = ols[i].getElementsByTagName('a');
		var need = true;
		for (var j = 0; j < anchors.length; j++)
		{
			if (!anchors[j].href||anchors[j].href=='')
			{
				need = false;
				break;
			}
		}
		if (need) setProp2(ols[i], 'display', 'none');
		var tmp = ols[i].parentNode.getElementsByTagName('a');
		if (tmp.length>0) setProp2(tmp[0], 'borderBottom', ((!need)?'1px solid #fff':'none'));
	}
}
function printMail(a, z, b)
{	
	if (a!='') document.writeln('<a href="mailto:'+a+'@'+b+'">'+a+'@'+b+'</a>');
}
function dwrite(s)
{
	document.writeln(s);
}
function mail(a, b, c)
{
	document.writeln(a+'@'+c);
}
function showRegForm()
{
	setProp('regtxt', 'display', "'none'");
	setProp('regform', 'display', "''");
}
function hideRegForm()
{
	setProp('regtxt', 'display', "''");
	setProp('regform', 'display', "'none'");
}
function openUrl(s) 
{
	window.open(s);
}

function submitCompForm()
{
	var cf = elementById('compform');
	cf.submit();
}

// starting up
addLoadEvent(function() 
{
	try {document.execCommand("BackgroundImageCache", false, true);} catch(err) {}
});

var curs = 1;
function recheck(a,b,cursX)
{
	if (cursX!='-1')
	{
		curs = parseFloat(cursX.replace(/,/, "."));
	}
	var d = elementById('cman').value;
	if (isNaN(d))
	{
		d = 1;
		elementById('cman').value = 1;
	}
	if (d<1)
	{
		d = 1;
		elementById('cman').value = 1;
	}
	var m = Math.round(a*d*(100-b)*curs)/100;
	elementById('itogo').innerHTML = m;
}