var FlashText = {};

// FlashText.draw()
FlashText.draw = function (version, id, src, width, height, noPlayerHtml, vars, quality) {

  var html = '';
  
  // Detect flash
  if (!window.flashVersion) {
  
    // IE ActiveX
    if (window.ActiveXObject) {
      for (var i = 6; i <= 10; i++) {
				try {
					new window.ActiveXObject('ShockwaveFlash.ShockwaveFlash.' + i);
					window.flashVersion = i;
				}
				catch( error ) { }
      }
    }
    // Other browsers
		else if ( navigator.plugins && navigator.plugins['Shockwave Flash'] && navigator.plugins['Shockwave Flash'].description) {
			var matches = navigator.plugins['Shockwave Flash'].description.match(/([0-9]+)\.[0-9]+/);
			if (matches[1] && !isNaN(parseInt(matches[1]))) {
				window.flashVersion = parseInt(matches[1]);
			}
		}
  }

	if (!window.flashVersion || window.flashVersion < version) {
		html = noPlayerHtml;
	}
	else {
		var objectHtml = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle"';
		var paramsHtml = '<param name="allowScriptAccess" value="sameDomain" />';
		var embedHtml = '<embed swLiveConnect="true" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"';
		
		// width, height
  		var sizeHtml = ' width="' + width + '" height="' + height + '"';
  		objectHtml += sizeHtml;
		embedHtml += sizeHtml;

		// src
		paramsHtml += '<param name="movie" value="' + src + '" />';
		embedHtml	+= ' src="' + src + '"';
		
		// id
		if (id) {
			objectHtml += ' id="' + id + '"';
			embedHtml += ' name="' + id + '" id="' + id + '"';
		}
		
		// menu
		paramsHtml += '<param name="menu" value="false" />';
		embedHtml += ' menu="false"';
		
		// scale
		paramsHtml += '<param name="scale" value="noscale" />';
		embedHtml += ' scale="noscale"';
		
		// quality
		paramsHtml += '<param name="quality" value="' + quality + '" />';
		embedHtml += ' quality="' + quality + '"';
		
		// salign
		paramsHtml += '<param name="salign" value="tl" />';
		embedHtml  += ' salign="tl"';
		
		// wmode
		paramsHtml += '<param name="wmode" value="transparent" />';
		embedHtml += ' wmode="transparent"';
		
		// flashvars
		var varsHtml = [];
		for (var i in vars) {
			varsHtml.push(i + '=' + encodeURI(vars[i]).replace('&', '%26'));
		}
		if(varsHtml.length > 0) {
			varsHtml = varsHtml.join('&amp;');
			paramsHtml += '<param name="flashvars" value="' + varsHtml + '">';
			embedHtml	+= ' flashvars="' + varsHtml + '"';
		}
		
		html = objectHtml + '>' + paramsHtml + embedHtml + ' /></object>';
	}
	
	try {
		document.write( html );
	}
	catch ( error ) { }
}

// FlashText.set()
FlashText.set = function (id, properties) {

	var fo = document.getElementById(id);
	if (fo) {
		var embed = fo.getElementsByTagName("embed");
		if ( embed && embed.length > 0 ) {
			fo = embed[0];
		}

		// style
		fo.SetVariable("dstyle", properties.style);

		// text
		if (properties.text) {
			fo.SetVariable("text", properties.text);
		}
	}
}