// ==UserScript==
// @name Search Engine Helper
// @namespace http://www.csh.rit.edu/~topher/gm/
// @description Add more search engines to other search engines, resembling Firefox's search box.
// @include *

// version 1.0 - initial release

// Configuration values:
var wikipediaPrefix = "en"; 	// en for english, fr for french, ect

var javadocUrl = "http://java.sun.com/j2se/1.4.2/docs/api"; // change to whatever version you want to search



// ==Setup==
// The script dialog will invoke this function.  It should get ignored by GM
function ScriptSetup(appendTo)
{
	createOptionInput(appendTo, "Show text labes next to icons", "showLabels", false);

	
	createOptionInput(appendTo, "A9", "A9", true);
	createOptionInput(appendTo, "Altavista", "Altavista", true);
	createOptionInput(appendTo, "Amazon", "Amazon", true);
	createOptionInput(appendTo, "Ask Jeeves", "Ask Jeeves", true);
	createOptionInput(appendTo, "Barnes and Nobles", "Dictionary", true);
	createOptionInput(appendTo, "Dictionary.com", "Dictionary", true);
	createOptionInput(appendTo, "eBay", "eBay", true);
	createOptionInput(appendTo, "Google", "Google", true);
	createOptionInput(appendTo, "IMDB", "IMDB", true);
	createOptionInput(appendTo, "Half.com", "Half.com", true);
	createOptionInput(appendTo, "Javadoc", "Javadoc", true);
	createOptionInput(appendTo, "MSDN", "MSDN", true);
	createOptionInput(appendTo, "MSN", "MSN", true);
	createOptionInput(appendTo, "Thesaurus.com", "Thesaurus", true);
	createOptionInput(appendTo, "Wikipedia", "Wikipedia", true);
	createOptionInput(appendTo, "Yahoo", "Yahoo", true);

}

function createOptionInput(appendTo, labelText, bindVar, defaultVal)
{
	var wrapper = document.createElement("p");
	wrapper.style.paddingLeft = "22px";
	wrapper.style.textIndent = "-22px";

	var label = document.createElement("label");
	label.htmlFor = "reify-adBlocker-setupOption-" + bindVar;
	label.appendChild(document.createTextNode(labelText));

	var input = document.createElement("input");
	input.id = "reify-adBlocker-setupOption-" + bindVar;
	input.bindVar = bindVar;
	input.type = "checkbox";
	input.onclick = setBoundVar;

	wrapper.appendChild(input);
	wrapper.appendChild(label);
	appendTo.appendChild(wrapper);

	input.checked = GM_getValue(bindVar, defaultVal);
}

function setBoundVar()
{
	GM_setValue(this.bindVar, this.checked);
}

// ==/Setup==


function gl(image,searchName,searchUrl){
	
	if (GM_getValue(searchName, true) || searchName == "Default" ) {
		var innerhtml = document.getElementById("innermenu");
		
		var newspan = document.createElement("span");
		
		
		var newimg = document.createElement("img");
		
		
		newimg.src = image;
		newimg.alt = searchName;
		
		newimg.onclick = function() { 
			setsearch(image, searchName, searchUrl);
		}
		
		newspan.insertBefore(newimg);
	
		if ( GM_getValue("showLabels", false)  ) {
			//var label = document.createElement("span");
			newspan.insertAdjacentHTML("beforeend", searchName);
			//newspan.insertBefore(label);
		}
	
		newspan.insertBefore(document.createElement("br"));
		
		innerhtml.insertBefore(newspan);

		if ( defaultSearchName == searchName ) {
			searchicon.src = image;
			selectedSearch = searchName;
		}
	}

}

function showhide(){
	var cacheobj=document.getElementById("innermenu").style

	//alert(ev);

	// only if we click the icon
	//if ( ev.x < 29 ) {
		cacheobj.visibility=cacheobj.visibility=="hidden"? "visible" : "hidden"
	//} else {
	//	hideinner();
	//}

}

function hideinner() {
	var cacheobj=document.getElementById("innermenu").style
	cacheobj.visibility = "hidden";
}

function setsearch(image, searchName, searchUrl) {


	var ielm = document.getElementById("searchimage");

	ielm.src = image;
	ielm.alt = searchName;

	

	selectedSearch = searchName;
	selectedSearchURL = searchUrl;

	stf.focus();
}


function defaultimage() {
return "data:image/gif;base64,R0lGODlhEAAQAOeaAERERE9RUFVVVVdXV1hcW1pcW2pqamxsamttanNzc35+foODg4aGhoeGhISIh4aIh4qKiouLi4yMioyMjI+OjJCQkJKQkZOTkZKUkZeXl5eZmJqamp2cmp+dnp6enqCgoKKgoaGhoaSkpKKmpaWlpaampqioqKmpqaqqqqurq7GxsbKysrOzs7ays7S0tLO1tLa2trm5ubq6uru7u7q8u7+/v8DAwMLCwsTCw8LDxcTExMbGxsfHxcfHx8bIxcjJy8nJycnKzMvKyMnLyszMzM/Nzs7Ozs7O0M/Pz9DQztHR0dPT09jY2NrY2dnZ2dra2tvb29zc3tre3d7c3d3d3d7d293e4N7e3t/g2+Df5N/g4uDg4OLh5uLi4uTj6OPk5uTk5OPk6OXk6ubm5uXm6ubm6Ofm6+fn5+jn7Onp6ejq5+np6+rq6urq7Orr7ezr8Ozs7O3t7e7t8u/u7O3u8u7u8O/v7+/v8fDw8PDx8/Hx8fLx7/Px8vLx9vLy8vLy9PPz8/P07/Pz9fT09PX18/X19/b29Pf29Pb38vf39/f3+fn3+Pj49vj4+Pn5+fr6+Pr6+vv7+/z8/P38+v39+/3++f7+/P7+/v//+////f///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAP8ALAAAAQAQAA8AAAjjAP8JFMhAAAAAAyAMXPhvg4EQTwYNelIiwQmGKBYgSaQJkiNNkZxEgLFQgYozjTRdkgRSz4oMMgSiSAEkzaBGf+4IKvSHCQmS/zTkCKLFTR46cvq84XJEhweBI35osfKFTBgvZsRkiULEhcAXSsCAGbOmjVk0Zc4siSGQBZUtbOL4SaQIUB04Y66sENhhCp85ewgxamTIDx47XUQItIBj0aFJlB49skRpcI8KAltwELInE6bPnwMl+WBiYAMKVQhhqlQJEyIsEiYwBHHgAg81anxgQBCCocAZDwoECEDAAY2FAQEAOw==";
}

function googleimage() {
return "data:image/gif;base64,R0lGODlhEAAQAPfLAAATVikwdA8SnxUfgAsWpAAilholjxw4jBc7kwAlvQQ2sRMsoBUqqhMzuhY/vxw4tSgmiyM1mSUztiQ6sTE3sQ4qyxMxxRoyxiAuxR1CtBxJsBxasSJuuTFguBte0Rlf2xVc9h9W9xVjzxVr0gdj6BRh4R1o5yBcyiZbyydT1i9b2Ddb1iFY6CJg2Vpor1dzvEJu20Z0yi23QDy1REi2OUy0O1WzOVC4PU+tVUe5Sk2xQU2zRUO4UE21Ula2SmKEqWWF2HyPx2+a6X6e6Xqk1m+s78sUDs4UGdEQB9YfDdwaANEfHd0YEscjAM4mAM0qANIoD9IkGdslGswuItYgL4aP0ImP2YGZ36Opzaq2wq/S+rzX/7/e8MrS1MLO/sTb48rT8snX/83c89PZ+crq+cH1/9Dl/9Ln/93r/9fy/+Hf7P/42eDm/O7u/+T29uX2/eT2/+f4/+f5/+j/9u//8+3/9u7/9ur5/+j//+n//+v//u3//+7//e7//+////b66/T/6vX/6/f/7f/07fj/4fv/4Pj/5v/45v7/4/r+7/3/6fDw+Pfx//D/9/X/8fT/8/f/8ff/8/D///H///L8/fL///P///X7//b6/ff/+/T///b9//f///v19//w9v/09P/29v/x+f/y///z///1+v/1///2///3//j79P/58/z/8/z99/z/9v7/9P7/9vn7//v6//j9//n9//j///n///v//vv////4+v/5+//6+P/4///6/P/6/v/6///7///9+P/8+v/9+v7/+Pz////8/f/9/f79///8///9//7//////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAMsALAAAAAAQABAAAAj/AEn4oIFjBw8bOnrMuJGjhowZM1T8UdYJUZ5ZcNRYWjSrVK5QU0DMmtUnzRAXEy4o6FCEy6NDTkQIq1MmRgM0eZTlCXMgQJtRSE4gmgUkwh1EiZTNUiamy6NUUExcuoJgDCdDjQg9KgVL2SNFT1hwEvKglLBWuixZ+jSrlSBdRlL04bBBkTBdpZTpIqWsFaBcTEr0QaEhl6dWlswKW6poDRUPlmAUQKWMkTJLc76QMQNGUZMWgIgkCFJnlq5WXigwkFClVZQQyuRgELAlk7JBymCZGYAF0ZEPrQixgUDAihxVdPpoAZAFUZIRfThxgvPCwAILDipk+OFG2ZIVoxApERtPfvwlvZ+kQFzPvv0MJQEBADs=";
}


function amazonimage() {
return "data:image/gif;base64,R0lGODlhEAAQAIQeAAAAAAMDAwcHBw0NDRcXFykpKTc3N0ZGRk1NTVhYWGVlZXFxcX5+fv+ZAKmpqe6nMbi4uPC1U/PAbMfHx9TU1PbQkfjaqfniuuXl5fvu1/Dw8Pj39v337Pz8+////////yH5BAEKAB8ALAAAAAAQABAAAAV64CeKTkIMRAKN7HcAcAws7YfEgSC3UDwqMdrIcSKwBrBDrYYEKGsOxaFAiD1ZBZnsKqoCBB9L5NEoPyQiIIxheTwi8HKjCxuwdABLWdQMjBoSEgAXDREiBloRZREAFXMjFRJkZg0BAIofY3JmFSIHZZ2bDQ+dLBKGHyEAOw==";
}

function wikipediaimage() {
return "data:image/gif;base64,R0lGODlhEAAQAOcAAAAAAAEBAQICAgMDAwQEBAUFBQYGBgcHBwgICAkJCQoKCgsLCwwMDA0NDQ4ODg8PDxAQEBERERISEhMTExQUFBUVFRYWFhcXFxgYGBkZGRoaGhsbGxwcHB0dHR4eHh8fHyAgICEhISIiIiMjIyQkJCUlJSYmJicnJygoKCkpKSoqKisrKywsLC0tLS4uLi8vLzAwMDExMTIyMjMzMzQ0NDU1NTY2Njc3Nzg4ODk5OTo6Ojs7Ozw8PD09PT4+Pj8/P0BAQEFBQUJCQkNDQ0REREVFRUZGRkdHR0hISElJSUpKSktLS0xMTE1NTU5OTk9PT1BQUFFRUVJSUlNTU1RUVFVVVVZWVldXV1hYWFlZWVpaWltbW1xcXF1dXV5eXl9fX2BgYGFhYWJiYmNjY2RkZGVlZWZmZmdnZ2hoaGlpaWpqamtra2xsbG1tbW5ubm9vb3BwcHFxcXJycnNzc3R0dHV1dXZ2dnd3d3h4eHl5eXp6ent7e3x8fH19fX5+fn9/f4CAgIGBgYKCgoODg4SEhIWFhYaGhoeHh4iIiImJiYqKiouLi4yMjI2NjY6Ojo+Pj5CQkJGRkZKSkpOTk5SUlJWVlZaWlpeXl5iYmJmZmZqampubm5ycnJ2dnZ6enp+fn6CgoKGhoaKioqOjo6SkpKWlpaampqenp6ioqKmpqaqqqqurq6ysrK2tra6urq+vr7CwsLGxsbKysrOzs7S0tLW1tba2tre3t7i4uLm5ubq6uru7u7y8vL29vb6+vr+/v8DAwMHBwcLCwsPDw8TExMXFxcbGxsfHx8jIyMnJycrKysvLy8zMzM3Nzc7Ozs/Pz9DQ0NHR0dLS0tPT09TU1NXV1dbW1tfX19jY2NnZ2dra2tvb29zc3N3d3d7e3t/f3+Dg4OHh4eLi4uPj4+Tk5OXl5ebm5ufn5+jo6Onp6erq6uvr6+zs7O3t7e7u7u/v7/Dw8PHx8fLy8vPz8/T09PX19fb29vf39/j4+Pn5+fr6+vv7+/z8/P39/f7+/v///yH5BAEKAPgALAEAAAAPABAAAAjeAPEJZCYQn7583goqxAfJILZdwXJJWogP1Dp820AVo3ZMl6qC8da1ykTJ0rpp1JYBg7VIIDx0fxKxulZN2i1ewGotQoXP3Lt7s8AJ9ebKmDBZoQrhy4VOHzFd3KqJSxYsmCxQb/C5Y2dPm7ZwzrA9c0YL1qc7+OCRS9fN2jlo1JAduvQq0x98wNKFa7ZrGbdlxW7NKjVJC75q6bQx60UM27Bjtlp5MtQSH01t2JQx0yVslB5IewrWenat1qtduXKlshSolMJkxGjRMo0KEyBMFJvFgrWq06RFwigKpxgQADs=";
}

function ebayimage() {
return "data:image/gif;base64,R0lGODlhEAAQAMQAAAAAAMz/zMwAADMAzOfn1sxmAP///5kAZpnM////AACZM/777zPMAP+ZAP8AAP9mmf/MzMwAZjNmAADMM/+ZM/9mM//MMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAQUAP8ALAAAAAAQABAAAAVPoCGOZGmeaKqiQDkMYqAoBqMELpxUlVTfBohjeHjBLJLZZCF0GASOAWJQSFAUE1FTwIUNKoYKTQslGCLSb6MBFD2G3Zdo0k4tVvi8fl8KAQA7";
}


function dictionaryimage() {
return "data:image/gif;base64,R0lGODlhEAAQAKUqAAAAMQAAUgAAYwAxMXMAAGMAMQAxY4wAAAAxnJwAAK0AAJwAMb0AADExnM4AAGMxMTExzgBjnJwxAJwxMVJSUjFjnM4xADFjzs4xMWNjnJxjY85jMTGczs5jY4yMjGOczpycnM6cY86cnP+cnM7OnM7Ozv/OnP/Ozt7e3v//zv///////////////////////////////////////////////////////////////////////////////////////yH5BAEKAD8ALAAAAAAQABAAAAazwJ9wCJocEhiU8BQaljSLg+SkUqVMHQnjBzpIO9UUKoRRMBwMY6hqxVoYZvhEwwiRTqJNnMGQPBAFGgcESG98ChMGBg0iKYIJByMOFgsPixkpbIJHHRMCBhklmVUmFZsHERUkbFYeiggehAkVbCknFAYIuhEdBF4GAAYfEQEIEQgVxx5HCQPAERwGx8nGmwmKAxcfuccRF7BezYoV0d3dvZDYFdsRERDt4JAK4xzIxhENEUEAOw==";
}


function imdbimage() {
return "data:image/gif;base64,R0lGODlhEAAQAOeHAP//5PHr0v//d+7TXVFQTjY3N///efXYXvLfXv/4c/LWYvv69Pr00dK2QfPntvnuv+zn0byxZ/r25KuiXVRUTlVUTktLRzw8PrWnW/DTWv/8cubHTYuBSyMjI7isaGVgRFhVTeLFT1JRScCmOPv58u/p0/TWW56SUl1aVkdFQeXTicevSeDVp/TXXf/+4+/p0v7gX//5dODVpigoKeTYq/LVW1tZTjc3OxQUG//84fLr0u/p0PrjW+/TW5iNUkxKRuvly2BbROfOYPfsvv333khISmJfVP/74cKyafv54PHr0fPt0sO4a9bCaVZVUM+6WPXZTfXps8G1bPLWTbKkY/Lr0/PWWzk7Pzs7PNG2SvHTWtC1Sd3DVllUQv//duXJUufKUu7p0vPosLqsa7OlYOzRW//naqiaW//53//nYtnOnu7jsf3oY//ras2zSD4/QvHVXc66YOLHU/3997ipXTAvLUdFO7KkZSwuMf79+rSlX7CkXVpWRebhzJOIUN/Upy8wNPnz2uPIV/Ht3bCjY/fy2sq0UP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAP8ALAEABQAOAAcAAAhxAP8hiCHAgBcBGhK0MaPgi4opPCJImcBkj4cTcciUAdMAChs+KHDcqEMAEIgCH55kOZAmiJEOM+zYoCAixRsMW+DA6OLkQpEfFvBUwHKFjpsNJvTcITSGyhkOSHz4aTJCSIgMVlrU0NJjgBxBXFYYCggAOw==";
}

function thesaurusimage() {
return "data:image/gif;base64,R0lGODlhEAAQAMZ+AHMAAIwAAJwAAK0AAJwAMb0AAM4AAJwxAJwxMc4xAM4xMZxjY85jMc5jY4eeFYyMjIujFYmhK5WrJparJqaoEJqvJJ2wIpycnMSiEc+gFqK1Iqa4DrGzDKW3H6a5H6i6Hs6cY6y8MJvDOqy+Lra4NLLCDLLCGs6cnLDBLsq7D7TEG7fFGcDDF7bGKqvML6vMMLXINLDPLb7MGOK8DL7MJMDOFrPRK7/NJbzNLsHPFsfJKLvOL8rNDtTJDMPQFsTRE+DEDb7QLMLQI8PQIsXSFf+cnMnMMMbSHrzWJsfUFM3PJMfTH73XJcjUHb7YI8jUHr/YI8bUJsrWEePLDMnVH8DaI8bVMsLaI8vXHMzXHMLbIsnXJtTWEMPcIcPcIszaIsnfHcrfHM7cIsHgN9PeF8HhOdTeFtjaJM7hGs7iGc7iGtncIs/jGO/UGtXgJc7OnM/hN9rkF8/oKtXmMNbmMM7OzuXnHO7hLf/OnO3vLu/xNv/Ozt7e3v//zv///////yH5BAEKAH8ALAAAAAAQABAAAAfhgH+CgxcIAQIKfIJ7IIN1CwQBB3t+fn14DQcFfxcBkg2VfXwgCgMFBgWGIJWWmAkFprAZCwUgb3snDLEFBQcpKBgLAQCIr7wDQDkyOnd9wgIBRQYJMz0+Smd9rMKHbVMsOWt62pV4YtwBVVt5rJZ2RElUD8QCO6x9e1w1NEI3Xg0APE2goIKOFh5Z0hz50mXIg0MCIGjggESOFDZm4oR5coWbgAomSliZ8wMLGzJq3Cx5eMiBBQ9RxqyA0gQNmCddAEKLUGFDEDgdXtgw4oRJi4fQBkj4gKPMCBghYrggISIQADs=";
}

function a9image() { 
return "data:image/gif;base64,R0lGODlhEwARANUAABcUEdDT0pOeqvGjQWVrcUNFSNfJtbTE0y0tLeexbHuEjfeaJE5SVeG7icrc7qi2xCIhH4eRnDk6O3B4f+qtXv6QB7/P4J6rt1pfY+6oT+S2e83X4EpSUtTOw/SeMnF4gPuVFUJKSt6/l621xc7W1uusXf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAUUACYALAAAAAATABEAAAaqQJNwGBmaLARIASEwEgEHoQVxkWKKTgTgI/xUjQyLMQKAQMQFp2nyFUogCoDClHYqmsILYGJCIEwYbUIFUYNnJmQRB4REBEN6EhMTBAB/DwwYExIIYoMAn6AAbRYFD0MPABhGBwB1JgpcQxhQTrOmD65HBapOFwVzH4VDDQFqag0aIAYmGwkZIhvGJgEiCRRGBhkVHiUa3hoZCwsNGxpq1BQD6hkaHdLvxkEAOw==";
}

function carrotDown() {
return "data:image/gif;base64,R0lGODlhBQADAOcPAAAAAIAAAACAAICAAAAAgIAAgACAgICAgMDAwP8AAAD/AP//AAAA//8A/wD//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMwAAZgAAmQAAzAAA/wAzAAAzMwAzZgAzmQAzzAAz/wBmAABmMwBmZgBmmQBmzABm/wCZAACZMwCZZgCZmQCZzACZ/wDMAADMMwDMZgDMmQDMzADM/wD/AAD/MwD/ZgD/mQD/zAD//zMAADMAMzMAZjMAmTMAzDMA/zMzADMzMzMzZjMzmTMzzDMz/zNmADNmMzNmZjNmmTNmzDNm/zOZADOZMzOZZjOZmTOZzDOZ/zPMADPMMzPMZjPMmTPMzDPM/zP/ADP/MzP/ZjP/mTP/zDP//2YAAGYAM2YAZmYAmWYAzGYA/2YzAGYzM2YzZmYzmWYzzGYz/2ZmAGZmM2ZmZmZmmWZmzGZm/2aZAGaZM2aZZmaZmWaZzGaZ/2bMAGbMM2bMZmbMmWbMzGbM/2b/AGb/M2b/Zmb/mWb/zGb//5kAAJkAM5kAZpkAmZkAzJkA/5kzAJkzM5kzZpkzmZkzzJkz/5lmAJlmM5lmZplmmZlmzJlm/5mZAJmZM5mZZpmZmZmZzJmZ/5nMAJnMM5nMZpnMmZnMzJnM/5n/AJn/M5n/Zpn/mZn/zJn//8wAAMwAM8wAZswAmcwAzMwA/8wzAMwzM8wzZswzmcwzzMwz/8xmAMxmM8xmZsxmmcxmzMxm/8yZAMyZM8yZZsyZmcyZzMyZ/8zMAMzMM8zMZszMmczMzMzM/8z/AMz/M8z/Zsz/mcz/zMz///8AAP8AM/8AZv8Amf8AzP8A//8zAP8zM/8zZv8zmf8zzP8z//9mAP9mM/9mZv9mmf9mzP9m//+ZAP+ZM/+ZZv+Zmf+ZzP+Z///MAP/MM//MZv/Mmf/MzP/M////AP//M///Zv//mf//zP///yH5BAEKAP8ALAAAAAAFAAMAAAgNAAEIFPhv4L+DAA4GBAA7";
}



function msdnimage() {
return "data:image/gif;base64,R0lGODlhEAAQAKU1ANlPOtlQPd9XN+FbNuNfOOVhNuRoReppOO1tOe1vOvJ7Q/R8Qu19UON/cPWDSfWES/KIWvWNWfeTYPeXZPeZZveaaPabbvWlgvemfPmqfvCunfaylPC2qvK5q/e6oPS9q/fAqvvCo/rEqvTHu/nHsfXLwPfMvPbOwvbOw/rPuvbQyPbRyfbUzffWzfjWzPzayPvg1Pvh1/rl4Prm4f7t5P///////////////////////////////////////////yH5BAEKAD8ALAAABQAQAAcAAAY/wJ9wSPylRKDPrMj0LA6DEZP4sjwQhNL0RwtlKg6G4WTSsIQwEkZCmUQuv5Xr12oEAIJCQgHZxLYqHB0oMlNBADs=";
}


function javadocimage() {
return "data:image/gif;base64,R0lGODlhEAAQAMIGAAAAAJkAAP8AAGZmZv+ZmczMzP///////yH5BAEKAAcALAEAAQAOAA8AAANCeLoLwOcxx0aUcVCltQLadgykBDoi+jmC+GWBIAdYdAmE3E6AYcQzy8TnC/g8DaLSIPwsibWeoUAiNkdHTrZyJR0SADs=";
}

function altavistaimage() { 
return "data:image/gif;base64,R0lGODlhEAAQAMZKAJMCApAGBpMGBpUICJYICJEREZMUFJoUFJkcHJkhIZ8fH54hIZYnJ6AmJpgqKp8qKpwtLaU1Nac1NaE4OKU4OKI6OqY5OaQ6Oq08PKtBQa5AQKlGRq1JSbNMTK1QULBQUKtTU7RSUrRaWrBcXLlZWbZbW7laWrtcXLpeXrdhYcBmZr1vb75vb8Rycrx2dsV+fsd+fsp/f8eGhs2EhMuLi8uMjM6Li9CNjc2Pj9COjtGSktSXl9Kbm9mkpNyrq92srN2wsN+ysuCzs+TFxerKyunLy+vNzfTi4vjs7Pv09P///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAH8ALAAAAAAQABAAAAd5gH+Cg4SDORiFiYIqCgCJNxEIBRSCRj4DhScmOj0oAYNFBoNCLYUHgy8XgkSKD4MOg0d/SUE/SIIJgjIVhTszhBCCDIUwMYQ1Ln8eLIQ8IoUgQzgbhROJI0AWhSsphSU0HIkNNoUSJIoEGoIdgiGKfx8CCxnv9fZ/gQA7";
}

function yahooimage () {
return "data:image/gif;base64,R0lGODlhEAAQAJECAP8AAAAAAP///wAAACH5BAEAAAIALAAAAAAQABAAAAIplI+py+0NogQuyBDEnEd2kHkfFWUamEzmpZSfmaIHPHrRguUm/fT+UwAAOw==";
}

function jeevesimage() {
return "data:image/gif;base64,R0lGODlhEAAQAMQAAJ8FB8oICM4ICNYQELU5OcgmJt45ORg5/4NSUod4fK1SUspXV4SEhMSnp+mUlPXm5sDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAABAALAAAAAAQABAAAAVeICSOZGmeaIoKgeA6CCCUrtK+iBuML3MPD5lr5io8GIVFA+B4JGSFm+E4BRAey+Gw0fA5vg9Hw8VwTY+BxTHxFCggrgbCwUgsAfjCWxRQyAABN3onBIWGeyqJiosmIQA7";
}

function msnimage() {
return "data:image/gif;base64,R0lGODlhEAAQAMZ1AD1ciCJxazRmdVJQmxmASBWHOhiKOS5spyR+ZRqKRStvqyxvqi1vqiuHTy91tGFkiS92tDR1rfEzETR2ru02FnZehPE1Eug4HDF5uTd/lzJ7u/E7FONBI+4+GC+VUDCUWz5+sj5+szGKn7dVV8pSQDyExUODuKNhbjucT/JKGDuGyp5kdKRib6JjcdRVOZRtb/JOGpdtb/NQGvNRGt9YL0ShT2WNZ4h0kU6LvUeOzUOZpkKR2E+OxvNbG5V3hvNcH0mekVKqSFaSxfNjIeNoM5OBjPNkIlitSluWw/NnI/NoI1Sa0FGexFijqF+wW1We32KzTGKgvd96PGafxvN2KXCgtPJ4Kl+i3Iagf7OObWi0btOFR2Wk1WWqv4mfmfN+LIOhsHSrz+mNOvWNMPOQL8ehWfaUMeWdMviZGbuwYtyoNdmxMtevQ/moIumzMvi0Ifm1GdzAOPrBG/vHGPvMFf///////////////////////////////////////////yH5BAEKAH8ALAAAAQAPAA4AAAeagH+Cg4R/Ix0khYU+LhISFycqGA47hEVEKY4SKzkhDAoag1JGmY4sfzwmEwsQJVlWSjAWji1/S0g4IBEHL2RjVD8bFDeCXFNCGQEDW2ZfSjIcg09hUQgEADHNSTM0hFddCQUCFWJfQz1nhUweBg0Pam1ocHGKWkFQNmt0c3Jpik1OjtTA4uYNmyqK/gBB8eGPlzJgEgrSIUJRIAA7";
}

function banimage() {
return "data:image/gif;base64,R0lGODlhEAAQAMZ2AEpjTEpkTEtkTUxkTkxlTlBoUlJqVFhvWmF3Y2J4ZGp/bGyBbnGEcnKFc3KGdHSGdXaJeMN8FMR9Fn+QgICRgcWBHcaEIoSVhYaWhcmKLMuONMyONZKik5OilKqeds+WQ6+ectCYRpimmZqomtKcTZypnNKdT9KdUJyqnqSqltOfU6CuotSiV6KwpNWkXKSxptamYKayp6ayqNeoYtiqZtiraKy3rNmtbKy5rdqubdqubtqvb7S6qtyydNy0eLS+tbW/tN62fN64gN+5gbnCueC7hcjCquG9iOG+ir7IwMHKwsLKweTDk+HEmOTEleXHmubJnufKoOjMpMzUzdDUzOnQqejQrerSru7Yutne2u7bvuTezu/cwPDewvDew97j39/j3/LjzPPkz+bq5ubq5/Ts3fDt4+3w7vbx6PP08/T29PX29fv27/f49vj5+Pz48/r7+vv8+/38+P7+/P7+/v/+/v///////////////////////////////////////yH+FUNyZWF0ZWQgd2l0aCBUaGUgR0lNUAAsAAAAABAAEAAAB86AdoKDhIV2aWRkZ3SCYTQbW2RpcWNpLwCYEG5cFUxdDwAoXwAxlxwIAUQnOnV2oApgADIvAUkdACkwUHZ1oAVTsrRJJbg+T3JCoAIrwQEjCwFAPTkhPqAADcEAAQAJZR8+Yq6YBNoiDkYZJkdOrgEGmLO1VBosdT01bw8DFPHCVhK82LlSBMkDAT/KyUvSJAIPQTdcHFTCQNsFDxKkCNKi4uCSFrJsHDiAYYaFHUFIRJlwAESWAzjgrFkDZw6WIVXY2GljBo0dNXAMCR0UCAA7";
}

function halfimage() {
return "data:image/gif;base64,R0lGODlhEAAQAMZPAAYGBggICA0NDQ8PDxMTExwcHB8fHyAgICMjI4YAAIYCAjAwMDQ0NDU1NbEAADY2Njc3N7IFBbESEkJCQkNDQ0tLS6YoKP8FBVFRUf8KCv8REYVHR/8YGP8ZGV9fX2NjY/8iIv8nJ/8pKWpqam1tbf8xMf86Ov9AQP9KSv9LS/9MTP9OTv9QUIWFhYiIiP9dXZWVlf9qapiYmJubm+eGhv98fP+Dg/+Kiq6urv+Zmf+rq8fHx/+wsM7Ozv+6uu/Bwf+7u/+9vdHR0dLS0v/Kyv/Nzf/Z2efn5//e3v/h4f/v7//w8P/09P/29v/8/P///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAH8ALAAABQAQAAkAAAd1gAsyf4SERYQwD38zAw0FLoU1GRcaOS0IfxMffwcQBgw0Jj5JQB0bCEICBCQHGDsAESUxJ00rCpgUHpwtfwIOJUFGTioJmBUju70OOkQgS8TGyAe8AhI3SjxMNhYBOMd/Q0d/PT8cKCkhJoXr60UsIi9I7H+BADs=";
}

var defaultSearchName = "Default";
var selectedSearch = "";	
var selectedSearchURL = "";

// determine which webpage we're one
/*
var location = new String(window.location);
if ( location.indexOf("imdb.com") != -1 || location.indexOf("a9.com") != -1 ) {
	defaultSearchName = "A9";
} else if ( location.indexOf("google.com") != -1 ) {
	defaultSearchName = "Google";
} else if ( location.indexOf("dictionary.reference.com") != -1 ) {
	defaultSearchName = "Dictionary";
} else if ( location.indexOf("thesaurus.reference.com") != -1 ) {
	defaultSearchName = "Thesaurus";
}
*/


// find the first search form

var formnumber = 0;
var stf = document.getElementById("q");

var found = false;

for ( var i = 0; i < document.forms.length && !found; i++ ) {
	for ( var j = 0; j < document.forms[i].elements.length && !found; j++ ) {
		
		if ( 	document.forms[i].elements[j].name == "q"  ||		// most search engines
			document.forms[i].elements[j].name == "p"  ||		// yahoo
			document.forms[i].elements[j].name == "qu" 		// msdn
			) {	
			formnumber = i;
			stf = document.forms[i].elements[j];
			found = true;
		}
	}
}



var amazonRefId = "backgrcomthei-20"; 	// place your own amazon referral   ID here!
var bnRefId = "41494726"; 		// place your own barnes and nobles referral ID here!
var ebayRefId = "1756227-7088800"	// place your own ebay referral id here!



// add our icon and menu


var searchicon = document.createElement("img");
searchicon.id="searchimage";
searchicon.src=defaultimage();
searchicon.onclick = showhide;


stf.parentElement.insertBefore(searchicon, stf);

var carrot = document.createElement("img");
carrot.src = carrotDown();
stf.parentElement.insertBefore(carrot, stf);


var innermenu=document.createElement("span"); 

innermenu.style.position = "absolute";
innermenu.style.width = "20px";
innermenu.style.height = "30px";
innermenu.style.border = "1px solid black";
innermenu.style.backgroundColor = "white";
innermenu.style.visibility = "hidden";
innermenu.style.zIndex = "1000";

if (!GM_getValue("showLabels", false) ) {
	innermenu.style.textAlign = "center";
}


innermenu.id = "innermenu";
innermenu.onclick=hideinner;

stf.parentElement.insertBefore(innermenu, stf); 


document.forms[formnumber].onsubmit = function() {

	if ( selectedSearch == defaultSearchName || selectedSearch == "Default" ) {
		return true;
	} else {
		window.location = selectedSearchURL + stf.value;
		return false;	
	}
}





// The order that function calls are layed out here is the order in which the icons will appear

	gl(defaultimage(),"Default","");

	gl(googleimage(),"Google","http://www.google.com/search?q=");
	gl(amazonimage(),"Amazon","http://www.amazon.com/exec/obidos/external-search?mode=blended&tag=" + amazonRefId + "&keyword=");
	gl(wikipediaimage(),"Wikipedia","http://" + wikipediaPrefix + ".wikipedia.org/wiki/Special:Search?search=");
	gl(banimage(), "Barnes and Nobles", "http://service.bfast.com/bfast/click?bfmid=2181&sourceid="+ bnRefId +"&categoryid=rn_booksearch&choice=keywordsearch&userInput=" );
	gl(ebayimage(), "eBay", "http://www.qksrv.net/click-"+ebayRefId +"?loc=http://search.ebay.com/search/search.dll?query=");
	gl(halfimage(), "Half.com", "http://search.half.ebay.com/");
	gl(dictionaryimage(), "Dictionary", "http://dictionary.reference.com/search?q=");
	gl(thesaurusimage(), "Thesaurus", "http://thesaurus.reference.com/search?q=");
	gl(imdbimage(), "IMDB", "http://imdb.com/find?s=all;q=");
	gl(javadocimage(), "Javadoc", "http://www.google.com/search?&btnI=I%27m+Feeling+Lucky &q=site:http://java.sun.com/j2se/1.4.2/docs/api+");
	gl(a9image(), "A9", "http://a9.com/");
	gl(msdnimage(), "MSDN", "http://search.microsoft.com/search/results.aspx?qu=");
	gl(altavistaimage(), "Altavista", "http://www.altavista.com/web/results?q=");
	gl(yahooimage(), "Yahoo", "http://search.yahoo.com/search?p=");
	gl(jeevesimage(), "Ask Jeeves", "http://web.ask.com/web?q=");
	gl(msnimage(), "MSN", "http://search.msn.com/results.aspx?q=");









