/* Client-side code */

function setSelectedIndexByValue(elm, strVal)
{
	for (var i = 0; i < elm.options.length; ++i) {
		if (elm.options[i].value == strVal) {
			elm.options[i].selected = true;
			return i;
		}
	}
}

function setNamedRadioButtonByValue(name, strVal) 
{
	var	elms = document.getElementsByName(name);

	for (var i = 0; i < elms.length; ++i) {
		elms[i].checked = (elms[i].value == strVal);
	}
}

var	DISABLE_SEARCH_BOX_UPDATES = false;

/* Carry over search values from one page to another so that user doesn't have to retype them */
/* To disable this function without altering the Perl script that generates the JavaScript caller, set DISABLE_SEARCH_BOX_UPDATES above to true */
function updateSearchBoxValues(TB, SHOWOOS, SS, S_BRAND1_0, PR, SRCHCRIT)
{
	if (DISABLE_SEARCH_BOX_UPDATES)
		return;

	var	searchString = SS.replace(/'"/g, ""),
		SSElm, PRElm,
		OOS = SHOWOOS.toLowerCase();

	setNamedRadioButtonByValue('TB', TB);

	document.getElementById('advancedOos').checked = ((OOS != ''  &&  OOS != 'false'  &&  OOS != '0') ? true : false);

	for (var i = 0; (SSElm = document.getElementsByName('SS')[i]); ++i) {
		document.getElementsByName('SS')[i].value = searchString;
	}

	for (var i = 0; (PRElm = document.getElementsByName('PR')[i]); ++i) {
		document.getElementsByName('PR')[i].value = PR;
	}

	setSelectedIndexByValue(document.getElementsByName('S_BRAND1_0')[0], S_BRAND1_0);
	setSelectedIndexByValue(document.getElementsByName('SRCHCRIT')[0], SRCHCRIT);

	/* Display message showing benefits of the *other* search option type (AND vs. OR) */
	document.getElementById('any_explanation').style.display = (TB == "A") ? "inline" : "none";
	document.getElementById('all_explanation').style.display = (TB == "O") ? "inline" : "none";
}

/* Reset search box entries to default settings */
/* To disable this function without altering the Perl script that generates the JavaScript caller, set DISABLE_SEARCH_BOX_UPDATES above to true */
function clearSearchBoxValues()
{
	if (DISABLE_SEARCH_BOX_UPDATES)
		return;

	setNamedRadioButtonByValue('TB', 'A');

	document.getElementsByName('SHOWOOS')[0].checked = false;

	for (var i = 0; (SSElm = document.getElementsByName('SS')[i]); ++i) {
		document.getElementsByName('SS')[i].value = "";
	}

	for (var i = 0; (PRElm = document.getElementsByName('PR')[i]); ++i) {
		document.getElementsByName('PR')[i].value = -1;
	}

	document.getElementsByName('S_BRAND1_0')[0].options[0].selected = true;
	document.getElementsByName('SRCHCRIT')[0].options[0].selected = true;
}

