Shadowbox.loadSkin('classic', '/images/js/skin');

$(document).ready(function(){
	$('.catalog-item-menu a img[alt!=button5]').mouseover(function(){
		if ($(this).hasClass('selected')) return;
		$(this).attr('src', '/images/catalog/' + this.alt + 'b.png');
	}).mouseout(function(){
		if ($(this).hasClass('selected')) return;
		$(this).attr('src', '/images/catalog/' + this.alt + 'n.png');
	});

	$('.integer').keyup(function(){
		x = parseInt(this.value);
		if (isNaN(x)) x = 0;

		this.value = Math.abs(x);
	});

	Shadowbox.init({
		handleOversize:'drag',
		onOpen: function() {
			if (!$.browser.msie) return true;
			$('#shadowbox_container').css({marginTop: 0 + (document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px'});
		}
	});

	if (top.location.hash) {
		var s = /#b([1-4])_([0-9]+)/.exec(top.location.hash);
		if (s)
			if (s[1] && s[2]) {
				selectTab(s[1], s[2], document.getElementById(top.location.hash));
			}
	}

	$('#tags').change(function(e){
		top.location.href = $('#tags').val();
	});
});

function selectTab(tab, id) {
	lastAlt = $('.b_' + id + '[class*=selected]').attr('alt');
	$('.b_' + id + '[class*=selected]').removeClass('selected').attr('src', '/images/catalog/' + lastAlt + 'n.png');

	$('#b' + tab + '_' + id).addClass('selected').attr('src', '/images/catalog/' + $('#b' + tab + '_' + id).attr('alt') + 's.png');

	$('.tab' + id + '[class*=tab-selected]').removeClass('tab-selected').css('display', 'none');

	$('#tab-' + tab + '-' + id).addClass('tab-selected').css('display', 'block');

	$('#big-image-' + id).css('display', (tab == 3) ? 'none' : 'block');
	$('#rc-' + id).css('marginLeft', (tab == 3) ? '0px' : '220px');

	if ($.browser.msie) {
		$('#book').height(80 + $('#book-content').height());

		$('#book-bottom').css({bottom: '-50px'});
		$('#book-bottom-content').css({bottom: '50px'});
	}
}

function report(id) {
	var fields = $('#i' + id + '_form input, #i' + id + '_form select');

	var data = {params: $('#params').val()};
	for (i = 0; i < fields.length; i++) {
		data[$(fields[i]).attr('name')] = $(fields[i]).val();
	}

	$.post('/calculator.php', data, function(data){
		Shadowbox.open({
			player: 'html', 
			title:	'Расчёт стоимости',
			content:data,
			width:	950,
			height:	500
		}, {
			modal:	true
		});
	}, 'html');
}

function calc(id, t) {
	// стоимость доски
	var m2 = parseFloat($('#i' + id + '_m2').val());
	if (isNaN(m2)) m2 = 1;
	if (m2 > 0) 
	{
		if (m2 > 1)
			var s = m2 + m2 / 10;
		else 
			var s = m2;
		
		var sel = parseInt($('#i' + id + '_param1').val());
		if (t == 'DOSKA') {
			var param = parseInt($('#i' + id + '_param2').val());
			
			s /= parseFloat(prices[id][sel]['prices'][param]['m2']);
			
			s = Math.ceil(s) * parseFloat(prices[id][sel]['prices'][param]['m2']) * parseFloat(prices[id][sel]['prices'][param]['price']);
		}

		if (t == 'PARKET' || t == 'ARRAY') {
			s *= prices[id][sel]['prices'];
		}
	}
	var x = 'Цена: ' + (t == 'DOSKA' ? prices[id][sel]['prices'][param]['price'] : prices[id][sel]['prices']) + ' руб/м&sup2;<br />';

	// стоимость плинтуса
	var mp = parseFloat($('#i' + id + '_mp').val());
	if (isNaN(mp)) mp = 0;
	if (mp > 0) {
		var mpp = mp;
		if (mp > 1)
			mpp += mp / 10;

		var plinth = parseInt($('#i' + id + '_plinth').val());
		s += mpp * prices_plintus[id][sel][plinth][0] + mp * prices_plintus[id][sel][plinth][1];
	}
	
	// стоимость укладки
	var pack = parseInt($('#i' + id + '_pack').val());
	if (pack) {
		s += prices_ukladka[pack]["price_type"] == 1 ? (prices_ukladka[pack]["price"] * m2) : ((s - (mp > 0 ? prices_plintus[id][sel][plinth]["price"] : 0)) / 100 * prices_ukladka[pack]["price"]);
			// либо рублей за м2, либо процент от стоимости материалов (доска / плинтус)
	}

	s = parseInt(s * 100) / 100;

	$('#price' + id).html(x + 'Стоимость: <b><u><a href="javascript:report(' + id + ');">' + s + '</a></u>&nbsp;руб.</b>');

	$('#additional_' + id).show();

	$('#lb_' + id).css({position: 'absolute', left: '8px', bottom: '0px'});
	$('#rb_' + id).css({position: 'absolute', right: '0px', bottom: '0px'});
}

var mailBlock = {};

function sendByEmail(id) {
	if (!$('#email_' + id).val()) {
		alert('Укажите адрес электронной почты!');
		$('#email_' + id).focus();
		return false;
	}

	if (mailBlock[id] != undefined) {
		alert('Отчёт уже отправляется. Дождитесь окончания отправки!');
		return false;
	}

	mailBlock[id] = id;

	var fields = $('#i' + id + '_form input, #i' + id + '_form select');

	var data = {params: $('#params').val()};
	for (i = 0; i < fields.length; i++) {
		data[$(fields[i]).attr('name')] = $(fields[i]).val();
	}

	$('#sbm_' + id).text('Идёт отправка отчёта...');
	$.post('/send_by_email.php', data, function(data){
		if (data == 'ok') {
			alert('Расчёт стоимости отправлен на ваш адрес электронной почты');
		} else {
			alert('Произошла ошибка при формировании отчёта: проверьте, что вы корректно указали адрес электронной почты');
		}
		$('#sbm_' + id).text('Отправьте мне расчёт на электронную почту');
		delete mailBlock[id];
	}, 'html');
	return false;
}

var commBlock = {};

function sendCommercial(id, xtype) {
	if (!$('#email_' + id).val()) {
		alert('Укажите адрес электронной почты!');
		return false;
	}

	if (commBlock[id] != undefined) {
		alert('Отчёт уже отправляется. Дождитесь окончания отправки!');
		return false;
	}

	commBlock[id] = id;

	var fields = $('#i' + id + '_form input, #i' + id + '_form select');

	var data = {params: $('#params').val()};
	for (i = 0; i < fields.length; i++) {
		data[$(fields[i]).attr('name')] = $(fields[i]).val();
	}

	data['xtype'] = xtype;
	data['price'] = $('#price' + id + ' a').text();

	if (xtype == 1) {
		$('#scm_' + id).text('Идёт отправка запроса...');
	} else {
		$('#tech_' + id + ' input[type=button]').hide();
	}
	$.post('/send_cm.php', data, function(data){
		if (data == 'ok') {
			alert((xtype == 1 ? 'Запрос коммерческого предложения отправлен' : 'Запрос на вызов технолога отправлен') + '. Наши менеджеры свяжутся с вами в ближайшее время');
		} else {
			alert('Произошла ошибка при отправке запроса: проверьте, что вы корректно указали адрес электронной почты' + (xtype == 2 ? ' и указали номер телефона' : ''));
		}
		if (xtype == 1) {
			$('#scm_' + id).text('Отправьте мне коммерческое предложение на электронную почту');
		} else {
			$('#tech_' + id + ' input[type=button]').show();
		}
		delete commBlock[id];
	}, 'html');
	return false;
}