var translation = new Array();

$.growl.settings.noticeTemplate = ''
	+ '<div style="width: 300px; margin-bottom: 10px">'
	+ '	<div style="background: #fff; border: 2px solid #666; position: relative; display: block; color: #ffffff; margin: 0; font-size: 12px">' 
	+ '		<h3 style="margin: 0; padding: 10px; font-size: 12px; font-weight: 700; background: #666; color: #fff; text-align: center">%title%</h3>'
	+ '		<p style="padding: 10px; font-size: 12px; color: #000">%message%</p>'
	+ '	</div>'
	+ '</div>';

$().ready(function () {
	set_lang();
	cart_links();
	notify_links();
	
	$('a[rel=showphoto]').lightbox({
		fitToScreen: true,
		imageClickClose: false
	});
});

// ----------------------------------------------------------------------------

var set_lang = function ()
{
	if (_t) translation = _t;
};

var _ = function (text)
{
	if (translation[text])
		return translation[text];
	else
		return text;
};

var _s = function ()
{
	if (arguments.length > 0)
	{
		args = Array.prototype.slice.call(arguments);
		var text = args.shift();
		if (translation[text])
			return $.vsprintf(translation[text], args);
		else
			return $.vsprintf(text, args);
	}
};

// ----------------------------------------------------------------------------

var notify_links = function ()
{
	$('a[href^=powiadom-mnie], a[href^=notify-me]').not('.func').each(function (i, link) {
		$(link).click(function () { notify_user(this.href); return false; });
	});
};

var notify_user = function (href)
{
	page_disable();
	var rx = /([0-9]+)$/;
	$.post(cp + 'shop/a_notify_user/' + href.match(rx)[0], {}, function (resp) {
		if (resp.already)
			$.growl('Sklep Kolekcjonera', 'Jesteś już zapisany na powiadomienia o dostepności produktu "<strong>' + resp.product + '</strong>".');
		else if(resp.notlogged)
			$.growl('Sklep Kolekcjonera', 'Musisz być zalogowany, żeby zapisać się na powiadomienie.');
		else
			$.growl('Sklep Kolekcjonera', 'Dziękujemy. Zapisałeś się na powiadomienie o dostępności produktu "<strong>' + resp.product + '</strong>".');
		
		page_enable();
	}, 'json');
	return false;
};

var cart_links = function ()
{
	$('a[href^=koszyk/add], a[href^=cart/add]').not('.func').each(function (i, link) {
		$(link).click(function () { cart_add(this.href); return false; });
	});
};

var cart_add = function (href)
{
	page_disable();
	var rx = /([0-9]+)$/;
	$.post(cp + 'cart/a_add/' + href.match(rx)[0], {}, function (resp) {
		if (resp.error)
			alert(_('Ilość produktu w koszyku nie może przekraczać\ndostępnych stanów magazynowych.'));
		else
		{
			$('#services-menu').find('p.cart, p.cart-link').remove();
			$('#services-menu').find('div.service').prepend(resp.cart);
			$.growl('Sklep Kolekcjonera', 'Produkt "<strong>' + resp.product + '</strong>" został dodany do koszyka.');
		}
		
		page_enable();
	}, 'json');
	return false;
};

var page_disable = function ()
{
	$('body').append('<div id="page-disable" style="position: fixed; left: 0; top: 0; right: 0; bottom: 0; background: #000 url(frontend/images/loader.gif) 50% 50% no-repeat; opacity: 0.5"></div>');
};

var page_enable = function ()
{
	$('#page-disable').remove();
}