// add the extension translations
PluginObject.Util.ExtensionTranslation.RealPlayer = ['ra', 'ram', 'rv', 'rpm'];
PluginObject.Util.AliasTranslation.RealPlayer = ['rp', 'realplayer', 'real'];

PluginObject.Plugins.RealPlayer = function()
{
};

PluginObject.Plugins.RealPlayer.prototype = {
	
	options:{
		upgrade_url			: 'http://www.real.com/',
		_class_id			: 'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',
		_type				: 'audio/x-pn-realaudio-plugin',
		params: {
			console : 'one',
			controls : 'ImageWindow',
			backgroundcolor : '#FFFFFF',
			center : 'true'
		}
	},
	
	_initiate: function(constructor, src, options)
	{
//		merge the default options with the plugin defaults
		PluginObject.Util.mergeObjects(constructor.options, this.options || {});
		constructor.options.params = PluginObject.Util.mergeObjects(this.options.params, constructor.options.params);
		
		constructor.setAttribute('type', constructor.options.type);
		constructor.addParam('type', constructor.options.type);
		
		constructor.installed = this._getPlayerVersion(constructor);
		if(options.bgcolor) 
		{ 
			constructor.addParam('bgcolor', options.bgcolor); 
		}
	},
	
	_getPlayerVersion: function(constructor)
	{
		var PlayerVersion = false;
		var foundPlayerVersion;
		if(navigator.plugins && navigator.mimeTypes.length)
		{
			for (var i=0; i < navigator.plugins.length; i++) 
			{
				var x = navigator.plugins[i];
				if (x.name.indexOf('RealPlayer') > -1) 
				{
					PlayerVersion = true;
				}
			}
		}
		else
		{
			execScript('on error resume next: rpObj1 = IsObject(CreateObject("rmocx.RealPlayer G2 Control"))', 'VBScript');
			execScript('on error resume next: rpObj2 = IsObject(CreateObject("RealPlayer.RealPlayer(tm) ActiveX Control (32-bit)"))', 'VBScript');
			execScript('on error resume next: rpObj3 = IsObject(CreateObject("RealVideo.RealVideo(tm) ActiveX Control (32-bit)"))', 'VBScript');
			PlayerVersion = rpObj1 || rpObj2 || rpObj3;
		}
		return PlayerVersion;
	},
	
	_detect: function(constructor)
	{
		return (constructor.installed)
	}
	
};
