var img=new Image();
var spinnerWidth = 0;
var spinnerHeight = 0;
$(img).load(function(){
    spinnerWidth = img.width;
    spinnerHeight = img.height;
});
img.src=base+"img/spinner.gif";

jQuery.fn.spinner = function() 
{
	var w=this.innerWidth();
	if (w<spinnerWidth)
		w=spinnerWidth;
	var h=this.innerHeight();
	if (h<spinnerHeight)
		h=spinnerHeight;

	var overlay=$('<div></div>');
	var spinner=$('<div></div>');
	if (parseInt(this.css('padding-top')))
	{
		spinner.css('margin-top', '-'+parseInt(this.css('padding-top'))+'px');
		overlay.css('margin-top', '-'+parseInt(this.css('padding-top'))+'px');
	}
	if (parseInt(this.css('padding-left')))
	{
		spinner.css('margin-left', '-'+parseInt(this.css('padding-top'))+'px');
		overlay.css('margin-left', '-'+parseInt(this.css('padding-top'))+'px');
	}
	overlay.attr('class', 'overlay');
	overlay.css({
		'position': 'absolute',
		'z-index': '99999',
		'height': h,
		'width': w,
		'background-color': '#FFF',
		'opacity': 0.4
	});
	spinner.attr('class', 'spinner');
	spinner.css({
		'position': 'absolute',
		'z-index': '99999',
		'height': h,
		'width': w,
		'background-image': 'url('+img.src+')',
		'background-repeat': 'no-repeat',
		'background-position': 'center'
	});

	this.prepend(overlay);
	this.prepend(spinner);
};

jQuery.fn.loads = function(url, msgOk, msgErr) 
{
	$(this).spinner();
	
	if (url.href)
		url=url.href;
	else
	{
		if (url.substr(0, 5)!='http:')
			url=base+url;
	}

	var id=this;
	$.get(url, function(data){
	    if (typeof msgOk == 'undefined') 
	    	$(id).html(data);
	    else
	    {
	    	if (data.substr(0,2)=='ok')
	    		$(id).html(msgOk);
	    	else
	    	{
	    		if (typeof msgErr != 'undefined') 
	    			$(id).html(msgErr);
	    		else
	    			$(id).html(msgOk);
		    }
	    }
	});
};

jQuery.fn.loadImg = function(url)
{
	$(this).spinner();

	if (url.href)
		url=url.href;
	else
	{
		if (url.substr(0, 5)!='http:')
			url=base+url;
	}

	var image=new Image();
	var id=this;
	$(image).load(function(){
		id.html(this);
	});
	image.src=url;
};

function l(msg)
{
	if (typeof console=='object')
		console.log(msg);
}
