var ZoomSearchBox = new ZoomSearchBox();

function ZoomSearchBox() {
	this.selectedTabIndex = 0;
	this.searchForms = [{
			formAction : "/search/PersonQuery.aspx",
			advancedSearchHref : "/search/AdvancedSearch.aspx?t=0",
			toolTip : "ex: Jonathan Stern"
		}, {
			formAction : "/search/CompanyQuery.aspx",
			advancedSearchHref: "/search/AdvancedSearch.aspx?t=1", 
			toolTip : "ex: Credit Unions or Pfizer"
		}]	
		
	this.init = function(selectedTabIndex, searchBoxValue) {
		this.selectedTabIndex = selectedTabIndex;
		var searchBoxValue = unescape(searchBoxValue.replace(/\+/g, " "));
		var frm = document.getElementById("search-form");
	    var searchBox = frm.elements["singleSearchBox"];
	    searchBox.value = searchBoxValue;
		this.setSearchBox();
	}
	
	this.tabClicked = function(tabIndex) {
		if(tabIndex == this.selectedTabIndex) return;
		this.selectedTabIndex = tabIndex;
		this.setSearchBox();
	}
	
	this.setSearchBox = function() {
		SetCookie("SearchBoxTabIndex", this.selectedTabIndex, null, null, AppDomain);
		for(i=0;i<this.searchForms.length;i++){
		    var tab = document.getElementById("tabs_" + i);
			if(i==this.selectedTabIndex) tab.className = tab.className + " active";
			else tab.className = tab.className.replace("active", "");
		}
		var frm = document.getElementById("search-form");
		var searchBox = frm.elements["singleSearchBox"];
        this.resetToolTipText(searchBox);
	}
	
	this.doSearch = function() {
		var frm = document.getElementById("search-form");
		var searchBox = frm.elements["singleSearchBox"];
		var searchBoxVal = this.getSearchBoxValue(searchBox);
		if(searchBoxVal.length > 0) {
    		frm.action=this.searchForms[this.selectedTabIndex].formAction;
    	    return true;
		}
		return false;
	}
    this.advancedSearch = function() {
        location.href=this.searchForms[this.selectedTabIndex].advancedSearchHref;
    }	
	this.getSearchBoxValue = function(element) {
		if(element.style.color=="gray") return "";
		return element.value.trim();
	}

	this.resetToolTipText = function(searchBox) {
		if(this.getSearchBoxValue(searchBox) == ''){
			searchBox.style.color = 'gray';
			searchBox.value = ZoomSearchBox.searchForms[this.selectedTabIndex].toolTip;
		}
	}
	this.onKeyDown = function(event) {
		if(event.keyCode==13)
			setTimeout('ZoomSearchBox.doSearch', 10);
	}
	this.clearSearchBox = function(searchBox) {
		if(searchBox.style.color == "gray"){
			searchBox.value = '';
			searchBox.style.color = 'black';
		}
	}
	
}
