var sum;
var fields;
function clear(e)
	{
	if(e.value == 0)
		e.value = '';
	}
function recalc(f)
	{
	sum = 0;
	fields = f.getElementsByTagName('input');
	var i;
	var d = fields.length;
	for(i = 0; i != d; ++i)
		if(fields[i].id != 'sum' && fields[i].type != 'button' && fields[i].parentNode.className != 'inp')
			{
			fields[i].value = Math.abs(parseInt(fields[i].value));
			if(fields[i].value == 'NaN')
				fields[i].value = 0;
			if((fields[i].parentNode.className == 'qnt' || (fields[i].parentNode.className == 'rad' && fields[i].checked)) && fields[i].parentNode.getElementsByTagName('span').length)
				{
				if(fields[i].parentNode.className == 'rad')
					sum += parseInt(fields[i].parentNode.getElementsByTagName('span')[0].innerHTML);
				else
					sum += fields[i].value * fields[i].parentNode.getElementsByTagName('span')[0].innerHTML;
				}
			}
	document.getElementById('sum').value = sum;
	}
function chkForm(fi)
	{
	var i;
	var err = 0;
	var d = fields.length;
	for(i = 0; i != d; ++i)
		if(fields[i].className.indexOf('req') != -1 && fields[i].value == '')
			{
			fields[i].style.borderColor = 'red';
			err = 1;
			}
		else
			{
			fields[i].style.borderColor = '';
			}
	if(!err)
		fi.submit();
	else
		{
		document.getElementById('err').style.display = 'block';
		location.href = '#err';
		}
	}	
function initFormZam()
	{
	f = document.forms;
	var i;
	var d = f.length;
	var total;
	i = 0;
	while(i != d && f[i].className != 'zam')
		++i;
	if(f[i] && f[i].className == 'zam')
		{
		document.getElementById('sum').parentNode.style.display = 'block';
		document.getElementById('sum').disabled = 1;
		f = f[i];
		fields = f.getElementsByTagName('input');
		d = fields.length;
		for(i = 0; i != d; ++i)
			if(fields[i].type == 'submit')
				{
				fields[i].type = 'button';
				fields[i].onclick = function() {return chkForm(f)};
				}
			else if(fields[i].parentNode.className != 'inp')
				{
				fields[i].onchange = fields[i].onkeyup = function() {return recalc(f)};
				fields[i].onfocus = function() {return clear(this)};
				}
		recalc(f);
		}
	}
addToLaunch(initFormZam);
