var req;var cursor = -1;function initializeXmlHttpRequest() {if (window.ActiveXObject) {req=new ActiveXObject('Microsoft.XMLHTTP');}else {req=new XMLHttpRequest();}}function clearOptions(curControl) {if (curControl == null)  {return;}if (curControl.options.length < 1) return;curControl.options.length = 0;}function populateSelectControl(curControl, dataValues) {var blankOption= new Option('','',false,true);curControl.options[curControl.options.length]=blankOption;for (var i=0;i<dataValues.length;i++) {var newOption= new Option(dataValues[i],dataValues[i],false,false);curControl.options[curControl.options.length]=newOption;}}function getSelectedValue(controlName) {if (controlName == null) return '';var curControl = document.getElementById(controlName);if (curControl == null) return '';if (curControl.selectedIndex < 0) return '';var selectedValue = curControl.options[curControl.selectedIndex].value;return selectedValue;}function disableFormField(controlName, isDisabled) {if (isDisabled == null) isDisabled = true;if (controlName == null) return;var curControl = document.getElementById(controlName);if (curControl == null) return;curControl.disabled = isDisabled;}function populateSuggestionList(curControl, dataValues) {var container = document.getElementById(curControl.id + '_suggest');container.style.width='100%';if (container == null) { return; }container.innerHTML = '';if (dataValues.length < 1) { container.style.display='none';return;}container.style.display='block';for(var i=0;i<dataValues.length;i++) {var curValue= dataValues[i];if (curValue != null && curValue.length >0 ) {var newItem = document.createElement('div');var currentObject = eval('(' + curValue + ')'); var replacement = new RegExp(document.getElementById('searchterms').value, 'gi');var curString = currentObject.resultText;var curStringReplace = curString;if( currentObject.ad == true ) { curStringReplace = "<b>" + curStringReplace + " </b><br>" + currentObject.displayURL; } else { curStringReplace = curString.replace(replacement, '<b>' + document.getElementById('searchterms').value + '</b>'); }newItem.appendChild(document.createTextNode(curString));newItem.innerHTML = curStringReplace;var myURL = currentObject.referURL;var itemAttributes=newItem.attributes;newItem.setAttribute('customURL',myURL);newItem.setAttribute( 'market', currentObject.market );newItem.setAttribute('merchantID', currentObject.merchantID);if( currentObject.ad == true ) { newItem.setAttribute( 'class', 'autoCompleteAdItem' ); newItem.className='autoCompleteAdItem'; }else { newItem.setAttribute('class', 'autoCompleteItem'); newItem.className='autoCompleteItem';}newItem.setAttribute('id', curString + '_item');newItem.onmouseover = new Function("onSuggestionMouseOver(this)");newItem.onmousedown = new Function("onSuggestionMouseDown(this)");var newItemHighlight = document.createElement('div');newItemHighlight.appendChild(document.createTextNode( curControl.value ));newItemHighlight.setAttribute('class', 'autoCompleteItemHighlight');container.appendChild(newItem);}}cursor = -1;}function hideSelectionList(curControl, suggestionList) {if (suggestionList == null || suggestionList == undefined) { return; }suggestionList.innerHTML='';suggestionList.style.display='none';}function highlightSelectedNode(suggestionList, selectedNode) {if (suggestionList == null || selectedNode == null) { return; }for (var i=0; i < suggestionList.childNodes.length; i++){var curNode = suggestionList.childNodes[i];if (curNode == selectedNode){curNode.className = 'autoCompleteItemSelected'} else {if( curNode.getAttribute( 'customURL' ) != null && curNode.getAttribute( 'customURL' ) != 'null' && curNode.getAttribute( 'customURL' ) != '') { curNode.setAttribute( 'class', 'autoCompleteAdItem' ); curNode.className='autoCompleteAdItem'; }else { curNode.setAttribute('class', 'autoCompleteItem'); curNode.className='autoCompleteItem';}}}}function handleSelectSuggestItem(curControl, suggestionList) {var selectedNode = suggestionList.childNodes[cursor];var selectedValue = selectedNode.childNodes[0].nodeValue;if( selectedNode.getAttribute( 'customURL' ) != null && selectedNode.getAttribute( 'customURL' ) != 'null' && selectedNode.getAttribute( 'customURL' ) != '') {sendAutocompleteLink(this,'website','event16',';' + selectedNode.getAttribute( 'merchantID'), selectedNode.getAttribute( 'market' ) );window.location=selectedNode.getAttribute( 'customURL' );return; }var replace1 = new RegExp ('<b>', 'gi');var replace2 = new RegExp ('</b>', 'gi');document.getElementById('searchterms').value = selectedNode.innerHTML.replace(replace1, '').replace(replace2, '').replace(/&amp;/, '&');hideSelectionList(curControl, suggestionList);}function onSuggestionKeyDown(curControl, ev) {var suggestionList= document.getElementById(curControl.id + '_suggest');var keyCode = (window.event) ? window.event.keyCode : ev.keyCode;if( keyCode == 9 ) return;switch(keyCode) {case 9, 16, 17, 18, 20: ev.cancelBubble = true;if (window.event){ ev.returnValue = false; }else { ev.preventDefault(); }break;case 27: hideSelectionList(curControl, suggestionList);ev.cancelBubble = true;if (window.event){ ev.returnValue = false; }else { ev.preventDefault(); }break;case 13: if (suggestionList.style.display == "block" && cursor != -1) { handleSelectSuggestItem(curControl, suggestionList);ev.cancelBubble = true;if (window.event){ ev.returnValue = false; }else { ev.preventDefault(); }}break;}}function onSuggestionKeyUp(curControl, ev, minChars, dataUrl) {var keyCode = (window.event) ? window.event.keyCode : ev.keyCode;var suggestionList= document.getElementById(curControl.id + '_suggest');switch(keyCode) {case 9, 27, 13: break;case 38: if (suggestionList.childNodes.length > 0 && cursor > 0){var selectedNode = suggestionList.childNodes[--cursor];highlightSelectedNode(suggestionList, selectedNode);}break;case 40: if (suggestionList.childNodes.length >= 0 && cursor < suggestionList.childNodes.length-1){var selectedNode = suggestionList.childNodes[++cursor];highlightSelectedNode(suggestionList, selectedNode);}break;default: if (curControl == null || curControl.value.length < minChars) { hideSelectionList(curControl, suggestionList);return;}initializeXmlHttpRequest();if (req!=null) {req.onreadystatechange=eval(curControl.id + '_onServerResponse');req.open('GET',dataUrl,true);req.send(null);}}}function onSuggestionMouseOver(curControl) {var suggestionList= document.getElementById(curControl.parentNode.id);var selectedNode = document.getElementById(curControl.id );highlightSelectedNode(suggestionList, selectedNode);}function onSuggestionMouseDown(curControl) {var suggestionList= document.getElementById(curControl.parentNode.id);var selectedNode = document.getElementById(curControl.id );if( selectedNode.getAttribute( 'customURL' ) != null && selectedNode.getAttribute( 'customURL' ) != 'null' && selectedNode.getAttribute( 'customURL' ) != '') {sendAutocompleteLink(this,'website','event16',';' + selectedNode.getAttribute( 'merchantID'), selectedNode.getAttribute( 'market' ) );window.location=selectedNode.getAttribute( 'customURL' );return; }var replace1 = new RegExp ('<b>', 'gi');var replace2 = new RegExp ('</b>', 'gi');document.getElementById('searchterms').value = selectedNode.innerHTML.replace(replace1, '').replace(replace2, '').replace(/&amp;/, '&');hideSelectionList(curControl, suggestionList);}function onSuggestionFocusLost(curControl) {var suggestionList = document.getElementById(curControl.id + '_suggest');hideSelectionList(curControl, suggestionList);}