function calculate(field)
{
	//Установки по умолчанию
	document.osago.prolong_comment.value = '';
	if ((field == "owner") && (document.osago.owner.value == "legal"))
	{
		document.osago.count_driver.value = "unlimited";
		document.osago.using_period.value = "1year";
	}	
				
	basic = 0;
	switch (document.osago.owner.value)
	{
		case  "natural":
		switch (document.osago.type_ts.value)
		{
			case "car" : basic = 1980; break;
			case "lorry_under16" : basic = 2025; break;
			case "lorry_over_16" : basic = 3240; break;
		}
		break;
		
		case  "legal":
		switch (document.osago.type_ts.value)
		{
			case "car" : basic = 2375; break;
			case "lorry_under16" : basic = 2025; break;
			case "lorry_over_16" : basic = 3240; break;
		}
		break;
	}
	cost = basic;

	switch (document.osago.owner_registration.value)
	{
		case "msk":
		cost = cost * 2;
		break;
		case "msk_o":
		cost = cost * 1.7;
		break;
		case "spb":
		cost = cost * 1.8;
		break;
	}

	if (document.osago.owner.value == "natural")
	{			
		switch (document.osago.count_driver.value)
		{
			case "limited":
				document.osago.age_driver.disabled = false;
			  document.osago.standing_driver.disabled = false;
				switch (document.osago.age_driver.value)
				{
					case "under22":
						switch (document.osago.standing_driver.value)
						{
							case "under2":
								cost = cost * 1.3;
								break;
							case "over2":
								cost = cost * 1.2;
								break;
						}
						break;
					case "over22":
					switch (document.osago.standing_driver.value)
					{
						case "under2":
							cost = cost * 1.15;
							break;
						case "over2":
							cost = cost * 1;
							break;
					}
					break;
				}
				break;
			case "unlimited":
				document.osago.age_driver.disabled = true;
			  document.osago.standing_driver.disabled = true;
				cost = cost * 1.5;
				break;
		}		

		switch (document.osago.using_period.value)
		{
			case "1year":
			cost = cost * 1;
			break;
			case "6month":
			cost = cost * 0.7;
			break;
			case "7month":
			cost = cost * 0.8;
			break;
			case "8month":
			cost = cost * 0.9;
			break;
			case "9month":
			cost = cost * 0.95;
			break;
		}

		if (document.osago.type_ts.value == "car")
		{
			document.osago.power_ts.disabled = false;
			switch (document.osago.power_ts.value)
			{
				case "under50":
				cost = cost * 0.5;
				break;
				case "from50to70":
				cost = cost * 0.7;
				break;
				case "from70to100":
				cost = cost * 1;
				break;
				case "from100to120":
				cost = cost * 1.3;
				break;
				case "from120to150":
				cost = cost * 1.5;
				break;
				case "over150":
				cost = cost * 1.7;
				break;
			}
		}
		else
		{
			document.osago.power_ts.disabled = true;
		}

	}
	else
	{
		switch (document.osago.count_driver.value)
		{
			case "limited":
				document.osago.age_driver.disabled = false;
			  document.osago.standing_driver.disabled = false;
				switch (document.osago.age_driver.value)
				{
					case "under22":
						switch (document.osago.standing_driver.value)
						{
							case "under2":
								cost = cost * 1.3;
								break;
							case "over2":
								cost = cost * 1.2;
								break;
						}
						break;
					case "over22":
					switch (document.osago.standing_driver.value)
					{
						case "under2":
							cost = cost * 1.15;
							break;
						case "over2":
							cost = cost * 1;
							break;
					}
					break;
				}
				break;
			case "unlimited":
				document.osago.age_driver.disabled = true;
			  document.osago.standing_driver.disabled = true;
				cost = cost * 1.5;
				break;
		}		

		if (document.osago.type_ts.value == "car")
		{
			document.osago.power_ts.disabled = false;
			switch (document.osago.power_ts.value)
			{
				case "under50":
				cost = cost * 0.5;
				break;
				case "from50to70":
				cost = cost * 0.7;
				break;
				case "from70to100":
				cost = cost * 1;
				break;
				case "from100to120":
				cost = cost * 1.3;
				break;
				case "from120to150":
				cost = cost * 1.5;
				break;
				case "over150":
				cost = cost * 1.9;
				break;
			}

			switch (document.osago.using_period.value)
			{
				case "1year":
				cost = cost * 1;
				break;
				case "6month":
				cost = cost * 0.7;
				break;
				case "7month":
				cost = cost * 0.8;
				break;
				case "8month":
				cost = cost * 0.9;
				break;
				case "9month":
				cost = cost * 0.95;
				break;
			}
		}
		else
		{
			document.osago.power_ts.disabled = true;
		}
	}
	
	switch (document.osago.prolong.value)
	{
		case "prolong_not_1": cost = cost * 0.95; break;
		case "prolong_not_2": cost = cost * 0.9; break;
		case "prolong_not_3": cost = cost * 0.85; break;
		case "prolong_not_4": cost = cost * 0.8; break;
		case "prolong_not_5": cost = cost * 0.75; break;
		case "prolong_not_6": cost = cost * 0.7; break;
		case "prolong_not_7": cost = cost * 0.65; break;
		case "prolong_not_8": cost = cost * 0.6; break;
		case "prolong_not_9": cost = cost * 0.55; break;
		case "prolong_not_10": cost = cost * 0.5; break;		
		case "prolong_is":
			cost = 0
			document.osago.prolong_comment.value = "!!! Требуется индивидуальный расчет."
			break;
	}
	document.osago.cost.value = MoneyFormat(cost);
};

function roundEx(x, dgt)
{
	var p, n;
	p=Math.floor(Math.pow(10,dgt));
	(x>0) ? n = Math.floor(x) : n = Math.ceil(x);
	return(n + Math.round((x-n)*p)/p);
};

function MoneyFormat(x)
{
	var p,i,j;
	var s="", s2="";
	p=roundEx(x,2);	s=p.toString();
	p=s.lastIndexOf(".");
	if (p>0) {s2="." + s.substring(p+1, s.length); s = s.substring(0,p);} else {s2=".00";};
	if(s2.length<3)s2+="0";	j=1; i=s.length;
	for((i%3)?i=Math.floor(i/3):i=Math.floor(i/3)-1; i>0;--i)
	{
		p=s.length-(3*j)-(j-1);j++;
		s=s.substring(0,p) + ""+ s.substring(p,s.length);
		//s=s.substring(0,p) + " "+ s.substring(p,s.length);
	}
	return(s+s2);
};

function CheckForm(type)
{
	//kasko
	//osago
	//medical
	//property
	
	errors = "";
	
	if (document.osago.fio.value == "") errors = errors + 'Укажите пожалуйста ваши Ф.И.О. чтобы нам было удобнее к Вам обращаться.  ';
	if (document.osago.phone.value == "") errors = errors + 'Оставьте пожалуйста Ваш контактный телефон. При отсутствии телефона мы не сможем с Вами связаться.  ';


//        if (document.osago.aspam.value == 21)
//        {
//        }
//        else
//        {
//        errors = errors + "Антиспам-контроль: Ответ не верен !\n";
//        }


	
	if (errors == "") 
	{
		return true
	}
	else
	{
		alert(errors);
		return false;
	}	
}
