var isOpera = navigator.userAgent.indexOf('Opera') > -1;
var isIE = navigator.userAgent.indexOf('MSIE') > 1 && !isOpera;
var isMoz = navigator.userAgent.indexOf('Mozilla/5.') == 0 && !isOpera;

function textboxSelect (oTextbox, iStart, iEnd) {

   switch(arguments.length) {
       case 1:
           oTextbox.select();
           break;

       case 2:
           iEnd = oTextbox.value.length;
           /* falls through */
           
           
       case 3:          
           if (isIE) {
               var oRange = oTextbox.createTextRange();
               oRange.moveStart("character", iStart);
               oRange.moveEnd("character", -oTextbox.value.length + iEnd);      
               oRange.select();                                              
           } else if (isMoz){
               oTextbox.setSelectionRange(iStart, iEnd);
           }                    
   }

   oTextbox.focus();
}

function textboxReplaceSelect (oTextbox, sText) {

   if (isIE) {
       var oRange = document.selection.createRange();
       oRange.text = sText;
       oRange.collapse(true);
       oRange.select();                                
   } else if (isMoz) {
       var iStart = oTextbox.selectionStart;
       oTextbox.value = oTextbox.value.substring(0, iStart) + sText + oTextbox.value.substring(oTextbox.selectionEnd, oTextbox.value.length);
       oTextbox.setSelectionRange(iStart + sText.length, iStart + sText.length);
   }
   oTextbox.focus();
}

function autocompleteMatch (sText, arrValues) {

   for (var i=0; i < arrValues.length; i++) {
   		proddata = arrValues[i].split("|")
       if (proddata[0].toLowerCase().indexOf(sText.toLowerCase()) == 0) {
           return proddata[0];
       }
   }
   return null;

}

function autocomplete(oTextbox, oEvent, arrValues) {
   switch (oEvent.keyCode) {
       case 38: //up arrow  
       case 40: //down arrow
       case 37: //left arrow
       case 39: //right arrow
       case 33: //page up  
       case 34: //page down  
       case 36: //home  
       case 35: //end                  
       case 13: //enter  
       case 9: //tab  
       case 27: //esc  
       case 16: //shift  
       case 17: //ctrl  
       case 18: //alt  
       case 20: //caps lock
       case 46: //delete
       case 8: //backspace  
       	return true;
        break;

       default:
           textboxReplaceSelect(oTextbox, String.fromCharCode(isIE ? oEvent.keyCode : oEvent.charCode));
           var iLen = oTextbox.value.length;

           var sMatch = autocompleteMatch(oTextbox.value, arrValues);

           if (sMatch != null) {
               oTextbox.value = sMatch;
               textboxSelect(oTextbox, iLen, oTextbox.value.length);
               oTextbox.style.backgroundPosition="left bottom";
           }
           
           return false;
   }
}
 var arrValues = [
"ACpower|/Products/CablesiPod.aspx#ACpower",
"ARC|/Products/arc-iphone.aspx",
"Audio Extender|/Products/CablesiPod.aspx#ProCableAudioExtension",
"AutoPower|/Products/CablesiPod.aspx#AutoPower",
"Backpacks|/Products/Backpacks.aspx",
"Bezel Blaster|/Products/bezel-blaster-iphone-scratch-remover.aspx",
"Bluetooth Mouse|/Products/Bluetooth/",
"BongoTies|/Products/BongoTies.aspx",
"BT500|/Products/BT500.aspx",
"BT550|/Products/BT550.aspx",
"BT600|/Products/BT600.aspx",
"cableyoyo|/Products/cableyoyo.aspx",
"cableyoyo POP|/Products/POP.aspx",
"cool feet|/Products/CoolFeet.aspx",
"Dock Extender|/Products/CablesiPod.aspx#DockExtender",
"DriveMate|/Products/DriveMate.aspx",
"eSATA ExpressCard|/Products/SATAExpressCard34.aspx",
"EZbutton|/Products/ezbutton-reset-pin-tool.aspx",
"Gelz for iPhone|/Products/GelziPhoneCase.aspx",
"Gelz for iPod|/Products/Gelz.aspx",
"Gelz Groove for iPhone|/Products/gelzgroove-iphone.aspx",
"Hard Drives|/Products/HardDiskDrives.aspx",
"HDMI Cables|/Products/CablesVideo.aspx",
"Ice Creme|/Products/IceCreme.aspx",
"iPhone Accessories|/Products/iPhone/",
"iPhone Headset|/Products/ProCableiPhoneHeadset.aspx",
"iPod Accessories|/Products/iPod/",
"iMac Accessories|/Products/iMacDesktop/",
"Impact|/Products/Impact.aspx",
"I-Sight|/Products/ISight.aspx",
"LenSavrz|/Products/LenSavrz.aspx",
"MacBook Accessories|/Products/Notebook/",
"MacTruck|/Products/MacTruck.aspx",
"Messenger Bags|/Products/MessengerBags.aspx",
"NeoCase|/Products/NeoCase.aspx",
"Omni|/Products/Omni.aspx",
"OmniCleanz|/Products/OmniCleanz.aspx",
"OmniStand|/Products/omnistand/",
"Optex|/Products/NotebookScreenSavrz.aspx",
"Otterbox Armor",
"Otterbox Defender",
"Otterbox Impact",
"Otterbox Laptop Case|/Products/OtterboxNotebook.aspx",
"Pawz|/Products/Pawz.aspx",
"Portectorz|/Products/Portectorz.aspx",
"ProCable iPhone Headset|/Products/ProCableiPhoneHeadset.aspx",
"RetractCable|/Products/CablesiPod.aspx#RetractCableDock",
"ScreenSavrz for Laptops|/Products/NotebookScreenSavrz.aspx",
"ScreenSavrz for Cinema Displays|/Products/ScreenSavrzCinema.aspx",
"ScreenSavrz for iMacs|/Products/ScreenSavrziMac.aspx ",
"Shoulder Bags|/Products/ShoulderBags.aspx",
"SLAM|/Products/SLAMClip-iPhone.aspx",
"Sleevz for Laptops|/Products/SleevzNotebooks.aspx",
"Spire Bags|/Products/LuggageCases/",
"Sleevz for iPods|/Products/SleevziPod.aspx",
"STM Bags|/Products/LuggageCases/",
"Styloid Stylus|/Products/styloid-iphone-ipod-touch-stylus.aspx",
"Stylish Laptop Bags|/Products/FashionBags.aspx",
"StuffBak|/Products/StuffBak.aspx",
"Tools|/Products/Tools.aspx",
"USB Extender|/Products/ProCableUSBExtender.aspx",
"Voltaic Solar Bags|/Products/Voltaic.aspx",
"Westone Headphones|/Products/Westone.aspx",
"Wildeepz|/Products/Wildeepz.aspx"

];
function searchFilter() {
	if ($('searchinput').value) {
	   for (var i=0; i < arrValues.length; i++) {
	   		proddata = arrValues[i].split("|")
	       if ($('searchinput').value.toLowerCase() == proddata[0].toLowerCase() && proddata[1]) {
				window.location = proddata[1];
				return false;
	       }
	   }
	}
	else {
		return false;
	}

}