var PrbMessages = new Object();

PrbMessages.msgs = new Array();
PrbMessages.status = 'info';

PrbMessages.init = function () {
	PrbMessages.box = $('#PrbMessages');
	PrbMessages.msgs = new Array();
	PrbMessages.box.empty();
}

PrbMessages.show = function () {
	if (PrbMessages.msgs.length > 0){
		PrbMessages.box.removeClass();
		if(PrbMessages.status == 'error') PrbMessages.box.addClass('errorMsg'); else PrbMessages.box.addClass('info'); 
		
		for(i in PrbMessages.msgs){
			if (typeof(PrbMessages.msgs[i]) != 'function') PrbMessages.box.append("<p>" + PrbMessages.msgs[i] + "</p>");
		}
		//var _position = PrbMessages.box.position();
		//console.log(_position.top);

		PrbMessages.box.dialog({
			bgiframe: true,
			minHeight: 58,
			modal: true
			//,position: ['center', _position.top]
			
		});
		PrbMessages.box.dialog('open');

		//window.scroll(0, 0);
	}else{
		//nie usuwamy tego co jest juz wyswietlone do tego sluzy metoda clear i trzeba ja jawnie wywolac
		return;
	}
}

PrbMessages.clear = function(){
	PrbMessages.msgs = new Array();
	PrbMessages.box.empty();
	PrbMessages.box.hide();
}

PrbMessages.hide = function () {
	PrbMessages.box.empty();
	PrbMessages.box.hide();
	PrbMessages.box.dialog('destroy');
}

PrbMessages.appendInfo = function (msg) {
    PrbMessages.msgs.push(msg);
    PrbMessages.status = 'info';
}

PrbMessages.appendError = function (msg) {
	PrbMessages.msgs.push(msg);
	PrbMessages.status = 'error';
}

PrbMessages.getMessages = function (){
	$.ajax({ url: "/getContent.php", 
			data: { plugin:'Prb', content: 'showAllMsg'}, 
			success: function(objects) {
				if (objects.length > 0){ 
					PrbMessages.init();
					eval(objects);
					PrbMessages.show();
				}
			}
			});
}

$(window).load(function() {
	PrbMessages.getMessages();
});
