var ajax_running = false;
var vote_accepted = false;
var ajax_msg_showing = 0;

function vote(numer)
{	
	if (ajax_running || ajax_msg_showing > 3) return void(0);
	if (vote_accepted) {
		addAjaxMsg('vote', vote_lang["err_already_rated"], 'red');
		return void(0);
	};
	
	vote_base_lnk = vote_base_lnk.replace("&amp;","&");
		
	$.ajax({
	    url: vote_base_lnk+'&rating=' + numer,
	    type: 'GET',
	    timeout: 6000,
	    beforeSend: function() {
			ajax_running = true;
			addAjaxMsg('vote', vote_lang["waiting"],'');
	    },
	    error: function(e) {
			addAjaxMsg('vote', vote_lang["err_undefined"], 'red');
	    },
	    success: function(html){
			
			var response = html.split("|");
			html = response[0];
			
			if (html == 'ok')
			{
				$('#suma_miesiac').html(response[1]);
				$('#pozycja_miesiac').html(response[2]);
				$('#suma_historia').html(response[3]);
				$('#pozycja_historia').html(response[4]);
				
				vote_accepted = true;
				addAjaxMsg('vote', vote_lang["ok"]);
				$('ul.rating.user-enabled').addClass('stars_'+numer);
			}
			else if (vote_lang[html] != undefined)
			{
				if (html == 'err_already_rated') vote_accepted = true;
				addAjaxMsg('vote', vote_lang[html], 'red');
			}
			else addAjaxMsg('vote', vote_lang["err_undefined"], 'red');
	    },
	    complete: function() {
	    	ajax_running = false;
	    }
	});			
	return void(0);
}


function addAjaxMsg( jQ_ident, msg, classtype)
{	
	ajax_msg_showing++;
	
	var msgBox = $('div.ajax_msg.'+jQ_ident);
	var msg = $('<div>'+msg+'</div>').addClass(classtype).appendTo(msgBox);

	setTimeout(function(){
		msg.fadeOut('slow', function () {
			$(this).remove();
		});
		ajax_msg_showing--;
	}, 4000);
}
