var SearchBus = new Class({
	
	instanceName : "SearchBus",
	
	events: [],
	
	initialize: function()
	{
		var alredyInstanciated = ($defined(document[this.instanceName]))
		if(!alredyInstanciated)
		{
			document[this.instanceName] = this;
		}
		return document[this.instanceName];
	},
	
	registerCallback: function(callback, event)
	{
		if(!$defined(this.events[event]))
		{
			this.events[event] = []
		}
		
		this.events[event].push(callback);
	},
	
	trigger: function(event, param)
	{
		
		if(!$defined(this.events[event]))
		{
			return false;
		}
		
		this.events[event].each(function(event){
			event(param);
		})
	}

});