Event.observe(window, 'load', function(){
	new Ajax.Autocompleter('dsearch', 'dsearch_autocomplete', '/staticfiles/directory/directory.php', {
			minChars : 3
		,	parameters : "dv=autocomplete"
	});
	Event.observe('directorySearchForm', 'submit', function(e){
		Event.stop(e);
		start_directory_search();
	});
	Event.observe('clearDirectoryForm', 'click', function(e){
		clear_directory_search();
	});
	//init pagination
	init_directory_pagination()
	$$('.letters_container .letter').each(function(e){
		Event.observe(e, 'click', function(event) {
			$$('.letters_container .current').invoke('removeClassName', 'current');
			e.addClassName('current');
			$('dletter').value = e.innerHTML;
			start_directory_search();
		});
	});
});
function start_directory_search() {
	$('directory_loader').show();
	new Ajax.Updater('dir_listings_container', '/staticfiles/directory/directory.php?dv=ajax', {
			method: 'post'
		,	parameters: $('directorySearchForm').serialize()
		,	onComplete: function(transport) {
				init_directory_pagination();
				$('directory_loader').hide();
			}
	});
}
function clear_directory_search() {
	$$('.letters_container .current').invoke('removeClassName', 'current');
	$('dletter').value = '';
	$('dircat').value = '';
	$('dsearch').value = '';
	start_directory_search();
}
function init_directory_pagination() {
	$$('.list_pagination .page').each(function(e){
		Event.observe(e, 'click', function(event) {
			if(!e.hasClassName('current'))
				change_directory_page(parseInt(e.title) - 1);
		});
	});
}
function change_directory_page(page_id) {
	$('directory_loader').show();
	new Ajax.Updater('dir_listings_container', '/staticfiles/directory/directory.php?dv=ajax&dpage='+page_id, {
			method: 'post'
		,	parameters: $('directorySearchForm').serialize()
		,	onComplete: function(transport) {
			//Need to re-init pagination here!!
				init_directory_pagination();
				$('directory_loader').hide();
			}
	});
}
