(function($){
	$.fn.InsertObject = function(settings) {
		var fn = new Object();
		var o = this;
		
		settings = jQuery.extend({
			bgcolor: '#ffffff',
			quality: 'high',
			cache: 'true',
			autoplay: 'true',
			controller: 'true',
			scale: 'tofit',
			version: '9,0,0,0',
			allowscriptaccess: 'always',
			wmode: 'transparent',
			loop: 'false',
			append: false,
			flashVars: null
		}, settings);
		
		fn.createObject = function(param, classid, codebase) {
			var object = new String();
			if ($.browser.msie) {
				object += '<object id="objInsert_' + o.attr('id') + '" classid="' + classid + '" codebase="' + codebase + '" height="' + settings.height + '" width="' + settings.width + '">\n';
				for (var i = 0; i < param.length; i++) {
					object += '<param name="' + param[i][0] + '" value="' + param[i][1] +'">\n';
				}
				object += '</object>\n';
			} else {
				object += '<embed src="' + settings.src + '" width="' + settings.width + '" height="' + settings.height + '" ';
				for (var i = 0; i < param.length; i++) {
					object += param[i][0] + '="' + param[i][1] +'" ';
				}
				object += ' />\n';
			}
			return object;
		};
		
		fn.createParams = function() {
			var param = new Array();
			var classid, codebase;

			if (settings.src.indexOf('.mov') != -1 || settings.src.indexOf('.mp3') != -1) {
				classid = 'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B';
				codebase = 'http://www.apple.com/qtactivex/qtplugin.cab';
				param[0] = ['pluginspage', 'http://www.apple.com/quicktime/download/'];
				param[1] = ['src', settings.src];
				param[2] = ['controller', settings.controller];
				param[3] = ['autoplay', settings.autoplay];
				param[4] = ['cache', settings.cache];
				param[5] = ['scale', settings.scale];
			} else if (settings.src.indexOf('.swf') != -1) {
				classid = 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000';
				codebase = 'http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + settings.version;
				param[0] = ['pluginspage', 'http://www.macromedia.com/go/getflashplayer'];
				param[1] = ['movie', settings.src];
				param[2] = ['quality', settings.quality];
				param[3] = ['bgcolor', settings.bgcolor];
				param[4] = ['allowscriptaccess', settings.allowscriptaccess];
				param[5] = ['flashvars', settings.flashVars];
				param[6] = ['wmode', settings.wmode];
				param[7] = ['scale', settings.scale];
				param[8] = ['type', 'application/x-shockwave-flash'];
			}
			
			if ($.browser.msie) {
				o.each(function() {
				    if (!settings.append) {
					    this.innerHTML = fn.createObject(param, classid, codebase);
					} else {
					    this.innerHTML += fn.createObject(param, classid, codebase);
					}
				});
			} else {
			    if (!settings.append) {
				    o.html(fn.createObject(param, classid, codebase));
				} else {
				    o.append(fn.createObject(param, classid, codebase));
				}
			}
		};
		fn.createParams();
	}
})(jQuery);