// Селекты
function selects() {

	// Селекты
	$(".select_div").click(function() {
		$(".select_div_vars").hide();
		if ($(this).find(".select_div_vars").css("display") != "block") {
			$(this).find("input").val("").parent()
			.find('.select_div_selected').text("").parent()
			.find(".select_div_vars").slideDown("fast");
		}
	});

	// Выбор в селекте
	$(".select_div a").click(function()
	{
		var s_value = $(this).attr("alt");
		var s_text  = $(this).text();
		$(this).parent().parent().parent().parent().parent()
		.find("input").val(s_value).parent()
		.find(".select_div_selected").text(s_text).parent().parent()
		.find(".select_div_vars").hide();
		return false;
	});
}

// Смена текста
var next_word = 2;
setInterval(function()
{
	$("#htext1 span").hide();
	$("#htext_"+next_word).show();
	next_word = next_word + 1;
	if (next_word > $("#htext1 span").length) next_word = 1;

}, 5000);

// Проверка E-Mail'ов
function CheckEmail(value)
{
  var re = /^\w+([\.-]?\w+)*@(((([a-z0-9]{2,})|([a-z0-9][-][a-z0-9]+))[\.][a-z0-9])|([a-z0-9]+[-]?))+[a-z0-9]+\.([a-z]{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/i;
  if(re.test(value)) { return true; } else { return false; }
}


// DOM
$(function()
{
	// Очистка форм
	$(".needClear").focus(function(){ if(this.value == this.title) this.value = ''; }).blur(function(){ if(this.value == '') this.value = this.title; });

	// Funcybox
	$(".fancy").fancybox();

	// Диспетчер
	$("#logo").hover(
		function() { $("#support_block").fadeIn(100); },
		function() { $("#support_block").hide(); }
	);

	// Форма авторизации
	$("#login_btn").click(function()
	{
		$("#regform").hide();
		$("#loginform").toggle();
		return false;
	});

	// Авторизация пользователя
	$("#l_btn").click(function()
	{
		var err_msg = "";
		var focused = false;
		var save_me = 0;

		if (($("#a_login").val() == "") || !CheckEmail($("#a_login").val())) { err_msg = err_msg+"Укажите логин\n"; if (!focused) { $("#a_login").focus(); focused = true; } }
		if ($("#a_pass").val() == "") { err_msg = err_msg+"Укажите пароль\n"; if (!focused) { $("#a_pass").focus(); focused = true; } }
		if ($("#a_save").attr("checked")) { save_me = 1 } else { save_me = 0 }

		if (err_msg == "")
		{
			$.post('/ajax/login/',
				{
					"login"	: $("#a_login").val(),
					"pass"	: $("#a_pass").val(),
					"save"	: save_me
				},
				function(json)
				{
					if (json.status)
					{
						if (json.status == "error")
						{
							alert("Ошибка: "+json.msg);
						}
						else if (json.status == "ok")
						{
							location.reload();
						}
					}
				},
			"json");
		} else alert(err_msg);
	});

	// Форма регистрации
	$("#reg_btn").click(function()
	{
		$("#loginform").hide();
		$("#regform").toggle();
		return false;
	});

	// Восстановление пароля
	$("#recivery_btn").click(function()
	{
		$("#r_infobox").html('').hide();

		if (CheckEmail($("#recovery_email").val()) == true) {

			$("#r_infobox").html('Идет проверка указанного e-mail...').show();

			$.post('/ajax/recovery/', { 'email' : $("#recovery_email").val() }, function(json) {

				if (json.status == 'ok') {

					$("#r_infobox").hide().html('<span class="ok">На указанный e-mail отправлен новый пароль</span>').fadeIn();


					setTimeout(function()
					{
						$("#recovery_email").val($("#recovery_email").attr("title"));
						$("#r_infobox").fadeOut();
					}, 5000);
				}
				else if((json.status == 'error') && json.msg) $("#r_infobox").hide().html('<span class="error">'+json.msg+'</span>').fadeIn();

			}, 'json');

		} else {
			$("#recovery_email").focus();
			$("#r_infobox").html('<span class="error">Укажите правильный e-mail...</span>').fadeIn();
		}
	});

	// Переключение типов
	$(".usertype").click(function()
	{
		$(".usertype").removeClass("radset");
		$("#r_type").val($(this).attr("title"));
		$(this).addClass("radset");

		if ($("#r_type").val() == "частное лицо") {
			$("#r_comp_row").css("color", "#676767").find("input").val("").attr("readonly", true);
		} else {
			$("#r_comp_row").css("color", "#111111").find("input").attr("readonly", false).focus();
		}
	});

	// Регистрация пользователя
	$("#regform_btn").click(function()
	{
		var err_msg = "";
		var focused = false;

		if ($("#r_type").val() == "") { err_msg = err_msg+"Укажите тип пользователя\n"; }
		if (($("#r_type").val() == "организация") && ($("#r_cname").val() == "")) { err_msg = err_msg+"Укажите название организации\n"; if (!focused) { $("#r_cname").focus(); focused = true; } }
		if ($("#r_name").val() == "") { err_msg = err_msg+"Укажите Ваше имя\n"; if (!focused) { $("#r_name").focus(); focused = true; } }
		if (($("#r_email").val() == "") || !CheckEmail($("#r_email").val())) { err_msg = err_msg+"Укажите корректный e-mail\n"; if (!focused) { $("#r_email").focus(); focused = true; } }
		if (($("#r_pass").val().length < 6) || ($("#r_pass_conf").val() != $("#r_pass").val())) { err_msg = err_msg+"Укажите пароль и подтверждение\n"; if (!focused) { $("#r_pass").focus(); focused = true; } }

		if (err_msg == "")
		{
			$.post('/ajax/register/',
				{
					"type"	: $("#r_type").val(),
					"cname"	: $("#r_cname").val(),
					"name"	: $("#r_name").val(),
					"email"	: $("#r_email").val(),
					"pass"	: $("#r_pass").val()
				},
				function(json)
				{
					if (json.status)
					{
						if (json.status == "error")
						{
							alert("Ошибка: "+json.msg);
						}
						else if (json.status == "ok")
						{
							self.location = json.msg;
						}
					}
				},
			"json");
		} else alert(err_msg);
	});

	// Выпадалки
	$(".main_table td").hover(
		function() { $(this).find(".hover_element").show(); },
		function() { $(".hover_element").hide(); }
	);

	// Список городов
	$("#current_city").click(function()
	{
		if ($("#city_selectbox").css("display") != "block")	{
			$("#city_selectbox").slideDown("fast");
		} else {
			$("#city_selectbox").slideUp("fast");
		}
	});

	// Выбор города
	$("#city_selectbox a").click(function()
	{
		$("#current_city").text($(this).text());
		$("#city_selectbox").slideUp("fast");
	});

	// Верхнее меню показать
	$(".topmenu a").click(function()
	{
		$(".settopmenu").hide();
		$(".topsubmenu").hide();

		$("#"+$(this).attr("alt")+"_set").show();
		$("#"+$(this).attr("alt")+"_submenu").slideDown(300);

		if ($(this).attr("href") == "#") return false;
	});

	// Верхнее меню скрыть
	$(".settopmenu").click(function()
	{
		$(this).hide();
		var submenu = $("#"+$(this).attr("id").replace("_set", "")+"_submenu");
		if ($(submenu).css("display") == 'block') $(submenu).fadeOut("fast");
		else $(this).parent().find("a").click();
	});

	// Подкаталоги подменю
	$(".submenucats").click(function()
	{
		var submenu = $(this).parent().find('.submenu_container');

		if ($(submenu).is(':hidden'))
		{
			// Прячем предыдущие открытые
			$(".submenucats").removeClass('set').parent().find(".submenu_container").hide();

			$(this).addClass('set');
			if ($(submenu).hasClass('slideme')) $(submenu).slideDown(1000);
			else $(submenu).fadeIn(300);
		}
		else
		{
			$(this).removeClass('set');
			$(submenu).hide();
		}
		return false;
	});

	// Поиск
	$("#searchform").submit(function()
	{
		if (
			($('#searchform [name="what"]').val() == '') ||
			($('#searchform [name="what"]').val().length < 3) ||
			($('#searchform [name="what"]').val() == $('#searchform [name="what"]').attr("title"))
			)
		{
			alert("Укажите что искать\nНе менее 3х символов");
			$('#searchform [name="what"]').focus();
			return false;
		}
		return true;
	});

	// Фотографии объявлений
	$(".ad_item_photos a").click(function(){

		$(".ad_item_img").find("img").attr("src", $(this).attr("alt")).parent().attr("href", $(this).attr("href"));
		$(".ad_item_photos li").removeClass("ad_setphoto");
		$(this).parent().addClass("ad_setphoto");


		return false;
	});

	// Окно обратной связи
	$('#feedback_btn').click(function()
	{	
		// Сброс параметров
		$('#feedback_form').find('input, textarea').val('').attr('disabled', false);
		
		// Центровка
		var popMargTop 	= ($('#feedback_win').height()) / 2;
		var popMargLeft = ($('#feedback_win').width()) / 2;
		$('#feedback_win').css(
		{
			'margin-top'  : -popMargTop,
			'margin-left' : -popMargLeft
		});

		// Фон
		$('body').append('<div id="modaloverlay"></div>');
		$('#modaloverlay').fadeIn(function()
		{
			$(this).css({
				'filter'			: 'alpha(opacity=50)',
				'opacity'			: 0.5,
				'-moz-opacity'		: 0.5
			});
		});

		// Показываем
		$('#feedback_win').fadeIn();

		return false;
	});
	$('#modaloverlay').live('click', function()
	{
		$('#modaloverlay, #feedback_win').fadeOut(function() { $('#modaloverlay').remove(); });
		return false;
	});

	// Форма обратной связи
	$('#feedback_form').submit(function()
	{
		var err = '';
		var focused = false;

		if ($('#feedback_name').val() == '')
		{
			err = err+"Укажите ваше имя\n";
			$('#feedback_name').focus();
			focused = true;
		}

		if (!CheckEmail($('#feedback_email').val()))
		{
			err = err+"Укажите коректный e-mail\n";
			if (!focused) { $('#feedback_email').focus(); focused = true; }
		}

		if ($('#feedback_text').val().length < 10)
		{
			err = err+"Слишком короткий текст сообщения\n";
			if (!focused) { $('#feedback_text').focus(); focused = true; }
		}

		// Ошибок нет
		if (err == '')
		{
			$('#feedback_form').find('input, textarea').attr('disabled', true);
			
			$.post('/ajax/feedback/',
			{
				name	: $('#feedback_name').val(),
				email	: $('#feedback_email').val(),
				text	: $('#feedback_text').val()
			},
			function(json)
			{
				if (json.status == 'ok')
				{
					alert('Спасибо! Ваше сообщение успешно отправлено');
					$('#modaloverlay').click();
				}
				else alert('Ошибка: '+json.msg);
				
			}, 'json');
		}
		else alert(err);

		return false;
	});

	selects();
});

// Прелоад картинок
var auth_bg = new Image();
auth_bg.src='/images/login_bg.png';
var reg_bg = new Image();
auth_bg.src='/images/reg_bg.png';
