$(document).ready(function() { 
	//Делаем активными ссылки на социальные сервисы
	$('#social a').hover(
		function () {
			$(this).toggleClass('active');
		},
		function () {
			$(this).toggleClass('active');
		}	
	);
	
	//получаем все ТВ
	var jqTVs = $('.tv'),
		jqSteps = $('.step');
	
	jqSteps.each(function(i) {
		this.TV = jqTVs[jqTVs.length-i-1];
		$(this).hover(
			function () { // on
				//убираем active с других ступеней
				$('.step.active:not(.on)').removeClass('active');
				//устанвливаем текущей ступени active
				$(this).addClass('active');

				//убираем active с других ТВ
				jqTVs.filter('not(.on)').removeClass('active');
				//устанвливаем текущему ТВ active
				$(this.TV).addClass('active');
			},
			function () { // out
				// console.log($(this).hasClass('on'))
				 if (!$(this).hasClass('on')) {
					$(this).removeClass('active');
					$(this.TV).removeClass('active');
				 }
			}
		);
	});
	jqTVs.each(function(i) {
		this.step = jqSteps[jqSteps.length-i-1];
		$(this).hover(
			function () { // on
				//убираем active с других ступеней
				$('.tv.active:not(.on)').removeClass('active');
				//устанвливаем текущей ступени active
				$(this).addClass('active');

				//убираем active с других ТВ
				jqSteps.filter('not(.on)').removeClass('active');
				//устанвливаем текущему ТВ active
				$(this.step).addClass('active');
			},
			function () { // out
				// console.log($(this).hasClass('on'))
				 if (!$(this).hasClass('on')) {
					$(this).removeClass('active');
					$(this.step).removeClass('active');
				 }
			}
		);
	});
	$('.step:not(.on)').click(function () {
		window.location = $(this).children('a').attr('href');
	}); 
	$('.tv:not(.on)').click(function () {
		window.location = $(this.step).children('a').attr('href');
	}); 
});


















/*
 * Обработка исключений objForm - объект формы (опционально)
 */
ExceptionMultiline = function(objForm) {
	this.arrExceptions = [];
	if (objForm)
		this.jqForm = $(objForm);
	return this;
}
ExceptionMultiline.prototype.arrExceptions = []; // здесь будут храниться
													// исключения
ExceptionMultiline.prototype.jqForm = null; // JQ объект формы
// сбрасываем объект исключений до исходного состояния (удаляем крестики и все
// исключения)
ExceptionMultiline.prototype.reset = function() {
	this.arrExceptions = []; // удаляем уже выброшенные исключения
	if (this.jqForm)
		this.jqForm.find("img.error").remove();
}
// добавляем очередное исключение в массив
ExceptionMultiline.prototype.add = function(data) {
	var objData = typeof (data) == "string" ? {
		text : data
	} : data; //
	this.arrExceptions.push(objData);
	return this;
}
// добавляем сразу несколько исключений
ExceptionMultiline.prototype.addMany = function(objData) {
	var size = objData.length;
	if (!size)
		return;
	for ( var i = size; i--;) {
		this.add(objData[i]);
	}
	return this;
}
// Добавить исключение и сразу выбросить
ExceptionMultiline.prototype.throwOne = function(data) {
	var objData = typeof (data) == "string" ? {
		text : data
	} : data; //
	// если задана форма и при этом для данного элемента есть элемент для
	// привязки
	if (this.jqForm && objData.selector && objData.selector.length) {
		var html = "<a href='#' title='"
				+ objData.text
				+ "' onclick='alert($(this).attr('title'));return false;'>\
                <img alt='' class='errOrCor' src='"
				+ W_IMAGES + "icons/error.gif'>\
              </a>";
		$(objData.selector).append(html);
	} else { // если форма не задана
		alert(" - " + objData.text);
	}
	return this;
}
// Выбросить все добавленные исключения
ExceptionMultiline.prototype.throwAll = function() {
	var size = this.arrExceptions.length;
	if (size) { // если исключения есть
		if (this.jqForm) { // если задана форма
			if (this.jqForm)
				this.jqForm.find("img.error").remove();
			for ( var i = size; i--;) {
				if (this.arrExceptions[i].selector
						&& this.arrExceptions[i].selector.length) {
					var html = "<a href='#' title='"
							+ this.arrExceptions[i].text
							+ "' onclick='alert($(this).attr(\"title\"));return false;'>\
                        <img alt='' class='error' src='"
							+ W_IMAGES
							+ "icons/error.gif'>\
                      </a>";
					$(html).insertAfter(this.arrExceptions[i].selector);
				} else
					alert(" - " + this.arrExceptions[i].text);
			}
		} else { // если форма не задана
			alert(this.getPlain());
		}
		this.arrExceptions = []; // удаляем уже выброшенные исключения
	}
	return this;
}
// Проверяем, есть ли исключения
ExceptionMultiline.prototype.exist = function() {
	return this.arrExceptions.length > 0;
}
// Возвращает оформленный для вывода список ошибок
// options.bullet (string) - элемент списка
// options.separator (string) - разделитель (\n, <br />)
ExceptionMultiline.prototype.getPlain = function(options) {
	var settings = {
		bullet : " - ",
		separator : "\n"
	};
	jQuery.extend(settings, options);
	var size = this.arrExceptions.length;
	if (!size)
		return "";
	var arrExceptionsTexts = [];
	for ( var i = size; i--;) {
		arrExceptionsTexts.push(this.arrExceptions[i].text);
	}
	return settings.bullet
			+ arrExceptionsTexts.join(settings.separator + settings.bullet);
}


















/* перед закрывающим тегом </head>*/

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-21067548-1']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);

(function() {
  var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
  ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();


