var bShowAll = false;

$(document).ready(function(){
	$('div#blackout, div.closeButton').click(function(){
		if ( flag_reward == 0 ) {
			$('div#blackout').hide();
			hideCard('in-detals');
		}
	});

	$('#discounts-settings h3').click(function() {
		if(bShowAll){
			showAll();
		}
	});

	$('div.labels').click(function(){
		var checkboxId = $(this).find('label').attr('for');

		if($(this).hasClass('selected')){
			$(this).removeClass('selected');
			$('#'+ checkboxId).each(function(index) {
				this.checked = true;
				this.click();
			});
		}else{
			$(this).addClass('selected');
			$('#'+ checkboxId).each(function(index) {
				this.checked = false;
				this.click();
			});
		}
		
		if(!bShowAll){
			activateShowAll();
		}
		return false;
	});

	$('span.sorting').click(function(){
		$('div#discounts-settings').toggle();
		if($.browser.msie && $.browser.version <= 7){
			$('div#discounts').css('position', 'absolute');
			$('div#discounts').css('position', 'relative');
		}
	});

// NEW
	$('#discounts div.card').click(function() {
		if (flag_reward == 0) {
			var offset = $(this).offset();
// NEW
			toggleCard('in-detals', offset, $(this).attr("id").replace("shop", ""));
			$('div#blackout').toggle();
			fixCardsForIE6();
		}
		$('div#discounts-settings').hide();
	});

	$('span#show-address-list').click(function() {
// NEW
		if ($('#address-list LI').length) {
			if($('#address-list:visible').length == 1){
				$('#address-list').slideUp();
				$('#card_extender').hide();
			}else{
				$('#address-list').slideDown();
				setTimeout("extendSpace()", 500);
			}
		}
	});

	setTimeout("showActiveCard();", 1200);
});

function fixCardsForIE6()
{
	var version = parseInt($.browser.version);
	if ($.browser.msie && version < 7 ) {
		$('div#discounts div.card:visible').each(function(index) {
			$(this).attr('display','block');
			$(this).show();
		});;
		$('div#discounts').css('position', 'absolute');
		$('div#discounts').css('position', 'relative');
	}
}

function showActiveCard()
{
// NEW
	$('#discounts div.active_card:visible').each(function(index) {
		$(this).click();
		var offset = $(this).offset();
		
		setTimeout("$('html, body').animate({scrollTop: " + offset.top + " - 200}, 100)", 300);
	});	
	
//	$('#discounts div.active_card:visible').click();
//	$('#discounts div.active_card:visible').each(function(index) {
//		var offset = $(this).offset();
//		toggleCard('in-detals', offset);
//		$('div#blackout').toggle();
//		fixCardsForIE6();
//	});
}

function extendSpace(){
	var height = parseInt($('#address-list').height()) + 250;
	var offset = $('#address-list').offset();
	var totalHeight = parseInt($('#blackout').height());

	if(height + offset.top > totalHeight){
		$('#card_extender').css('height', (height + offset.top - totalHeight) + 'px');
		$('#card_extender').show();
	}
}

// NEW
function toggleCard(cardID, offset, id)
{
	if($('#' + cardID + ':visible').length > 0){
		hideCard(cardID);
	}else{
// NEW
		showCard(cardID, offset, id);
	}
}

function hideCard(cardID)
{
	$('#' + cardID).hide();
	$('#address-list').hide();
	$('#card_extender').hide();
}

//	Код ниже отвечает за анимацию при клике по карточке

var flag_reward = 0;
var show_el_param = '';
var show_el_t_param = '';
var counter_popup = 0;

function showCard(cardID, offset, id)
{
	var leftOffset = -138;
	var left = (offset.left + leftOffset);
	if(left > 0) left = left * 0.5;
	$('#' + cardID).css('left', left);
	$('#' + cardID).css('top', (offset.top - 40));

	// NEW
	$.getJSON("/ajax/get_shop_data.php", {id: id}, function(data) {
		$('#in-detals DIV.percent SPAN').text(data.percent);
		$('#in-detals H3').html(data.name);
		$('#in-detals P.card-info').html(data.description);
		$('#in-detals P.card-info-news').html(data.news);

		if (data.percent > 0) {
			$('#in-detals DIV.percent').show();
		} else {
			$('#in-detals DIV.percent').hide();
		}
		
		if (data.comment) {
			$('#in-detals P.discount-comment').html(data.comment).show();
		} else {
			$('#in-detals P.discount-comment').hide();
		}

		if (data.image) {
			$('#in-detals DIV.card-view DIV.card').css("width",  "" + $("#shop" + id).attr("image_w") + "px");
			$('#in-detals DIV.card-view DIV.card').css("height", "" + $("#shop" + id).attr("image_h") + "px");
			
			var version = parseInt($.browser.version);
			if ($.browser.msie && version < 7) {
				$('#in-detals DIV.card-view DIV.card').css("filter", "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + data.image + "', sizingMethod='crop');"); 
			} else {
				$('#in-detals DIV.card-view DIV.card').css("background-image", "url('" + data.image + "')").show();
			}
		} else {
			$('#in-detals DIV.card-view DIV.card').hide();
		}

		if (data.url) {
			$('#in-detals DIV.card-view A.url').text(data.url).attr("href", data.url).show();
		} else {
			$('#in-detals DIV.card-view A.url').hide();
		}

		if (data.addresses.length == 0) {
			$('#in-detals #show-address-list').hide();
		}
		
		if (data.addresses.length == 1) {
			$('#in-detals #show-address-list').html(data.addresses[0]).css({"border-bottom": "none", cursor: "auto"}).show();
			$('#in-detals #address-list').html("");
		}
		
		if (data.addresses.length > 1) {
			$('#in-detals #show-address-list').html("Адреса").css({"border-bottom": "1px dashed #fe109c", cursor: "pointer"}).show();		
			var html = "";
			for (var i in data.addresses) {
				html += "<li>" + data.addresses[i];
			}
			$('#in-detals #address-list').html(html);
		}
	});

	show_from_center_card('#tmp_for_show', '#' + cardID);
}

function show_from_center_card(el_t, el) {
	if ( flag_reward == 0 ) {
		flag_reward = 1;
		show_el_param = el;
		show_el_t_param = el_t;

		$(el_t).css({
			"height":2+"em",
			"left":"50%",
			width:2+'em'
		});

		counter_popup++;
		var delay = 300;
		var y = 600;
		var x = 800;
		if ( $('#Layout').width() < 1200 )
			x = Math.floor($(document).width()*0.9);
		else
			x = 1130;

		// $(el).css({
		// 	width:x+"px",
		// 	'margin-left':'-'+x/2+'px'
		// });

		if (!$.browser.msie) {
			/* негативно повлияло на прозрачность, пришлось удалить12:18 30.06.2008 */
			/*|| ($.browser.msie && $.browser.version >= 7)*/
			$(el).css({
				'opacity':'0.01',
				'display':'block'
			});

			y = $(el).height();
			//x = $(el).width();
			$(el).css({'opacity':'1.0'});
			$(el).hide();
		}
		var y_em = $(el_t).height()/2;
		var y_el_offset = 5 * y_em;

		var y_start = parseInt($(el).css('top')) + 160;
		var height_end = $(el).height() - 40;
		var y_end = y_start - (height_end / 2);

		var x_start = parseInt($(el).css('left')) + 365;
		var width_end = $(el).width() - 120;
		var x_end = x_start - (width_end / 2);

//		var y_el_offset = 250;

		$(el_t).css({
			"width": 2+"px",
			"top": y_start+"px",
			"height": 2+"px",
			'border': '0px solid red',
			left: x_start
		});

		$(el_t).show();

		var x_el_offset = $('#Layout').width()/2-x/2;

		$(el_t).animate({
			width: width_end + "px",
			height: height_end + "px",
			top: y_end + "px",
			'left': x_end + 'px'
		}, delay);

		setTimeout("show_from_center_param_card();",delay + 60);
	}
};

function show_from_center_param_card(){
	$(show_el_param).show();
	$(show_el_t_param).hide();
	flag_reward = 0;

	//	Моргаем span'ом, чтобы показать величину скидки во всех браузерах, произведенных в Индии
	if ($.browser.msie) {
		$('div.percent span').hide();
		$('div.percent span').show();

		fixCardsForIE6();
	}
};

function activateShowAll(){
	bShowAll = true;
	$('#showAll span').html('Показать все категории');
	$('#showAll').addClass('clickable');
}

function deactivateShowAll(){
	bShowAll = false;
	$('#showAll span').html('По категориям');
	$('#showAll').removeClass('clickable');
}

function showAll(){
	$('div.labels').each(function(index) {
		if(!$(this).hasClass('selected')){
			$(this).click();
		}
	});

	deactivateShowAll();
}
