$(document).ready(function(){
	
	if(window.init)
	{
		init();
	}

	if($.fn.jdMenu)
	{
		$('ul.jd_menu,ul.jd_menu_vertical').jdMenu({
			activateDelay: 0,
			showDelay: 0,
			hideDelay: 0,
			offsetX: 0,
			offsetY: 0,
			easing: 'easeOutQuad',
			onAnimate: function(show){show ? jQuery(this).fadeIn(100) : jQuery(this).fadeOut(100)}
		})
	}

	if($.fn.disableTextSelect) $('#content p').disableTextSelect();
	if($.fn.noContext) $('img').noContext();
});

function init(context)
{
	if(!context) context = null;
	lang = $('body').attr('lang');
	
	if($.fn.fixPNG)
	{
		$('img[src$=png], .png',context).each(function(){
			$(this).fixPNG();
		});
	}
	
	$('a.player',context).each(function(){
		var pid = $(this).attr('id');
		flowplayer(pid,'/lib/flowplayer/flowplayer.swf',{
			clip:{
				autoPlay: false,
				autoBuffering: false
			}
		});
	})
	
	$('.flash',context).each(function(){
		var f = $(this);
		var fp = {}; var fv = {};
		parse_str(f.attr('data-flashparams'),fp);
		parse_str(f.attr('data-flashvars'),fv);
		fp.flashvars = fv;
		
		f.flashembed(f.attr('data-flash'),{
			params : fp,
			w3c: true,
			wmode: 'opaque'
		});
	})

	$('a.openimage',context).zoomimage({
		easing: 'easeOutQuad',
		centered: true,
		duration: 200,
		hideSource: true,
		controls: false
	});

	$('a.ajax',context).click(function(){
		var target_id = '#' + $(this).attr('data-ajaxtarget');
		var file = $(this).attr('data-ajaxurl') + '&url=' + escape($(this).attr('href'));
		var callback = $(this).attr('data-ajaxcallback');
		$.drawLoading();
		var target = $(target_id);
		target.load(file,function(){
			$('.loadform').not(target_id).empty();
			$.removeLoading();
			if(window.init) init(this);
			if(window.form_init) form_init(this);
			if(callback)
			{
				var fn = new Function("term", "return " + callback + "(term);");
				fn(this);
			}
		});
		return false;
	})

	$('a[data-loadform]',context).click(function(){
		var form_id = $(this).attr('data-loadform');
		var target_id = $(this).attr('data-loadformtarget');
		var qs = $(this).attr('data-loadformqs');
		target = $(target_id);
		if(target.is(':empty'))
		{
			$.drawLoading();
			var url = '/modules/Form/Form_load.php?id=' + form_id + '&lang=' + lang;
			if(qs) url += '&' + qs;
			target.load(url,function(){
				$('.loadform').not(target_id).empty();
				$.removeLoading();
				if(window.form_init) form_init(this);
			});
		}
		else if( target.is(':visible') )
		{
			target.hide();
		}
		else
		{
			target.show();
		}
		return false;
	})
	
	$('*[class*=openform]',context).click(function(){
		var id = (preg = /^openform([\w_]+)$/g.exec($(this).attr('class'))) ? preg[1] : '';
		var file = $(this).attr('data-file');
		if(!file) file = '/modules/Form/Form_modal.php?lang=' + lang + '&id=' + id;
		$.drawLoading();
		api = create_overlay_ajax_standard();
		api.getContent().find('.cont').empty().load(file,function(){
			$.removeLoading();
			form_init(this);
			$(this).find(':input:visible:first').focus();
		});
		api.load();
		return false;
	})

	$('*[class*=open],*[class*=close],*[class*=toggle]',context).click(function(){
		var aclasses = $(this).attr('class').split(' ');
		for(i in aclasses)
		{
			if(preg = /^open([\w_]+)$/.exec(aclasses[i]))
			{
				var obj = $('#' + preg[1]);
				if(!obj.size()) return true;
				obj.show();
			}
			else if(preg = /^close([\w_]+)$/.exec(aclasses[i]))
			{
				var obj = $('#' + preg[1]);
				if(!obj.size()) return true;
				obj.hide();
			}
			else if(preg = /^toggle([\w_]+)$/.exec(aclasses[i]))
			{
				var obj = $('#' + preg[1]);
				if(!obj.size()) return true;
				obj.toggle();
			}
		}
		return $(this).is(':input');
	})

	$('a.emailimg',context).mouseover(function(){
		var email = $(this).find('img').attr('src').replace(/^.+\?u=/g,'').replace(/&d=/g,'@');
		$(this).attr('href','mailto:' + email);
		return false;
	})
}
