/****************************************************************************

* Flash Tag Write Object v1.2b - by Lucas Fererira - www.lucasferreira.com	*

* Info and Usage: www.lucasferreira.com/flashtag							*

* bugs/reports: contato@lucasferreira.com									*

****************************************************************************/



if(Browser == undefined){

	var Browser = {

		isIE: function(){ return (window.ActiveXObject && document.all && navigator.userAgent.toLowerCase().indexOf("msie") > -1  && navigator.userAgent.toLowerCase().indexOf("opera") == -1) ? true : false; }

	}

}



var Flash = function(movie, id, width, height, initParams){



	this.html = "";

	this.attributes = this.params = this.variables = null;

	

	this.variables = new Array();

	this.attributes = {

		"classid": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",

		"codebase": "http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab#version=8,0,22,0",

		"type": "application/x-shockwave-flash"

	}

	this.params = { "pluginurl": "http://www.macromedia.com/go/getflashplayer_br" };

	

	if(movie) {

		this.addAttribute("data", movie);

		this.addParameter("movie", movie);

	}

	

	if(id && id != null) this.addAttribute("id", id);

	if(width) this.addAttribute("width", width);

	if(height) this.addAttribute("height", height);

	

	if(initParams != undefined){

		for(var i in initParams){

			this.addParameter(i.toString(), initParams[i]);

		}

	}

	

}

Flash.version = "1.2b";

Flash.getObjectByExceptions = function(obj, excep){

	var tempObj = {};

	for(var i in obj){

		var inclui = true;

		for(var j=0; j<excep.length; j++)

			if(excep[j] == i.toString()) { inclui = false; break; };

		if(inclui) tempObj[i] = obj[i];

	}

	return tempObj;

}

Flash.prototype.addAttribute = function(prop, val){ this.attributes[prop] = val; }

Flash.prototype.addParameter = function(prop, val){ this.params[prop] = val; }

Flash.prototype.addVariable = function(prop, val){ this.variables.push([prop, val]); }

Flash.prototype.getFlashVars = function(){

	var tempString = new Array();

	

	for(var i=0; i<this.variables.length; i++)

		tempString.push(this.variables[i].join("="));

		

	return tempString.join("&");

}

Flash.prototype.toString = function(){

	

	this.params.flashVars = this.getFlashVars();

	if(Browser.isIE()){

		//IE

		this.html = "<ob" + "ject";

		var attr = Flash.getObjectByExceptions(this.attributes, ["type", "data"]);

		for(var i in attr) if(i.toString() != "extend") this.html += " " + i.toString() + " = \"" + attr[i] + "\"";

		this.html += "> ";

		var params = Flash.getObjectByExceptions(this.params, ["pluginurl", "extend"]);

		for(var i in params) if(i.toString() != "extend") this.html += "<param name=\"" + i.toString() + "\" value=\"" + params[i] + "\" /> ";

		this.html += " </obj" + "ect>";

	} else {

		//non-IE

		this.html = "<!--[if !IE]> <--> <obj" + "ect";

		var attr = Flash.getObjectByExceptions(this.attributes, ["classid", "codebase"]);

		for(var i in attr) if(i.toString() != "extend") this.html += " " + i.toString() + " = \"" + attr[i] + "\"";

		this.html += "> ";

		var params = Flash.getObjectByExceptions(this.params, ["extend"]);

		for(var i in params) if(i.toString() != "extend") this.html += "<param name=\"" + i.toString() + "\" value=\"" + params[i] + "\" /> ";

		this.html += " </obj" + "ect> <!--> <![endif]-->";

	}



	return this.html;

	

}

Flash.prototype.write = Flash.prototype.outIn = Flash.prototype.writeIn = function(w){

	if(typeof w == "string" && document.getElementById) var w = document.getElementById(w);

	if( w != undefined && w ) w.innerHTML = this.toString();

	else document.write( this.toString() );

}