var lang;
$(document).ready(function(){
	lang = $('#page').attr('lang');
	if (lang != '') lang = '/'+lang;
	$.ajaxSetup({
		timeout: 5000,
		type: "POST",
		cache: false,
		async: true,
		contentType: "application/x-www-form-urlencoded"
	});
	
	$('input.auth').keyup(function(event){ if (event.keyCode == 13) login('login'); });
	$("#auth").click(function(){login($(this).attr('name'));});
	$('input.auth[name=login]').focus(function(){if ($(this).val() == 'Логин (Ваш E-mail)') $(this).val('');})
	$('input.auth[name=login]').blur(function(){if ($(this).val() == '') $(this).val('Логин (Ваш E-mail)');});
	$('input.auth[name=password]').focus(function(){$(this).val('');});
	$('div.search input.q').focus(function(){if ($(this).val() == 'Поиск') $(this).val('');});
	$('div.search input.q').blur(function(){if ($(this).val() == '') $(this).val('Поиск');});
	$('input.win-auth').live('keyup', function(event){ if (event.keyCode == 13) user($('#popup-apply').attr('name')); });
	$(".user").live('click', function(){user($(this).attr('name'));});
	
	/*	PopUp	*/
	$('#popup-close').live('click', function(){$('#popup').html('').hide(); if ($.browser.msie && $.browser.version == 6) $('select').show();});
	$('#popup-help').live('mouseover', function(){$('#popup > div > span > div').show('fast');});
	$('#popup-help').live('mouseout', function(){$('#popup > div > span > div').hide('fast');});

	$('div.show-help a').live('mouseover', function(){
		var div = $(this).parent('div').find('div');
		var top = div.height() + 20;
//		div.css({'top':'-'+top+'px', 'marginTop':'0'}).show('fast');
		if ($.browser.msie && $.browser.version == 6) $('#popup select').hide();
		div.show('fast');
	});
	$('div.show-help a').live('mouseout', function(){
		$(this).parent('div').find('div').hide('fast');
		if ($.browser.msie && $.browser.version == 6) $('#popup select').show();
	});
	$('div.mark a').live('click', function(){
		var block = $(this).attr('name');
		if($('#'+block).css('display') == 'none') $('#'+block).slideDown(300, function(){$('div.p-b').scrollTo('div.mark', {duration:1000});});
		else $('#'+block).slideUp(200);
	});

	/*	Управление материалами	*/
	$('a.material, input.material').live('click', function(){
		var p = $(this).attr('name').split('|');
		if (p[1] == 'undefined') return;
		if (p[1] == 'delete' && !confirm('Подтвердите удаление')) return;
		var data = 'event='+p[1];
		var val = '';
		if (p[2] == 'undefined' || p[2] == '')
		{
			if (p[0] == 'price' && (p[1] == 'edit' || p[1] == 'delete'))
			{
				var ids = '';
				$('table.price-list tr td input.set').each(function(){
					if ($(this).attr('checked') == true) ids += $(this).attr('name')+',';
				});
				if (ids) data += '&id='+ids;
			}
		}
		else data += '&id='+p[2];
		if (p[1] == 'create' || p[1] == 'update')
		{
			$('#popup table tr td input, #popup table tr td select, #popup table tr td textarea').each(function(){
				val = $(this).val();
				if (val) val = val.replace('&', '%26')
				data +='&'+$(this).attr('name')+'='+val;
			});
		}
		$.ajax({
			url: lang+'/ajax/material/'+p[0],
			data: data,
			success: function(answer){
				switch (p[1])
				{
					case 'new':
					case 'edit':
						if ($.browser.msie && $.browser.version == 6) $('select').hide();
						$('#popup').html(answer).show();
						if ($('#popup > div').height() > $(window).height() - 100)
							$('#popup > div > div').css({'height':$(window).height() - 140, 'overflow-y':'scroll'});
						var top = ($(window).height() - $('#popup > div').height()) / 2 + $(document).scrollTop();
						$('#popup').css({'top':top+'px'});
						if (p[0] == 'price' && p[1] == 'new')
						{
							var s = $('#add-form select.set-all').html();
							$('#add-form select.set').html(s);
						}
						if (p[0] == 'price' && p[1] == 'edit')
						{
							var s = $('#add-form select.set-all').html();
							$('#add-form select.set').each(function(){
								$(this).html(s); $(this).find('option[value='+$(this).attr('title')+']').attr('selected', 'selected');
							});
						}
						break;
					case 'create':
					case 'update':
						answer = answer.split('@@');
						$('#popup > div > p').html(answer[0]);
						if (answer[1] != 'undefined' && answer[1])
							if (answer[1] == 'ok')
							{
								if ($('#upload-exists').val() == '1' && ($('#fileQueue').html() || p[0] == 'price')) upload(answer[2]);
								else
								{
									$('#popup-apply').hide();
									if (p[0] == 'rating')
										setTimeout("$('#popup').fadeOut(1000, function(){$('#popup').html('');document.location='/rating/code/';});", 1000);
									else setTimeout("$('#popup').fadeOut(1000, function(){$('#popup').html('');document.location.reload();});", 1000);
								}
							}
							else
								if (p[0] == 'price')
								{
									$('#popup table tr td').removeClass('sel');
									var fields = answer[1].split('|');
									for(i = 0; i < fields.length; i++)
									{
										$('#popup input[name="'+fields[i]+'"]').parent('td').addClass('sel');
										$('#popup select[name="'+fields[i]+'"]').parent('td').addClass('sel');
										$('#popup textarea[name="'+fields[i]+'"]').parent('td').addClass('sel');
									}
								}
								else
								{
									$('#popup table tr td').removeClass('sel');
									$('#popup input[name="'+answer[1]+'"]').parent('td').addClass('sel');
									$('#popup select[name="'+answer[1]+'"]').parent('td').addClass('sel');
									$('#popup textarea[name="'+answer[1]+'"]').parent('td').addClass('sel');
								}
						break;
					case 'delete':
						document.location = answer;
						break;
				}
			}
		});
	});
	
	$('select.set-all').live('change', function(){
		$('select.set option').removeAttr('selected');
		$('select.set option[value='+$(this).attr('value')+']').attr('selected', 'selected');
	});

	$('input.set-all').live('click', function(){
		$('input.set').attr('checked', $(this).attr('checked'));
	});
	$('table.price-list tr td:not(.last)').click(function(){
		var inp = $(this).parent('tr').find('input.set');
		inp.attr('checked', !inp.attr('checked'));
	});

	$("a.preview").fancybox({
		'overlayShow': true,
		'overlayOpacity': 0.8,
		'hideOnContentClick': true,
		'titleShow': false,
		'transitionIn': 'elastic',
		'transitionOut': 'elastic'
	});
	
	//	Смена кода счётчика
	$('div.code table tr td label').click(function(){
		var txt = $('#'+$(this).children('input').attr('name'));
		var ind = $(this).parent('td').children('label').index(this) + 1;
		var code = txt.text().replace('/1"', '/'+ind+'"').replace('/2"', '/'+ind+'"').replace('/3"', '/'+ind+'"');
		txt.text(code);
	});
	//	таблица прайсов
	$('table.price-list tr:nth-child(odd)').addClass('odd');
	$('table.price-view tr:nth-child(odd)').addClass('odd');
	
	//	Стилизированые списки
	my_select();
});

function login(ev)
{
	var login = $('input.auth[name=login]').val();
	var pass = $('input.auth[name=password]').val();
	var url = document.location;
	$.ajax({
		url: lang+'/ajax/user/auth/',
		data: "event="+ev+"&login="+login+"&pass="+pass,
		success: function(answer){
			if (answer == 'ok') document.location = url;
			else
			{
				$('#auth-message').html(answer).show('slow');
				setTimeout("$('#auth-message').hide('fast')", 1500);
			}
		}
	});
}

function bookmark()
{
        var title = "Строительный портал promobud.ua";
        var url = "http://www.promobud.ua/";

        if (window.sidebar) {
                window.sidebar.addPanel(title, url, "");
        } else if(window.opera && window.print) {
                var elem = document.createElement('a');
                elem.setAttribute('href',url);
                elem.setAttribute('title',title);
                elem.setAttribute('rel','sidebar');
                elem.click();
        }else if(document.all) {
                window.external.AddFavorite(url, title);
        }else {
                alert("Попробуйте добавить в избранное вручную ");
        }
        return false;
}

function user(attr)
{
	var p = attr.split('|');
	var data = 'action='+p[1]+'&event='+p[1];
	$('table.edit-data tr td input, table.edit-data tr td textarea').each(function(){
		var val = $(this).val();
		if ($(this).attr('type') == 'checkbox') val = ($(this).attr('checked') == true)?1:0;
		data +='&'+$(this).attr('name')+'='+val;
	});
	var url = document.location;
	$.ajax({
		url:"/ajax/user/"+p[0]+'/'+p[1],
		data:data,
		success: function(answer)
		{
			var top = $(window).height() / 2 + $(document).scrollTop();
			switch (p[1])
			{
				case 'get':
					$('#popup').html(answer).show().css({'top':(top - $('#popup').height() / 2)+'px'});
					break;
				case 'set':
					answer = answer.split('@@');
					$('#popup > div > p').html(answer[0]);
					if(answer[1] == 'ok')
					{
						switch (p[0])
						{
							case 'reg': user('activation|get'); break;
							case 'profile': setTimeout("$('#popup').fadeOut(1000, function(){$('#popup').html(''); document.location.reload()});", 1500); break;
							default: setTimeout("$('#popup').fadeOut(1000, function(){$('#popup').html('');});", 1500);
						}
					}
					break;
				case 'login':
					if(answer == 'ok') document.location = url;
					else $('#popup > div > p').html(answer);
					break
				case 'logout':
					if(answer == 'ok') document.location = '/';
					break;
			}
		}
	});
}

function my_select()
{
/*	$('select.my-select').each(function(){
		var input = $('<input />');
		var container = $('<div />');
		var opt_list = $('<div />');
		var sel = $(this).find('option:selected');
		var cur_name = $('<span />');
		input.attr('type', 'hidden').attr('name', $(this).attr('name')).attr('value', sel.attr('value'));
		container.attr('class', $(this).attr('class')).addClass('my-select-div').removeClass('my-select').css('width', $(this).width());
		$(this).find('option').each(function(){
			var opt = $('<a />');
			opt.attr('name', $(this).attr('value')).html($(this).html());
			if ($(this).attr('selected')) opt.addClass('selected');
			opt_list.append(opt);
		});
		cur_name.html(sel.html());
		//if ($.browser.msie && $.browser.version == 6) return;
		container.append(opt_list).append(input).append(cur_name);
		$(this).replaceWith(container);
	});
*/
	$('div.my-select-div span, div.my-select-div div').live('mouseover', function(){
		var div = $(this).parent('div');
		var opt_list = div.children('div');
		opt_list.show();
		opt_list.css('marginTop', ($.browser.msie && $.browser.version == 6)?(div.height()-1):div.height());
		if (opt_list.width() < div.width()) opt_list.width(div.width() + ($.browser.msie?2:0));
	});
	$('div.my-select-div span, div.my-select-div div').live('mouseout', function(){ $(this).parent('div').children('div').hide(); });
	$('div.my-select-div div a').live('click', function(){
		var opt_list = $(this).parent('div');
		opt_list.children('a.selected').removeClass('selected');
		$(this).addClass('selected');
		opt_list.parent('div').children('span').html($(this).html());
		opt_list.parent('div').children('input').attr('value', $(this).attr('name'));
		opt_list.hide();
	});
	$('div.my-select-div div a').bind('mouseover mouseout', function(){$(this).toggleClass('hover')});
}