var options =
[
	{
		cx : "cx=009739531259684762631%3A_jh-9wnk6es",
		id : "idWholeSite",
		label : "All results",
		always : true
	},

	{
		cx: "cx=009739531259684762631%3A_jh-9wnk6es&sitesearch=help.wildapricot.com/display/DOC/",
		id: "idHelp",
		label: "Documentation",
		always : false
	},

	{
		cx: "cx=009739531259684762631%3A_jh-9wnk6es&sitesearch=support.wildapricot.com/KB/",
		id: "idSupport",
		label: "Support portal",
		always : false
	},

	{
		cx: "cx=009739531259684762631%3A_jh-9wnk6es&sitesearch=www.wildapricot.com/forums/",
		id: "idForums",
		label: "Forums",
		always : false
	},

]

var checkBoxesId = 'idSearchCheckBoxes';
var searchId = 'idSearchBox';
var iFramesId = 'idIFrames';
var buttonsId = 'idButtons';
var searchRoot = 'http://support.wildapricot.com/search.html';



function makeIFrame(i, vizz)
{
	var qs, vis, current;
	current = options[i];
	if (vizz) vis = "display:block"; else vis = "display:none";
	qs = 'http://www.google.com/cse?'+current.cx+'&cof=FORID%3A10;NB:1&ie=UTF-8&q='+getQueryVariable('q')+'&ad=w9&num=10';
	return '<iframe id="' + current.id + '_iframe" width="100%" height="1000px" src="'+qs+'" FRAMEBORDER="0" BORDER="0" FRAMESPACING="0" style="border:0;overflow:hidden;'+vis+'"></iframe>'
}

function makeButton(i, vizz, num)
{
	var qs, vis, current, addclass;

	current = options[i];
	var addclass = '';
	if (num==1) {addclass=" first";}
	if ((num==tabsQty() + 1 && (tabsQty()>1)) || (tabsQty() == 1)) {addclass=" last";}
	if (vizz) 
	{
		return '<div class="label current' + addclass + '"><span>' + current.label + '</span></div>';
	}
	else
	{
		return '<div class="label' + addclass + '"><a href="#" onclick="onTabPress(\'' + current.id + '\');">' + current.label + '</a></div>';
	}
}

function renderResults()
{
	var i, current, qs, vis, searchquery;
	var outfrm = '';
	var outbut = '';
	var num = 0;

	if (!getQueryVariable('q'))
	{
		return;
	}

	for (i in options)
	{
		current = options[i];
	/*
		if ((current.always && tabsQty()>1) || isChecked(current.id))
		{
	*/
			num++;
			outfrm += makeIFrame(i, (num == 1));
			outbut += makeButton(i, (num == 1), num);
	/*
		}
	*/
	}

	if (num==0)
	{
		outfrm = '<div class="errorAlert">Please select at least one search option!</div>';
	}

	$$$(iFramesId).innerHTML = outfrm;
	$$$(buttonsId).innerHTML = outbut;


	searchquery = decodeURI(getQueryVariable("q"));
	$$$("biginput").value = searchquery;

	if (searchquery.length > 0)
	{
		document.title +=  ' for "' + searchquery + '"';
	}
}

function onTabPress(id)
{
	var i, current, iframeid;
	var outbut = '';
	var num = 0;

	for (i in options)
	{
		current = options[i];
		iframeid = $$$(current.id+'_iframe');

		if (!iframeid)
			continue;

		num++;

		iframeid.style.display = (current.id == id) ? "block" : "none";
		outbut += makeButton(i, (current.id == id), num);
	}

	$$$(buttonsId).innerHTML = outbut;

	return false;
}

function $$$(id)
{
	return document.getElementById(id);
}

function getQueryVariable(variable)
{
	var query = window.location.search.substring(1);
	var vars = query.split("&");
	var answer = false;
	for (var i=0;i<vars.length;i++)
	{
		var pair = vars[i].split("=");
		if (pair[0] == variable)
		{
			answer=pair[1];
		}
	}

	return answer;
}

function checkEnter(e)
{
	var characterCode;

	if(e && e.which)
	{
		e = e
		characterCode = e.which
	}

	else
	{
		e = event
		characterCode = e.keyCode
	}

	if(characterCode == 13)
	{
		return true
	}
	else
	{
		return false
	}
}

function isChecked(el)
{
	var id = $$$(el);
	return (id) ? id.checked : false;
}

function setChecked(el, val)
{
	$$$(el).checked = val;
}


function tabsQty()
{
	/*
	var i;
	var num = 0;
	for (i in options)
	{
		if (getQueryVariable('form'+i))
		{
			num++;
		}
	}
	return num;
	*/

	return options.length-1;
}


function submtop()
{
	var queryStr = $$$('biginput').value;
	var queryParams = '';
	var checkedQty = 0;
	
	for (i in options)
	{
		current = options[i];
		if (isChecked(current.id))
		{
			checkedQty++;
			queryParams += '&form' + i + '=1';
		}
	}

	if (queryStr.length > 0)
	{
		window.location = searchRoot + '?q=' + queryStr + queryParams;
	}

}


function init()
{
	setTimeout(renderResults, 200);
	$$$('idSubmitSearch').onclick = function(){submtop(); return false;}
	$$$('biginput').onkeypress = function(event){if (checkEnter(event)) {submtop(); return false;}}
};

window.onload = init;


