var xmlhttp
try { xmlhttp= new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp= new ActiveXObject("Microsoft.XMLHTTP") } catch (E) { xmlhttp=false; } } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { try { var xmlhttp = new XMLHttpRequest(); } catch (e) { var xmlhttp=false; alert('couldnot create xmlhttp object'); } } var searchFormId = 'search-form'; var searchInputId = 'searchkey'; var searchFilterId = 'searchfilter'; var searchInputMessage1 = 'Type Item name'; var resultsDivId = 'livesearch'; var processURI = './ajax.livesearch.php?q='; var keyPressDelay = null; var liveSearchLast = ''; function runLiveSearchStartUp(){ var searchForm = document.getElementById(searchFormId); var searchInput = document.getElementById(searchInputId); var searchFilter = document.getElementById(searchFilterId); addEvent(searchInput, 'focus', clearSearchText, false); addEvent(searchInput, 'keyup', liveSearchStart, false); addEvent(document, 'keydown', escapeReset, false); addEvent(searchInput, 'blur', resetOnBlur, false); } function liveSearchStart(e){ if (e.keyCode == 27){ resetEverything(); return false; } var searchInput = document.getElementById(searchInputId); var searchFilter = document.getElementById(searchFilterId); if (keyPressDelay){ window.clearTimeout(keyPressDelay); } if (searchInput.value != '') {keyPressDelay = window.setTimeout('liveSearchDoSearch()', 3500);} return true; }
function liveSearchDoSearch() { var searchInput = document.getElementById(searchInputId); var searchFilter = document.getElementById(searchFilterId); if(searchInput.value.length >= 3){ if (searchInput.value	!=	'Type Item name') { if (liveSearchLast != searchInput.value){ xmlhttp.abort(); if (xmlhttp && xmlhttp.readyState < 4){ xmlhttp.abort(); } var element = document.getElementById(resultsDivId); element.innerHTML = '<div style="height: 20px;"><img src="./images/loading.gif" alt="Searching" /></div>'; xmlhttp.onreadystatechange = liveSearchProcessReqChange; xmlhttp.open('GET', processURI+searchInput.value+'&sid='+Math.random()+'&filter='+searchFilter.value); liveSearchLast = searchInput.value; xmlhttp.send(null); } } } }
function liveSearchProcessReqChange(){ var searchForm = document.getElementById(searchFormId); var resultsDiv = document.getElementById(resultsDivId); if (xmlhttp.readyState == 4){ resultsDiv.style.display = 'block'; resultsDiv.style.border = '1px solid #aaaaaa'; var response = xmlhttp.responseText; var result = new Array();if(response.indexOf('|') != -1) { result = response.split('|'); } searchResult = "";	if(result[2]	==	""){ searchResult = '<span>no item with keyword <strong>&#145;'+result[1]+'&#146;</strong> found.</span>'; } else{ content = eval("(" + result[2] + ")"); searchResult='<div id="result-set">'; if(result[0]	>	20){ extraLink='<div style="text-align:right;"><a href="search.php?action=search&searchkey='+result[1]+'">View all '+result[0]+' results ..</a></div>'; } else { extraLink	=	''; } if(content == "") {}else{ for (i = 0; i < content.items.item.length; i++) { searchResult += '<a href="itemdetails.php?item_id='+content.items.item[i].itemid+'">'; searchResult += content.items.item[i].name;	searchResult += '</a>';} } searchResult += extraLink; searchResult += '<div style="text-align:right;"><a href="javascript:;" onclick="removeEvent();">close</a></div></div>'; } changeText(resultsDivId, searchResult); } }
function resetEverything() { var searchInput = document.getElementById(searchInputId); searchInput.value = searchInputMessage1; xmlhttp.abort();liveSearchHide();}
function resetOnBlur() { var searchInput = document.getElementById(searchInputId); if (searchInput.value == ''){
searchInput.value = searchInputMessage1; xmlhttp.abort(); liveSearchHide(); } }
function escapeReset(e) { if (e.keyCode == 27) { resetEverything(); return false; } }
function clearSearchText() { var searchInput = document.getElementById(searchInputId); if (searchInput.value == searchInputMessage1){ searchInput.value = ''; } }
function liveSearchHide() { var resultsDiv = document.getElementById(resultsDivId); changeText(resultsDivId, ''); resultsDiv.style.display = 'none'; }
function liveSearchShow() { var resultsDiv = document.getElementById(resultsDivId);	resultsDiv.style.background="#fff"; resultsDiv.style.display = 'block'; }
function runScripts(){ runLiveSearchStartUp(); }
window.onload = runScripts;
