var getScriptTag = function(name)
{
	var scripts = document.getElementsByTagName("script");
	for (var i=0; i<scripts.length; ++i)
	{
		var script = scripts[i];
		var src = script.getAttribute("src");
		if (src)
		{
			var index = src.indexOf(name);
			if (index>0)
			{
				return script;
			}
		} 
	}
	return null;
}

var getParams = function(url)
{
	var result = {};
	var parts = url.split("?");
	if (parts && parts.length>1)
	{
		var query = parts[1];
		var pairs = query.split("&");
		for (var i=0; i<pairs.length; ++i)
		{
			var pair = pairs[i].split("=");
			if (pair && pair.length>1)
			{
				result[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);
			}
		}
	}
	return result;
}

var onLogEvent = function(event)
{
	if (window.console && window.console.debug)
	{
		window.console.debug("flash log: "+event);
	}
}

var getPlayer = function()
{
	var playerNodeId = "I000MIKES_Player";
	var playerNode = document.getElementById(playerNodeId);
	return playerNode;	
}

var createPlayer = function(flashPath)
{
	//  new id: starts with alphabetical character for IE8/swfobject bug
	var playerNodeId = "I000MIKES_Player";
	var playerNode = document.getElementById(playerNodeId);

	if (!playerNode)
	{
		// try old id
		playerNodeId = "1000MIKES_Player";
		playerNode = document.getElementById(playerNodeId);
	}
	
	if (!playerNode)
	{
		return;
	}
	
	var links = playerNode.getElementsByTagName("a");
	if (!links || links.length==0)
	{
		return;
	}

	var url = links[0].getAttribute("href");
	var urlParams = getParams(url);
	urlParams.baseUrl = mikes.homeUrl;
	if (mikes.getState) {
		urlParams.login = mikes.getState().login;
		urlParams.hash = mikes.getState().hash;
	}

	var flashvars = urlParams;
	var flashParams = { 
		allowscriptaccess: "always",
		align: "middle",
		quality: "high" };

	var bgcolor = urlParams['bgcolor'] || urlParams['bgcolor'];
	if (bgcolor)
	{
		if (bgcolor.indexOf("0x")==0) { bgcolor = bgcolor.substring(2); }
		if (bgcolor.indexOf("#")==0) { bgcolor = bgcolor.substring(1); }
		flashParams['bgcolor'] = bgcolor;	
	};
	
	// don't export methods to Javscript in IE6  
	var ie6 = navigator.userAgent.indexOf("MSIE 6")>0; 
	if (ie6)
	{
		// does not help :-(
		// flashvars["export"] = "false";
	}
	
	if (window.console && window.console.debug && !ie6)
	{
		flashvars.logCallbackFunction = "onLogEvent";
	}
	
	// flashvars.referer = document.location.toString();

	var type = urlParams.type;
	if (!type) { type = "maxi"; }
	
	var width = type=="maxi" ? "100%" : (type=="xmaxi" ? "100%" : "20px");;
	var height = type=="maxi" ? "140" : (type=="xmaxi" ? "100%" : "20px");

	if (type=="medium") { width = "155"; height = "112"; }

	var version = typeof(mikes)!="undefined" ? mikes.version : "X";

	swfobject.embedSWF(
		flashPath+type+".swf?version="+version, 
		playerNodeId, 
		width,
		height,
		"9.0.0",
		flashPath+"playerProductInstall.swf", 
		flashvars,
		flashParams, 
		{}
	); 
}


