document.write('<link rel="stylesheet" type="text/css" href="/plugins/yt-popup/styles.css" />');
if (!jQuery) alert('jQuery is required for YouTube plugin.');
else
jQuery(function($){
	var arr_req = [];
	if (!$.tools) arr_req.push('/cjs/jquery.tools.min.js');
	if (!window.swfobject) arr_req.push('/cjs/swfobject.js');
	fn_getScripts(arr_req,function(){
		$('a.youtube').each(function(){
			var $a = $(this), src = fn_movie_src($a.attr('href'));
			if (src) {
				$a.click(function(){
					var $modal = fn_yt_load(src);
					if ($modal) $modal.overlay().load();
					return false;
				});
			}
		});
	});
	
	function fn_movie_src(href) {
		var re = /watch\?v=([^=]*)/, a = re.exec(href);
		if (a && a.length) return "http://www.youtube.com/v/" + a[1] + "&hl=en_US&fs=1&rel=0";
	}
	
	function fn_getScripts(arr_scripts,fn_callback) {
		var i = 0, c = arr_scripts.length;
		$.each(arr_scripts,function(){ $.getScript(this,function(){ i++; if (i == c) fn_callback(); }); });
	}
	
	function fn_yt_load(src) {
		var $modal = fn_yt_load.modal;
		if ($modal) return $modal;
		if (swfobject.hasFlashPlayerVersion("9.0.0")) {
			$modal = fn_yt_load.modal = new_modal();
			var str_id = 'vid_' + Math.random().toString().replace('.','');
			$modal.find('div:last').html('').append($('<div/>').attr({id:str_id}));
			var flvars = {};
			var params = {allowscriptaccess:'always',wmode:'transparent',allowfullscreen:'true'};
			var attrib = {};
			swfobject.embedSWF(src,str_id,620,460,'9.0.0',false,flvars,params,attrib);
		} else {
			alert('Flash Player 9.0 or newer required.');
		}
		return $modal;
	}
	
	function new_modal() {
		var $modal;
		var cfg_overlay = {expose:{color:'#000',loadSpeed:200,opacity:0.8},closeOnClick:false,api:true};
		var str_id = 'el_' + Math.random().toString().replace('.','');
		$modal = $('<div/>').addClass('yt-modal').append($('<div/>').attr({id:str_id}));
		$('body').append($modal);
		var $overlay = $modal.overlay(cfg_overlay);
		return $modal;
	}
});

