function HomeApp() {

	HomeApp.baseConstructor.call(this, null, "homeApp"); 
	this.componentController = new ComponentController();
	
	// Registers this app itself to subscribe to events
	this.componentController.register(this);

	this.loginComponent = new LoginComponent($("#loginComponent"));
	this.componentController.register(this.loginComponent);
	//communityCloud		
	this.communityCloud = new CommunityCloud($("#latestActiveUsers"));
	this.componentController.register(this.communityCloud);
	//popularContents		
	this.popularContents = new PopularContents($("#popularContents"));
	this.componentController.register(this.popularContents);
	//hotTopics		
	//this.hotTopics = new HotTopics($("#hotTopics"));
	//this.componentController.register(this.hotTopics);
	
	//tracker		
	this.SessionTracker = new Tracker();
	this.componentController.register(this.SessionTracker);
	
	this.componentController.init();
	

	this.$searchForm = $("#keywordSearchForm");
	this.$keywordInputField = $("#searchBox");

	var _this = this;
	this.$searchForm.submit(
		function(){
			document.location.href=MACEConstants.rootURL+ "filteredsearch#/?query=searchTerm,"+_this.$keywordInputField.val();
			return false;
		}
	);
	
	$("#repositoryList a").each(function() {
		var catalogId = $(this).attr("id").substring(3);
		var catalog = LOM.guessCatalog(catalogId);
		$(this).attr("title", catalog.description);
		$(this).attr("href", catalog.URL);
		$(this).text(catalog.name);
		$(this).addClass("showTooltip");
	});
	
	$(".showTooltip").tipsy({fade: true, gravity:"s"});
}
HomeApp.extend(Component);

