jQuery.extend(
{
	drawLoading: function(obj){
		var loading = jQuery('<div id="loading"></div>');
		var coords = null;
		if(obj == null) coords = jQuery.getCoords(loading);
		loading.css({
			display: 'none',
			position: 'absolute'
		}).appendTo('body');
		if(!coords)
		{
			var offset = obj.offset();
			var left_coord = offset.left + obj.width() - loading.width();
			var top_coord = offset.top + (obj.height() - loading.height() + 4) / 2;
			var coords = {left: left_coord,top: top_coord};
		};
		loading.css({'left': coords.left,'top': coords.top}).show();
	},
	removeLoading: function(){
		jQuery('#loading').remove();
	},
	getCoords: function(obj){
		var left_coord = jQuery(document).scrollLeft() + (jQuery(window).width() - obj.width()) / 2;
		var top_coord = jQuery(document).scrollTop() + (jQuery(window).height() - obj.height()) / 2;
		return {
			'left': left_coord,
			'top': top_coord
		}
	}
});

function open_dialog_box(text,ok_handler)
{
	var d = $('<div>' + text + '</div>');
	d.dialog({
		buttons: {
			'OK': function(){ok_handler(d)},
			'Cancel': function(){d.dialog('destroy').remove()}
		}
	});
	return false
}

function show_alert(str,delay,opts)
{
	var d = $('<div>'+str+'</div>');
	if(!opts) opts = {};
	if(!delay) delay = 2000;
	opts.delay = delay;
	opts.open = function(){
		setTimeout(function(){d.remove()},opts.delay)
	}
	d.dialog(opts);
	return false;
}

function get_st(code,func)
{
	$.get(GENERAL_DIR + '/get_st.php?lang=' + lang + '&code=' + escape(code),function(data){
		if(func)
		{
			func(data);
		}
	})
}
