var lang = '';

$(document).ready(function() {

	$().mousemove(function(e){mousex = e.pageX;mousey = e.pageY;});

	lang = $('body').attr('lang');
	
	$('*[@class*=open],*[@class*=close],*[@class*=toggle]').click(function(){
		var aclasses = $(this).attr('class').split(' ');
		for(i = 0; i < aclasses.length; i++)
		{
			var oid_open = (preg = new RegExp('^open([a-zA-Z0-9_]+)$','g').exec(aclasses[i])) ? preg[1] : '';
			var oid_close = (preg = new RegExp('^close([a-zA-Z0-9_]+)$','g').exec(aclasses[i])) ? preg[1] : '';
			var oid_toggle = (preg = new RegExp('^toggle([a-zA-Z0-9_]+)$','g').exec(aclasses[i])) ? preg[1] : '';
			if(oid_open) $('#' + oid_open).show()
			else if(oid_close) $('#' + oid_close).hide();
			else if(oid_toggle)
			{
				var oblock = $('#' + oid_toggle); 
				oblock.is(':hidden') ? oblock.show() : oblock.hide();
			}
		}
		return $(this).is(':input');
	})

	$('#print').click(function(){
		var new_win = self.open('/print' + $(this).attr('title'),'print_version','');
		return false;
	})
	
	init();
});

function show_message(msgText,hide,delay)
{
	$('#ajaxmessage').remove();
	var ajax_message = $('<div id=ajaxmessage>' + msgText + '</div>').appendTo('body');
	coords = get_coords(ajax_message);
	ajax_message.css('left',coords.left).css('top',coords.top).fadeIn(200);
	if(!delay) delay = 1000;
	if(!hide) setTimeout(function(){ajax_message.fadeOut(600,function(){$(this).remove()})},delay);
	else return ajax_message;
}

function get_ajax_param(params,type,show,func,param)
{
	var file = '';
	if(type == 'shop') file = '/modules/Shop/Shop_ajax_return.php';
	else if(type == 'form') file = '/modules/Form/Form_ajax_return.php';
	if(file)
	{
		$.post(file + '?lang=' + lang,params,function(data){
			var delay = 0;
			if(params.delay) delay = params.delay;
			if(func) func();
			if(show == 'show') show_message(data,(param == 'nohide'),delay);
			else if(show) show(data);
		})
	}
	return;
}

function get_coords(obj)
{
	var left_coord = $(document).scrollLeft() + ($(window).width() - obj.width()) / 2;
	var top_coord = $(document).scrollTop() + ($(window).height() - obj.height()) / 2;
	return {'left':left_coord,'top':top_coord};
}

function init(obj)
{
	lang = $("body").attr("lang");
	
	$(":checkbox[@class^=chunch]",obj).click(function(){
		if(this.checked)
		{
			cls = $(this).attr('class');
			th = $(this);
			$(":checkbox." + cls).not(th).each(function(){this.checked = false})
		}
	})

	$("a.openimage",obj).zoomimage({
		opacity: 0.5
	});

	$('a.ajax[target][rel]',obj).click(function(){
		var target = '#' + $(this).attr('target');
		var file = $(this).attr('rel');
		var href = $(this).attr('href');
		href = href.replace(/.*\?/g,'?')
		$(target).load(file + href,function(){
			init(this);
		});
		return false;
	})
	
}

function open_ajax_window(file,window_id,width,func)
{
	if(!window_id) window_id = 'ajaxwindow' + Math.round(Math.random() * 100);
	$('#' + window_id).remove();
	var modal = $('<div class=ajaxwindow id=' + window_id + (width ? ' style="width: ' + width + '"' : '') + '></div>');
	$.get(file,function(data)
	{
		modal.appendTo('body')
		.append('<div class=ajaxwindowclose><a href="#"><img src="/lib/images/close.gif"></a></div>')
		.append('<div class=ajaxwindowcontent>' + data + '</div>');
		
		coords = get_coords(modal);
		modal.css('left',coords.left).css('top',coords.top).show();

		modal.children(".ajaxwindowclose",modal).click(function(){
			$('.zoomimage').add(modal).remove();
			return false;
		});
		init(modal);
		if(func) func();
	})
}

function draw_loading()
{
	var loading = $('<div style="position: absolute;z-index: 30000" id=loading><img src="/lib/images/loading.gif"></div>');
	var coords = get_coords(loading);
	loading.css({'left': coords.left,'top': coords.top}).appendTo('body');
}

function remove_loading()
{
	$('#loading').remove();
}