Igglo.Rent.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: 'rent/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.AdApartmentRent({
					element: $('index-module-ad-apartment-rent'),
					formElement: $('apartmentrent'),
					locationElement: $('apartmentrent').down('select.location'),
					collapsedElement: $('apartmentrent').down('input.collapsed')
				}),
				true // Set this to be the active module
			)
		
			.register(
				new Igglo.Search.Component.Module.AdVacationhomeRent({
					element: $('index-module-ad-vacationhome-rent'),
					formElement: $('vacationhomerent'),
					locationElement: $('vacationhomerent').down('select.location'),
					collapsedElement: $('vacationhomerent').down('input.collapsed')
				})
			)
			
			.register(
				new Igglo.Search.Component.Module.AdParkingRent({
					element: $('index-module-ad-parking-rent'),
					formElement: $('parkingrent'),
					locationElement: $('parkingrent').down('select.location'),
					collapsedElement: $('parkingrent').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();
		
		new Igglo.Tabs({
			tabElements: this.searchesTabElements,
			contentElements: this.searchesContentElements
		});
		
	}
	
};
