var ScriptsManager = {
//{ Private
	_delegates: new Object(),
	_scripts: new Object(),

	_executeRegisteredDelegates: function(name)
	{
		var delegates = this._delegates[name];
		if(delegates != undefined){
			for(var i = 0; i < delegates.length; i++){
				delegates[i]();
			}
		}
	},
//}
//{ Public
	registerScript: function(name)
	{
		this._scripts[name] = name;
		this._executeRegisteredDelegates(name);
	},

	scriptIsReady: function(name, func)
	{
		if(this._scripts[name] == undefined){
			if(this._delegates[name] == undefined){
				this._delegates[name] = new Array(func);
			} else {
				this._delegates[name].push(func);
			}
		} else {
			func();
		}
	}
//}
};