function visibl(id) {
	var o = document.getElementById(id);
	if (o.style.display=='none') {
		o.style.display = 'block';
	} else o.style.display = 'none';
}
function InsertFlashObj(sId, sSrc, sWidth, sHeight, bReturn) {
     var result = "<object id='"+sId+"' width='"+sWidth+"' height='"+sHeight+"' align='middle' classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0'><param name='allowScriptAccess' value='sameDomain' /><param name='movie' value='"+sSrc+"' /><param name='quality' value='high' /><param name='wmode' value='transparent'/><embed src='"+sSrc+"' width='"+sWidth+"' height='"+sHeight+"' name='"+sId+"' align='middle' quality='high' wmode='transparent' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' /></object>";
     if (bReturn) return result;
     document.write(result);
}







var ros = {
	'углеродистая сталь': 7850,
	'04Х18Н10': 7900,
	'06XH28MДT': 7960,
	'08X13': 7700,
	'08X17T': 7700,
	'08X20H14C2': 7700,
	'08X18H10': 7900,
	'08X18H10T': 7900,
	'08X18H12T': 7950,
	'08X17H15M3T': 8100,
	'08X22H6T': 7600,
	'08X18H12Б': 7900,
	'10X17H13M2T': 8000,
	'10X23H18': 7950,
	'12X13': 7750,
	'20Х13': 7760,
	'12X17': 7700,
	'12X18H10T': 7950,
	'12X18H12T': 7900,
	'12X18H9': 7900,
	'15X25T': 7600,
	'17X18H9': 7900,
	'дюралюминий': 2850,
	'титан': 4540,
	'медь': 8960,
	'латунь': 8600,
	'свинец': 11340,
	'золото': 19300
};

var types =
{
	1: 'труба круглая',
	2: 'труба прямоугольная',
	3: 'труба квадратная',
	4: 'круг',
	5: 'квадрат',
	6: 'лист',
	7: 'шестигранник'
};

var mns =
{
	5: 0.170,
	5.5: 0.206,
	6: 0.245,
	6.5: 0.287,
	7: 0.333,
	7.5: 0.382,
	8.0: 0.435,
	8.5: 0.491,
	9: 0.551,
	9.5: 0.641,
	10: 0.680,
	11: 0.823,
	12: 0.979,
	13: 1.149,
	14: 1.332,
	15: 1.530,
	16: 1.740,
	17: 1.965,
	18: 2.203,
	19: 2.454,
	20: 2.719,
	21: 2.998,
	22: 3.290,
	23: 3.596,
	24: 3.916,
	25: 4.249,
	26: 4.596,
	27: 4.956,
	28: 5.330,
	29: 5.717,
	30: 6.118,
	31: 6.533,
	32: 6.961,
	33: 7.403,
	34: 7.859,
	35: 8.328,
	36: 8.811,
	37: 9.307,
	38: 9.817,
	39: 10.34,
	40: 10.88,
	41: 11.43,
	42: 12.00,
	43: 12.57,
	44: 13.16,
	45: 13.77,
	46: 14.39,
	47: 15.02,
	48: 15.67,
	49: 16.32,
	50: 17.00,
	55: 20.57,
	60: 24.48,
	65: 28.72,
	70: 33.32,
	75: 38.24,
	80: 43.51,
	85: 48.12,
	90: 55.07,
	95: 61.36,
	100: 67.98
};

function calcParams(params)
{
	var pi = 3.1415926;
	var ro = ros[params['ro']];
	var kp = ro / 7850;
	var l = parseFloat(params['l']);
	var m = parseFloat(params['m']);
	var m1, l1, s, d, a, b, r, mn;

	switch (params['type'])
	{
		case '1':
			s = parseFloat(params['s']) / 1000;
			d = parseFloat(params['d']) / 1000;
			m1 = pi * ro * s * (d - s);
			break;

		case '2':
			s = parseFloat(params['s']);// / 1000;
			a = parseFloat(params['a']);// / 1000;
			b = parseFloat(params['b']);// / 1000;
			m1 = kp * 0.0157 * s * (a + b - 2.86 * s);
			break;

		case '3':
			s = parseFloat(params['s']);// / 1000;
			a = parseFloat(params['a']);// / 1000;
			m1 = kp * 0.0157 * s * (2*a - 2.86 * s);
			break;

		case '4':
			r = parseFloat(params['d']) / 2000;
			m1 = pi * ro * r*r;
			break;

		case '5':
			a = parseFloat(params['a']) / 1000;
			m1 = a*a * ro;
			break;

		case '6':
			s = parseFloat(params['s']) / 1000;
			a = parseFloat(params['a']);
			b = parseFloat(params['b']);
			m1 = a * b * s * ro;
			break;

		case '7':
			mn = mns[params['mn']];
			m1 = mn*kp;
			break;

		default:
			return null;
	}

	l1 = 1 / m1;
	
	if (params['m']=='' && params['l']!='')
		m = m1 * l;
	else if (params['l']=='' && params['m']!='')
		l = l1 * m;
	else
		return null;

	return {'m': m, 'm1': m1, 'l': l, 'l1': l1};
}

function calcAddParam(params, name)
{
	var form = document.getElementById('calcForm');
	
	if (form && form.elements[name])
	{
		if (name=='ml')
			params[name] = form.elements[name][0].checked ? 'm' : 'l';
		else if (name=='ro' || name=='type' || name=='mn')
			params[name] = form.elements[name].options[form.elements[name].selectedIndex].value;
		else
			params[name] = form.elements[name].value.replace(',', '.');
	}
	else
		params[name] = '';
	return params;
}

function calc()
{
	var params = new Object();
	calcAddParam(params, 'ml');
	calcAddParam(params, 'type');
	calcAddParam(params, 'ro');
	calcAddParam(params, 'mn');
	calcAddParam(params, 'l');
	calcAddParam(params, 'm');
	calcAddParam(params, 's');
	calcAddParam(params, 'd');
	calcAddParam(params, 'a');
	calcAddParam(params, 'b');
	
	if (!params['ml'])
		params['ml'] = 'm';

	var r = calcParams(params);



	var html = '<form id="calcForm"><table cellspacing="3" cellpadding="0">';

	html += '<tr><td class="calcFormType" width="30%">Тип</td><td class="calcFormType"><select name="type" onchange="calc()"><option></option>';
	for (type in types)
		html += '<option value="'+type+'"'+(params['type']==type ? ' selected="selected"' : '')+'>'
				+types[type]+'</option>';
	html += '</select></td></tr>';

	if (params['type']!='')
	{
		html += '<tr><td>Материал</td><td><select name="ro">';
		for (ro in ros)
			html += '<option'+(params['ro']==ro ? ' selected="selected"' : '')+'>'+ro+'</option>';
		html += '</select></td></tr>';

		switch (params['type'])
		{
			case '1':
				html += '<tr><td>Стенка, мм</td><td><input type="text" name="s" value="'+params['s']+'" /></td></tr>';
				html += '<tr><td>Диаметр, мм</td><td><input type="text" name="d" value="'+params['d']+'" /></td></tr>';
				break;

			case '2':
				html += '<tr><td>Стенка, мм</td><td><input type="text" name="s" value="'+params['s']+'" /></td></tr>';
				html += '<tr><td>Сторона A, мм</td><td><input type="text" name="a" value="'+params['a']+'" /></td></tr>';
				html += '<tr><td>Сторона B, мм</td><td><input type="text" name="b" value="'+params['b']+'" /></td></tr>';
				break;

			case '3':
				html += '<tr><td>Стенка, мм</td><td><input type="text" name="s" value="'+params['s']+'" /></td></tr>';
				html += '<tr><td>Сторона, мм</td><td><input type="text" name="a" value="'+params['a']+'" /></td></tr>';
				break;

			case '4':
				html += '<tr><td>Диаметр, мм</td><td><input type="text" name="d" value="'+params['d']+'" /></td></tr>';
				break;

			case '5':
				html += '<tr><td>Сторона, мм</td><td><input type="text" name="a" value="'+params['a']+'" /></td></tr>';
				break;

			case '6':
				html += '<tr><td>Толщина, мм</td><td><input type="text" name="s" value="'+params['s']+'" /></td></tr>';
				html += '<tr><td>Ширина, м</td><td><input type="text" name="a" value="'+params['a']+'" /></td></tr>';
				html += '<tr><td>Длина, м</td><td><input type="text" name="b" value="'+params['b']+'" /></td></tr>';
				break;

			case '7':
				html += '<tr><td>Номер</td><td><select name="mn">';
				for (mn in mns)
					html += '<option'+(params['mn']==mn ? ' selected="selected"' : '')+'>'+mn+'</option>';
				html += '</select></td></tr>';
				break;
		}



		switch (params['type'])
		{
			case '1':
			case '2':
			case '3':
			case '4':
			case '5':
			case '7':
				html += '<tr><td colspan="2"><input type="radio" name="ml" value="m"'
						+(params['ml']=='m' ? ' checked="checked"' : '')
						+' onclick="calc()" /> Масса по длине<br /><input type="radio" name="ml" value="l"'
						+(params['ml']=='l' ? ' checked="checked"' : '')
						+' onclick="calc()" /> Длина по массе</td></tr>';

				switch (params['ml'])
				{
					case 'm':
						html += '<tr><td>Длина, м</td><td><input type="text" name="l" value="'+params['l']+'" /></td></tr>';
						if (r && r['m'])
						{
							html += '<tr><td>Масса одного метра, кг</td><td><b>'+(parseInt(r['m1']*100) / 100)+'</b></td></tr>';
							html += '<tr><td>Масса расчетная, кг</td><td><b>'+(parseInt(r['m']*100) / 100)+'</b></td></tr>';
						}
						break;

					case 'l':
						html += '<tr><td>Масса, кг</td><td><input type="text" name="m" value="'+params['m']+'" /></td></tr>';
						if (r && r['l'])
						{
							html += '<tr><td>Длина одного кг, м</td><td><b>'+(parseInt(r['l1']*100) / 100)+'</b></td></tr>';
							html += '<tr><td>Длина расчетная, м</td><td><b>'+(parseInt(r['l']*100) / 100)+'</b></td></tr>';
						}
						break;
				}
				break;

			case '6':
				html += '<tr><td>Количество листов, шт</td><td><input type="text" name="l" value="'+params['l']+'" /></td></tr>';
				if (r && r['m'])
				{
					html += '<tr><td>Масса одного листа, кг</td><td><b>'+(parseInt(r['m1']*100) / 100)+'</b></td></tr>';
					html += '<tr><td>Масса расчетная, кг</td><td><b>'+(parseInt(r['m']*100) / 100)+'</b></td></tr>';
				}
				break;
		}

		html += '<tr><td colspan="2" align="center"><input type="button" value="Рассчитать" onclick="calc()" /></td></tr>';
	}

	html += '</table></form>';
//	alert(html);

	var o = document.getElementById('calc');
	if (o)
		o.innerHTML = html;
}

