
function FlashObject_DMT(src,id, classid) {
	
	var me = this;
	
	this.src = src;
	this.id = id;
	this.classid = classid;
	
	this.Attributes = null;
	this.Variables = null;
	this.Events = null;
	
	this.FlashVersion = '7.0.0.0';
	var href = location.href;
	if (href.substring(0,5)=='https'){
		this.FlashCodebase = 'https://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=';
	}
	else{
		this.FlashCodebase = 'http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=';
	}

	this.FlashType = 'application/x-shockwave-flash';
	this.FlashPluginspage = 'http://www.macromedia.com/go/getflashplayer';
		
	this.AddVariable = function(name, value) {
		if (me.Variables==null) {
			me.Variables = new Array()
		}
		me.Variables[me.Variables.length] = new Array(2);
		me.Variables[me.Variables.length-1][0] = name;
		me.Variables[me.Variables.length-1][1] = value;
	}
	this.AddAttribute = function(name, value) {
		if (me.Attributes==null) {
			me.Attributes = new Array()
		}
		me.Attributes[me.Attributes.length] = new Array(2);
		me.Attributes[me.Attributes.length-1][0] = name;
		me.Attributes[me.Attributes.length-1][1] = value;		
	}
	this.SetFlashVersion = function(version) {
		me.FlashVersion = version;
	}
	this.AddEvent = function(eventType, fn) {
		if (me.Events==null) {
			me.Events = new Array()
		}
		//alert(fn);
		//alert(eval(fn));
		//alert('A');
		me.Events[me.Events.length] = new Array(2);
		me.Events[me.Events.length-1][0] = eventType;
		me.Events[me.Events.length-1][1] = fn;
		//alert(me.Events.length);
	}

	this.WriteFlash = function() {
	
		var i = 0;
		var strHTML='';
		strHTML +='<object ';
		
		//Object Attributes
		if (me.id != undefined) 		strHTML +='id="' + me.id + '" ';
		strHTML = 						strHTML +='codebase="' + me.FlashCodebase + me.FlashVersion + '" ';
		if (me.classid != undefined) 	strHTML +='classid="' + me.classid + '" ';

		if (me.Attributes != undefined) {
			for (i=0; i<me.Attributes.length; i++) {
				strHTML += me.Attributes[i][0] + '="' + me.Attributes[i][1] + '" ';
			}
		}		

		strHTML += '>';
		
		//Object Params
		if (me.src != undefined) {strHTML +='<param name="movie" value="' + me.src + '"></param>';
		if (me.Variables != undefined) {
			for (i=0; i<me.Variables.length; i++) {
				strHTML += '<param name="' + me.Variables[i][0] + '" value="' + me.Variables[i][1] + '"></param>';
			}		
		}
		
		//Embedd Attributes
		strHTML +='<embed ';
		if (me.id != undefined) 		strHTML +='name="' + me.id + '" ';
		if (me.src != undefined) 		strHTML +='src="' + me.src + '" ';
		
		strHTML +='type="' + me.FlashType + '" ';
		strHTML +='pluginspage="' + me.FlashPluginspage + '" ';
		
		if (me.Attributes != undefined) {
			for (i=0; i<me.Attributes.length; i++) {
				strHTML += me.Attributes[i][0] + '="' + me.Attributes[i][1] + '" ';
			}
		}
		if (me.Variables != undefined) {
			for (i=0; i<me.Variables.length; i++) {
				strHTML += me.Variables[i][0] + '="' + me.Variables[i][1] + '" ';
			}		
		}
		
		strHTML += '>';
		strHTML +='</embed>';

		strHTML +='</object>';
		document.write(strHTML);
		
		//alert(document.getElementById(me.id));
		var obj = document.getElementById(me.id)
		if ((obj != null)&&(me.Events != null)) {
			for (i=0; i<me.Events.length; i++) {
				if (obj.addEventListener){
					obj.addEventListener(me.Events[i][0], me.Events[i][1], false);
					return true;
				} 
				else if (obj.attachEvent){
					var r = obj.attachEvent("on"+me.Events[i][0], me.Events[i][1]);
					return r;
				} 
				else {
					return false;
				}
			}
		}
		}
	}
}