var originalSearchText;
var selectedResult;

function autoComplete(event) {

	currentSelected = $('#autoCompleteBox').children('.autoCompleteResultSelected')[0];
	if(event.keyCode == 40) {
		
		if(currentSelected==null) {
			newSelected = $('#autoCompleteBox').children('.autoCompleteResult')[0];
			selectAutoComplete(newSelected, event.target);
			return false;
		
		}
		else {
			newSelected = $(currentSelected).next();
			if (newSelected!=null) {
				$(currentSelected).attr('class', 'autoCompleteResult');
				selectAutoComplete(newSelected, event.target);
			}
		}
	}
	else if(event.keyCode==38) {
		
		if(currentSelected==null) {
			autoCompleteChildren = $('#autoCompleteBox').children('.autoCompleteResult');
			newSelected = autoCompleteChildren[autoCompleteChildren.length-1]
			selectAutoComplete(newSelected, event.target);
			return false;
		
		}
		else {
			newSelected = $(currentSelected).prev();
			if (newSelected!=null) {
				$(currentSelected).attr('class', 'autoCompleteResult');
				selectAutoComplete(newSelected, event.target);
			}
		}
	
	}
	else if(event.keyCode==39 && currentSelected!=null) {
		selectAutoComplete(currentSelected, event.target);
		$('#autoCompleteBox').empty();
		$('#autoCompleteBox').hide();
		
	}
	else if(event.keyCode==13) {
		$('#autoCompleteBox').empty();
		$('#autoCompleteBox').hide();
	}
	else if(event.keyCode!=39 && event.keyCode!=37 && event.keyCode!=13) {
		url = getBaseURL('/ajax/autoComplete.php');
		q = escape($(event.target).attr('value'));
		$('#autoCompleteBox').load(url+'&q='+q, function(){
			$('#autoCompleteBox').show();
		});
		
	}
}

function mouseSelectAutoComplete(autoCompleteID){
	$('#'+autoCompleteID).attr('class', 'autoCompleteResultSelected');
	if ($('#'+selectedResult).length > 0) $('#'+selectedResult).attr('class', 'autoCompleteResult');
	selectedResult = autoCompleteID;
	$('#searchInput').attr('value', $('#'+autoCompleteID).attr('title'));
}

function selectAutoComplete(divToSelect, inputField) {
	if (divToSelect!=null) {
		$(divToSelect).attr('class','autoCompleteResultSelected');
		$(inputField).attr('value',$(divToSelect).attr('title'));
	}
}

function removeAutoCompleteBox() {
	$('#autoCompleteBox').empty();
	$('#autoCompleteBox').hide();
}
