Gatcha.GameLoader = Class.create({
	
	initialize: function(gameid)
	{
		this.gameid = gameid;
		this.width = 600;
		this.height = 400;
		this.flashVersion = 10;
		this.flashvars = {};
		this._onLoadCallbacks = [];
	},
	
	setHeight: function(height)
	{
		this.height = height;
	},
	
	setWidth: function(width)
	{
		this.width = width;
	},
	
	setFlashVars: function(flashvars)
	{
		this.flashvars = flashvars;
	},
	
	setFlashVersion: function(version)
	{
		this.flashVersion = version;
	},
	
	registerOnLoadCallback: function(callback)
	{
		this._onLoadCallbacks.push(callback);
	},
	
	loadGame: function()
	{
		var filename = Framework.Configuration.get('gatchaSecureLoader');
		
		var params = {
			menu: 'false',
			allowscriptaccess: 'always',
			allowFullScreen: 'true'
		};
		
		var attributes = {};
				
		swfobject.embedSWF(
			filename,
			'swfContainer',
			this.width,
			this.height,
			"10.0.0",
			Framework.Configuration.get('expressInstall'),
			this.flashvars,
			params,
			attributes,
			function()
			{
				$('swfContainer').setStyle({visibility: 'inherit'});
			}
		);
		
		this._onLoadCallbacks.each(function(callback)
		{
			callback();
		});
		
		return $('swfContainer');
	},
	
	_eoo: true
});
