var param = {};
var url = '';
var scrollTop = 0;
var bind = false;
$(document).ready(function(){
	$(".popupswf").click(function(){return popupswf_open($(this).attr('href'))});
});

function popupswf_open(req_url){
	if(bind) return false;
	bind = true;
	
	scrollTop = 0;
	if (typeof document.body.style.maxHeight === "undefined"){
		$("body","html").css({height: "100%", width: "100%"});
		
		if(document.body.scrollTop) scrollTop = document.body.scrollTop;
		if(document.documentElement.scrollTop) scrollTop = document.documentElement.scrollTop;
	}
	
	url = req_url;
	
	if(url.indexOf("?")!==-1){
		param = parse_query(url);
		url = url.substr(0, url.indexOf("?"));
	}else{
		url = url;
	}
	
	if(!param['width'] || !param['height']) return false;
	if(param['margin']){
		if(!param['margin_top']) param['margin_top'] = param['margin'];
		if(!param['margin_bottom']) param['margin_bottom'] = param['margin'];
		if(!param['margin_left']) param['margin_left'] = param['margin'];
		if(!param['margin_right']) param['margin_right'] = param['margin'];
	}
	if(!param['margin_top']) param['margin_top'] = 10;
	if(!param['margin_bottom']) param['margin_bottom'] = 10;
	if(!param['margin_left']) param['margin_left'] = 10;
	if(!param['margin_right']) param['margin_right'] = 10;
	if(!param['bgcolor']) param['bgcolor'] = '#000000';
	if(!param['border']) param['border'] = 20;
	if(!param['corner']) param['corner'] = 10;
	if(!param['opacity']) param['opacity'] = 0.50;
	if(!param['twitter']) param['twitter'] = 'on';
	
	popupswf_overlayer();
	return false;
}

	
function popupswf_overlayer(){
	if ($.browser.msie && $.browser.version < 7){
		$("body","html").css({height: "100%", width: "100%"});
	}
	$("body").append('<div id="swfoverlayer"></div>');
	$("#swfoverlayer").css({
		width:"100%",
		height:"100%",
		top:0,
		left:0,
		backgroundColor:"#FFFFFF",
		position:"fixed",
		opacity:0,
		zIndex:100
	});
	if ($.browser.msie && $.browser.version < 7){
		$("#swfoverlayer").css({position:"absolute"});
	}
	popupswf_box();
}

function popupswf_box(){
	$("body").append('<div id="swfstage"></div>');
	
	var box_width = parseInt(param['width'])+parseInt(param['margin_right'])+parseInt(param['margin_left']);
	var box_height = parseInt(param['height'])+parseInt(param['margin_top'])+parseInt(param['margin_bottom']);
	
	if(box_height%2!=0) box_height++;
	if(box_width%2!=0) box_width++;
	
	if (!$.browser.msie){
		$("#swfstage").corner(param['corner']+"px");
	}
	$("#swfstage").css({
		width:0,
		height:0,
		backgroundColor:param['bgcolor'],
		left:"50%",
		top:"50%",
		position:"fixed",
		marginTop:scrollTop,
		opacity:0.00,
		zIndex:200
	});
	if ($.browser.msie && $.browser.version < 7){
		$("#swfstage").css({position:"absolute"});
	}
	
	
	
	$("#swfstage").animate(
		{
			width:box_width,
			height:box_height,
			marginLeft:0-parseInt(box_width/2),
			marginTop:scrollTop-parseInt(box_height/2),
			opacity:param['opacity']
		},
		"fast",
		function(){
			if(param['twitter'] == 'on'){
				$("#twitter").css({
					width:$("#twitter").width(),
					height:$("#twitter").height(),
					left:"50%",
					top:"50%",
					display:"block",
					position:"fixed",
					zIndex:400
				});
				$("#twitter").css({
					marginLeft:parseInt(box_width/2)-$("#twitter").width()-21,
					marginTop:scrollTop-parseInt(box_height/2)+15
				});
				if ($.browser.msie && $.browser.version < 7){
					$("#twitter").css({position:"absolute"});
				}
			}
			popupswf_swf();
			
			$("#swfoverlayer").click(popupswf_close);
		}
	);
	
	
}

function popupswf_close(){
	$("#swfoverlayer").unbind('click',popupswf_close);
	$("#swfoverlayer").remove();
	$("#movie").remove();
	$("#twitter").css({display:"none"});
	$("#swfstage").animate(
		{
			width:0,
			height:0,
			marginLeft:0,
			marginTop:scrollTop,
			opacity:0.00
		},
		400,
		function(){
			$("#movie").remove();
			$("#twitter").css({display:"none"});
			$("#swfstage").remove();
			$("#swfoverlayer").remove();
			param = {};
			bind = false;
		}
	);
}

function popupswf_swf(){
	var swf_width = parseInt(param['width']);
	var swf_height = parseInt(param['height']);
	
	$("body").append('<div id="movie"><div id="swf"></div></div>');
	$("#movie").css({
		width:swf_width,
		height:swf_height,
		marginLeft:0-parseInt(swf_width/2)-(parseInt(param['margin_right'])-parseInt(param['margin_left']))/2,
		marginTop:scrollTop-parseInt(swf_height/2)-(parseInt(param['margin_bottom'])-parseInt(param['margin_top']))/2,
		left:"50%",
		top:"50%",
		position:"fixed",
		zIndex:300
	});
	
	if ($.browser.msie && $.browser.version < 7){
		$("#movie").css({position:"absolute"});
	}
	
	var flashvars = {};
	var swfparams = {};
	var attributes = {};
	swfparams.wmode = "transparent";
	attributes.id = "movie";
	swfobject.embedSWF(url, "swf", swf_width, swf_height, "9.0.0", false, flashvars, swfparams, attributes);
}

function parse_query(url) {
	var qs = url.replace(/^[^\?]+\??/,'');
	var params = {};
	var keyvals = qs.split(/[;&]/);
	for(var i=0; i<keyvals.length; i++){
		var keyval = keyvals[i].split('=');
		params[keyval[0]] = keyval[1];
	}
	return params;
}
