﻿// yui autocomplete
YAHOO.example.ItemSelectHandler = function() { 
	// Use a LocalDataSource 
	var oDS = new YAHOO.util.LocalDataSource(YAHOO.example.Data.touren);
	oDS.responseSchema = {fields : ["name", "url"]}; 
	
	// Instantiate the AutoComplete 
	var oAC = new YAHOO.widget.AutoComplete("myInput", "myContainer", oDS); 
	oAC.resultTypeList = false;
	oAC.prehighlightClassName = "yui-ac-prehighlight"; 
	oAC.useShadow = true; 
	oAC.queryMatchContains = true;
	oAC.minQueryLength = 0;
	oAC.maxResultsDisplayed = 25;
	
	// Define an event handler to populate a hidden form field 
	// when an item gets selected 
	var myHiddenField = YAHOO.util.Dom.get("myHidden"); 
	var myHandler = function(sType, aArgs) { 
		var myAC = aArgs[0]; // reference back to the AC instance 
		var elLI = aArgs[1]; // reference to the selected LI element 
		var oData = aArgs[2]; // object literal of selected item's result data 
		
		// update hidden form field with the selected item's ID 
		myHiddenField.value = oData.url; 
	}; 

	oAC.itemSelectEvent.subscribe(myHandler); 
	
	// submit the form
	var onFormSubmit = function(e, myForm) { 
		YAHOO.util.Event.preventDefault(e);
		if ("" != myHiddenField.value) {
			window.location.href = myHiddenField.value;
		}
	}; 
	YAHOO.util.Event.addListener(YAHOO.util.Dom.get("myForm"), "submit", onFormSubmit); 
	oAC.itemSelectEvent.subscribe(onFormSubmit);
	
	return { 
		oDS: oDS, 
		oAC: oAC 
	}; 
}(); 