Igglo.Default.Index.Index = {
	
	initialize: function(object) {
	
		Object.extend(this, object);

		(new (Igglo('Search')))
		
			.register(
				new Igglo.Search.Component.MoveToSearch({
					location: this.searchLocation,
					buttonElement: $('index-move-to-search'),
					linkElement: $('index-move-to-search-advanced')
				})
			)
			
			.register(
				new Igglo.Search.Component.Layout({
					prefix: 'index/index/',
					element: $('index-search'),
					titleElement: $('index-title'),
					modulesElement: $('index-modules-list')
				})
			)
		
			.register(
				new Igglo.Search.Component.IggloSearch({
					inputElement: $('igglo_id')
				})
			)
			
			.register(
				new Igglo.Search.Component.Location({
					inputElement: $('magicbox'),
					locationSelectElement: $('index-magicbox-open-location-select')
				})
			)
			
			.register(
				new Igglo.Search.Component.Module.AdApartmentSell({
					element: $('index-module-ad-apartment-sell'),
					formElement: $('apartmentsell'),
					locationElement: $('apartmentsell').down('select.location'),
					collapsedElement: $('apartmentsell').down('input.collapsed')
				}),
				true // Set this to be the active module
			)
		
			.register(
				new Igglo.Search.Component.Module.AdLotSell({
					element: $('index-module-ad-lot-sell'),
					formElement: $('lotsell'),
					locationElement: $('lotsell').down('select.location'),
					collapsedElement: $('lotsell').down('input.collapsed')
				})
			)
			
			.register(
				new Igglo.Search.Component.Module.AdVacationhomeSell({
					element: $('index-module-ad-vacationhome-sell'),
					formElement: $('vacationhomesell'),
					locationElement: $('vacationhomesell').down('select.location'),
					collapsedElement: $('vacationhomesell').down('input.collapsed')
				})
			)
			
			.register(
				new Igglo.Search.Component.Module.AdFarmSell({
					element: $('index-module-ad-farm-sell'),
					formElement: $('farmsell'),
					locationElement: $('farmsell').down('select.location'),
					collapsedElement: $('farmsell').down('input.collapsed')
				})
			)
		
			.register(
				new Igglo.Search.Component.Module.AdParkingSell({
					element: $('index-module-ad-parking-sell'),
					formElement: $('parkingsell'),
					locationElement: $('parkingsell').down('select.location'),
					collapsedElement: $('parkingsell').down('input.collapsed')
				})
			)
			
			.register(
				new Igglo.Search.Component.View.Count({
					element: $('index-view-count'),
					countElement: $('index-view-count-count')
				}),
				true // Set this to be the active view
			)
			
			.load();
		
		
		
		Igglo.Form.clearize(this.buildingSearchFormElement);
		
		Event.observe(this.buildingSearchFormElement, 'submit', this.onBuildingSearchSubmit.bindAsEventListener(this));
		
		new Igglo.Tabs({
			tabElements: this.searchesTabElements,
			contentElements: this.searchesContentElements
		});
		
	},
	
	onBuildingSearchSubmit: function(event) {
	
		Igglo.Form.clear(this.buildingSearchAddressElement);
		
	}
	
};
