// File: search_form.js

// Class Definition
SearchForm = Class.create();
SearchForm.prototype = {
	initialize: function(strFormID, strModeLinksContainerID, strSubmitID)
	{
		this.form = $(strFormID);
		this.bttnSubmit = $(strSubmitID);

		var eltContainer = $(strModeLinksContainerID);
		var list = eltContainer.getElementsByTagName("A");
		var urlArr = document.location.href.split("/", 4);

		this.linksMode = new Array();

		var i;
		var setSelected = false;
		for(i = 0; i < list.length; i++){
			this.linksMode[i] = list[i];
			list[i].onclick = this.handleModeLinkClick.bindAsEventListener(this);

			if(list[i].id == urlArr[3]+"SearchLink") {
				Element.addClassName(list[i], "selected"); // set the CSS class to selected
				var strText = list[i].innerHTML;
				this.bttnSubmit.value = "search " + strText; // change the button text
				setSelected = true;
			}
		}

		if(!setSelected) {
			imagesElement = $("imagesSearchLink");
			Element.addClassName(imagesElement, "selected");
		}

	},
	handleModeLinkClick: function(e)
	{
		var elt = Event.findElement(e, "A");

		this.form.action = elt.href;
		var strText = elt.innerHTML;
		this.bttnSubmit.value = "search " + strText;

		// change the form method based on the id
		if(elt.id == "webSearchLink" || elt.id == "ebaySearchLink"){
			this.form.method = "get";

		}
		else{
			this.form.method = "post";
		}

		// For e-bay search
		var eltEbayHddn = $("ebaysearch");

		if(elt.id == "ebaySearchLink"){
			var eltQ = $('q');
			if(eltEbayHddn && eltQ){
				eltEbayHddn.value = eltQ.value;
			}
		}
		else if(eltEbayHddn){
			eltEbayHddn.value = "";
		}

		var i, str = "";

		// Remove Selected class from currently
		for(i = 0; i < this.linksMode.length; i++){
			str += this.linksMode[i].href + "\n" + this.linksMode[i].tagName;

			if(Element.hasClassName(this.linksMode[i], "selected")){
				Element.removeClassName(this.linksMode[i], "selected");
			}
		}
		Element.addClassName(elt, "selected");

		Event.stop(e);

		return false;
	}
}

