/**
 * Zestaw parametr�w i metod konfiguracyjnych
 *
 */
var _config = {
	/* adres bazowy strony - warto�� ustawiana w init */
	base_url: null,
	/* kontroler i akcja (wype�niane w head) */
	controller: null,
	action: null,

	/* operacje wykonywane po za�adowaniu dokumentu */
	init_common: function() {
		// bazowy URL strony
		this.base_url = location.href.match(/^(http:\/\/[^\/]*\/)/)[1];
	
		// konfiguracja AJAX-a
		$.ajaxSetup({
			cache: false
		});
		
		this.init();
	},
	
	/**
	 * Ta metoda jest wywo�ywana zawsze po init_common.
	 *
	 * Metod� nadpisujemy w rozszerzeniach poprzez:
	 *
	 * jQuery.extend( _config, { init: { <tutaj kod> } } );
	 *
	 */

	init: function() {
		// galeria
		$('a.lightbox').lightbox();
		// popupy
		$('.btns a').bind('click', function(){
			window.open($(this).attr('href'), '', 'width=578,height=575');
	        return false;
		});
		// popup kalkulatora kredytowego
		$("a.kalkulatorPopup").click(function() {
			var popup = window.open(this.href,"kalkulatorPopup","width="+screen.width+",height="+screen.height+",scrollbars=yes,resizable=no,statusbar=no,menubar=no,toolbar=no,dependent=yes");
			
			return false;
		});
	}	
}


/**
 * G��wny zestaw metod
 *
 */
var _main = {
	_this: null,

	/* operacje wykonywane po za�adowaniu dokumentu */
	init_common: function() {
		/* nadanie linkom zewnetrznym atrybutu target="_blank" */
		this.external_links();
		
		this.init();
		
		/* inicjalizacja kodu dla kontrolera i akcji */
		var controller = _config.controller.charAt(0).toUpperCase() + _config.controller.substr(1).replace(/-[a-z]/ig, function(s) {return s.substr(1,1).toUpperCase()});
		if ( typeof(window[controller]) == "object" ) {
		
			this._this = window[controller];
		
			var action = _config.action.replace(/-[a-z]/ig, function(s) {return s.substr(1,1).toUpperCase()}) + "Action";
			
			if (typeof(window[controller]["init"]) == "function") {
				window[controller]["init"]();
			}
			if (typeof(window[controller][action]) == "function") {
				window[controller][action]();
			}
		}
	},
	
	/**
	 * Ta metoda jest wywo�ywana zawsze po init_common (ale przed wywo�aniem akcji kontrolera).
	 *
	 * Metod� nadpisujemy w rozszerzeniach poprzez:
	 *
	 * jQuery.extend( _main, { init: { <tutaj kod> } } );
	 *
	 */
	init: function() {
	},
	
	// przewija stron� na sam� g�r� (bez u�ycia "#")
	scrollToTop: function() {
		$(document).scrollTop(0);
	},
	
	/* nadanie linkom zewnetrznym atrybutu target="_blank" */
	external_links: function() {
		$("a[rel='external']").each( function(i) {
			this.target = "_blank";
		});
	}
};

$(document).ready(function() {
	_config.init_common();
	_main.init_common();

	$('#n_komunikat-zamknij').bind('click', function(){
		$('#komunikat').hide();
		return false;
	});
});

try {document.execCommand('BackgroundImageCache', false, true);} catch(e) {}