String.prototype.startsWith = function(s) { 
  return (s == this.substring(0,s.length) );
} 

function escapeTerm(term) {
        // URLencoding for the query terms - added 10/14/2008.
	var newterm = term.replace(/\\/g, '\\\\');
	newterm = newterm.replace(/\"/g, '\\"');
//ARZ 8/26/09	newterm = newterm.replace(/\&/g, '&amp;');
	newterm = newterm.replace(/\#/g, '%23');
	newterm = newterm.replace(/\$/g, '%24');
	newterm = newterm.replace(/\@/g, '%40');

	// We need to encode the percent sign again here! ARZ 8/26/2009
	newterm = newterm.replace(/\%/g, '%25');		

        // Encoding for the & - do it this way.
	newterm = newterm.replace(/\&/g, '%26');

	return newterm;
}

function formatTerm(fromId, toId) {
	document.getElementById(toId).value = escapeTerm(document.getElementById(fromId).value);
}

function formatQuery(searchterm) {
	// put backslash in front of all double quotes in the query term
	//searchterm = searchterm.replace('"','\\"');
	searchterm = escapeTerm(searchterm);

        if (searchterm.length > 0) {
	   document.getElementById('query1').value="local.oclcAccountName all " + "\"" + searchterm + "\"" + " or local.institutionAlias all " + "\"" + searchterm + "\"" + " or local.institutionName all " + "\"" + searchterm + "\"" + " not local.logicalDelete=\"1\"";
        } else {
	   document.getElementById('query1').value="";
        }
}

function sumStaff() {
	var totalStaff = document.getElementById('totalStaff');
	var librariansMLS = parseFloat(document.getElementById('librariansMLS').value);
	if (isNaN(librariansMLS))
		librariansMLS = 0;
	var librarians = parseFloat(document.getElementById('librarians').value);
	if (isNaN(librarians))
		librarians = 0;
	var otherStaff = parseFloat(document.getElementById('otherStaff').value);
	if (isNaN(otherStaff))
		otherStaff = 0;
	totalStaff.value = librariansMLS + librarians + otherStaff;
}

function getSimpleDate(){
   var date = new Date();
   m = date.getMonth() + 1;
   d = date.getDate();
   y = date.getFullYear();
   if(m<10) m='0'+m;
   if(d<10) d='0'+d;
   return (y + "-" + m + "-" + d);

}

function isilReminder() {
    alert("If you enter or modifiy an OCLC Symbol, please enter or modify the OCLC ISIL also!");
    return false;
}

function verify() {
    // 0 Object is not initialized
    // 1 Loading object is loading data
    // 2 Loaded object has loaded data
    // 3 Data from object can be worked with
    // 4 Object completely initialized
    if (xmlDoc.readyState != 4) {
        return false;
    }
}

function addElement(id, label, name) {
//	alert(id);
	var tableObj = document.getElementById("tableBody");
//	alert(tableObj);
	var trObj = document.getElementById(id);
//	alert(trObj);
	/*
	var numi = document.getElementById('n'+id);
	var num = (document.getElementById('n'+id).value -1) +2;
	numi.value = num;
	*/
	if (navigator.userAgent.indexOf("MSIE") > -1) { //IE
		var newtr = document.createElement("tr");
		var td1 = document.createElement("td");
		td1.className = "label";
		var labelObj = document.createElement("label");
		labelObj.setAttribute('for', '');
		labelObj.appendChild( document.createTextNode(label) );
		td1.appendChild(labelObj);
		var td2 = document.createElement("td");
		td2.className = "field";
		var input = document.createElement("input");
		input.setAttribute('type', 'text');
		input.setAttribute('name', name);
		input.setAttribute('id', name);
		input.setAttribute('size', 25);
		input.className = "text";
		td2.appendChild(input);
		newtr.appendChild(td1);
		newtr.appendChild(td2);
		tableObj.insertBefore(newtr,trObj.nextSibling);
	} else {
		var newtr = trObj.cloneNode(true);
//	alert(newtr);
		tableObj.insertBefore(newtr, trObj);
		trObj.innerHTML="<td class=\"label\"><label for=\"\">" + label + "</label></td>\n" +
				"<td class=\"field\">" +
				"<input type=\"text\" name=\"" + name + "\" id=\"\" size=\"25\" class=\"text\"/>" +
				"</td>\n";
	}
}

var total=0;
function addOclcSymbol(id, label, last) { 
//  alert(id); 
  var tableObj = document.getElementById("tableBody");
//  alert(tableObj);
  var trObj = document.getElementById(id);
//  alert(trObj);
//alert("last=" + last);
if (total == 0) 
  total = last;
else
  total = total + 1;

//alert("total=" + total);
  var name = "000.oclcSymbol";
  var oclcSymbolId = name + total ;
  if (navigator.userAgent.indexOf("MSIE") > -1) { //IE
		//add errorDivSymbol
    var newtr0 = document.createElement("tr");
    var td0 = document.createElement("td");
    td0.setAttribute('id', 'errorDivSymbol'+total);
    td0.setAttribute('colSpan', '3');
    newtr0.appendChild(td0);
    tableObj.insertBefore(newtr0,trObj.nextSibling);
    var newtr = document.createElement("tr");
    var td1 = document.createElement("td");
    td1.className = "label";
    var labelObj = document.createElement("label");
    labelObj.setAttribute('for', '');
    labelObj.appendChild( document.createTextNode(label) );
    td1.appendChild(labelObj);
    var td2 = document.createElement("td");
    td2.className = "field";
    var input = document.createElement("input");
    input.setAttribute('type', 'text');
    input.setAttribute('name', name);
    input.setAttribute('id', oclcSymbolId);
    input.setAttribute('size', 25);
    input.className = "text";
    input.onchange = "validateSymbol(" + total+ ");";
    var onChangeHandler = new Function(input.onchange);
    if (input.addEventListener) {
      input.addEventListener('change', onChangeHandler, false );
    } else if (input.attachEvent) {
      input.attachEvent('onchange', onChangeHandler);
    }
    td2.appendChild(input);
    newtr.appendChild(td1);
    newtr.appendChild(td2);
    tableObj.insertBefore(newtr,trObj.nextSibling);
  } else {
    var newtr = trObj.cloneNode(true);
//  alert(newtr);
    tableObj.insertBefore(newtr, trObj);
    trObj.innerHTML="<td class=\"label\"><label for=\"\">" + label + "</label></td>\n" +
        "<td class=\"field\">" +
        "<input type=\"text\" name=\"" + name + "\" id=\"" + oclcSymbolId + "\" size=\"25\" class=\"text\" onchange=\"validateSymbol(" + total + ");\" />" +
        "</td>\n";
		var newtr0 = trObj.cloneNode(true);
    tableObj.insertBefore(newtr0, trObj);
    trObj.innerHTML="<td colspan=\"3\" id=\"errorDivSymbol"+total+"\"></td>\n";
  }
}

function addIPElement(indexField) {
	var index = parseInt(indexField.value)+1;
	indexField.value = index;
	var tableObj = document.getElementById("tableBody");
	var trObj = document.getElementById("IPAddressRow");
	if (navigator.userAgent.indexOf("MSIE") > -1) { //IE
		var newtr = document.createElement("tr");
		var td1 = document.createElement("td");
		td1.className = "label";
		var label = document.createElement("label");
		label.setAttribute('for', '');
		label.appendChild( document.createTextNode("IP Address:") );
		td1.appendChild(label);
		var td2 = document.createElement("td");
		td2.className = "field";
		var input = document.createElement("input");
		input.setAttribute('type', 'text');
		input.setAttribute('name', 'IPAddressRange');
		input.setAttribute('id', 'IPAddressRange'+index);
		input.setAttribute('size', 25);
		input.className = "text";
		input.onchange = "validateIP(" + index + ")";
		var onChangeHandler = new Function(input.onchange);
		if (input.addEventListener) {
			input.addEventListener('change', onChangeHandler, false );
		} else if (input.attachEvent) {
			input.attachEvent('onchange', onChangeHandler);
		}
		td2.appendChild(input);
		var td3 = document.createElement("td");
		td3.setAttribute('id', 'errorDiv'+index);
		newtr.appendChild(td1);
		newtr.appendChild(td2);
		newtr.appendChild(td3);
		tableObj.insertBefore(newtr,trObj.nextSibling);
	} else {
		var newtr = trObj.cloneNode(true);
		tableObj.insertBefore(newtr, trObj);
		trObj.innerHTML="<td class=\"label\"><label for=\"\">IP Address:</label></td>\n" +
				"<td class=\"field\">" +
				"<input type=\"text\" name=\"IPAddressRange\" id=\"IPAddressRange"+index+"\" size=\"25\" class=\"text\" onchange=\"validateIP("+index+")\"/>" +
				"</td>\n" +
				"<td id=\"errorDiv"+index+"\"></td>\n";
	}
}

function disableBusAddress() {
	var busAddress1 = document.getElementById("busAddress1");
	var busAddress2 = document.getElementById("busAddress2");
	var busCity = document.getElementById("busCity");
	var busState = document.getElementById("busState");
	var busZip = document.getElementById("busZip");
	var busCountry = document.getElementById("busCountry");
	var busAddress1Auth = document.getElementById("bus.street1.auth");
	var busAddress2Auth = document.getElementById("bus.street2.auth");
	var busCityAuth = document.getElementById("bus.city.auth");
	var busStateAuth = document.getElementById("bus.state.auth");
	var busZipAuth = document.getElementById("bus.postalCd.auth");
	var busCountryAuth = document.getElementById("bus.country.auth");

	busAddress1.value = "";
	busAddress2.value = "";
	busCity.value = "";
	busState.value = "";
	busZip.value = "";
	busCountry.value = "";
	if (busAddress1Auth) busAddress1Auth.value = "";
	if (busAddress2Auth) busAddress2Auth.value = "";
	if (busCityAuth) busCityAuth.value = "";
	if (busStateAuth) busStateAuth.value = "";
	if (busZipAuth) busZipAuth.value = "";
	if (busCountryAuth) busCountryAuth.value = "";

	busAddress1.disabled=true;
	busAddress2.disabled=true;
	busCity.disabled=true;
	busState.disabled=true;
	busZip.disabled=true;
	busCountry.disabled=true;
	busAddress1Auth.disabled=true;
	busAddress2Auth.disabled=true;
	busCityAuth.disabled=true;
	busStateAuth.disabled=true;
	busZipAuth.disabled=true;
	busCountryAuth.disabled=true;
}

function enableBusAddress() {
	var busAddress1 = document.getElementById("busAddress1");
	var busAddress2 = document.getElementById("busAddress2");
	var busCity = document.getElementById("busCity");
	var busState = document.getElementById("busState");
	var busZip = document.getElementById("busZip");
	var busCountry = document.getElementById("busCountry");

	busAddress1.disabled=false;
	busAddress2.disabled=false;
	busCity.disabled=false;
	busState.disabled=false;
	busZip.disabled=false;
	busCountry.disabled=false;
}


function formatHiddenQuery(form1, hiddenform) {
	var debug = 0;

	var nameArrayAll = new Array("oclcAccountName", "institutionAlias");

	var nameArrayEq = new Array("city");

	var nameArrayExact = new Array("libTypeUser", "oclcSymbol", "country", "state", "regID", "rlgID", "san", "opCustomerId","networkCode", "auNUC", "nzLibSymbol", "ISIL");

	var theStopwords = {'&': 1, '@':1, 'DE': 1, 'DU': 1, 'DES': 1, 'ET': 1, 'the': 1, 'an': 1, 'a': 1, 'of': 1, 'at': 1, 'for': 1, 'in': 1 };

	var untrustedName = "hasUnTrusted";
	var deletedName = "x-info-6-deletedRecord";

	var ncesName = "nces";
	var marcOrgCodeName = "marcOrgCode";
	var postalCdName = "postalCd";

	var qstring = '';
	var strippedTerm = '';

	// apply CQL " all " formatting to these form elements
	for (var i in nameArrayAll) {
		strippedTerm = '';
		if (form1.elements[nameArrayAll[i]].value) {
			var term = form1.elements[nameArrayAll[i]].value;

			// put backslash in front of all double quotes in the query term
			//term = term.replace('"','\\"');
			term = escapeTerm(term);

			if (term.length > 0) {
				var wordsInTerm = term.split(" ");

				// remove stopwords from term
				for ( var j = 0; j < wordsInTerm.length; j++ ) {
					if (! theStopwords[wordsInTerm[j]]) {
						strippedTerm += wordsInTerm[j] + ' ';
					}
				}

				// remove trailing space
				var finalTerm = strippedTerm.substr(0, strippedTerm.length - 1);

				// CQL formatting
				if (nameArrayAll[i] == 'oclcAccountName') {
					//alert('matched on oclcAccountName = ' + nameArrayAll[i]);
					//qstring += "local." + nameArrayAll[i] + " all " + "\"" + finalTerm + "\"" + " or " + "local.institutionName" + " all " + "\"" + finalTerm + "\"" + " and ";
					qstring += "local." + nameArrayAll[i] + " all " + "\"" + finalTerm + "\"" + " or " + "local.institutionName" + " all " + "\"" + finalTerm + "\"" + " and ";
				}
				else {
					qstring += "local." + nameArrayAll[i] + " all " + "\"" + finalTerm + "\"" + " and ";
				}
			}
		}
	}

	// apply CQL " = " formatting to these form elements
	for (var i in nameArrayEq) {
		if (form1.elements[nameArrayEq[i]].value != "") {
			var term = form1.elements[nameArrayEq[i]].value;
			term = escapeTerm(term);

			// CQL formatting
			qstring += "local." + nameArrayEq[i] + ' = ' + "\"" + term + "\"" + ' and ';
		}
	}

	// apply CQL " exact " formatting to these form elements
	for (var i in nameArrayExact) {
		if (form1.elements[nameArrayExact[i]] != undefined && form1.elements[nameArrayExact[i]].value != "") {
			var term = form1.elements[nameArrayExact[i]].value;
			term = escapeTerm(term);

			// CQL formatting
			qstring += "local." + nameArrayExact[i] + ' exact ' + "\"" + term + "\"" + ' and ';
		}
	}

	if (form1.elements[marcOrgCodeName].value != "") {
			var term = form1.elements[marcOrgCodeName].value;
			term = escapeTerm(term);
			var ch = term.charAt(term.length-1);
			if (ch!='?' && ch!='*') {
				term += "*";
			}
			// CQL formatting
			qstring += "local." + marcOrgCodeName + ' exact ' + "\"" + term + "\"" + ' and ';
	}

	if (form1.elements[postalCdName].value != "") {
			var term = form1.elements[postalCdName].value;
			term = escapeTerm(term);
			var ch = term.charAt(term.length-1);
			if (ch!='?' && ch!='*') {
				term += "*";
			}
			// CQL formatting
			qstring += "local." + postalCdName + ' exact ' + "\"" + term + "\"" + ' and ';
	}

	if (form1.elements[ncesName].value != "") {
			var term = form1.elements[ncesName].value;
			term = escapeTerm(term);

			// CQL formatting
			qstring +=  "( local.ncesUnitId exact \"" + term + "\" or local.ncesKey exact \"" + term + "\" or local.ncesId exact \"" + term + "\" ) and ";
	}

	if (form1.elements[untrustedName]) {
		if (form1.elements[untrustedName].checked==true)	{
			if (qstring.length > 0) {
				qstring = "( "+qstring.substr(0, qstring.length - 5)+" ) and ";
			}
			qstring += "local." + untrustedName + ' = ' + "\"" + form1.elements[untrustedName].value + "\"" + ' and ';
		}
	}

        // Need to change Query so we search "not local.logicalDelete=1". ARZ 10/24/2008
        // Case: user is signed in.
	if (form1.elements[deletedName]) {
		if (form1.elements[deletedName].checked==true)	{
			hiddenform.elements[deletedName].value = form1.elements[deletedName].value;
			qstring += "local.logicalDelete=\"1\"" + ' and ';
		} else {
			hiddenform.elements[deletedName].value = "";
                        qstring = qstring.substr(0, qstring.length - 5);
                        qstring += " not local.logicalDelete=\"1\"" + ' and ';
		}
	} else {
                // Case: user is not signed in
                        qstring = qstring.substr(0, qstring.length - 5);
                        qstring += " not local.logicalDelete=\"1\"" + ' and ';
        }

	if (debug) {
		for (i = 0; i < document.forms.length; i++) {
			alert('form query value = ' + document.forms[i].query.value);
		}
		alert ('qstring = ' + qstring);
	}

	// strip off the final 5 chars (i.e., the trailing ' and ')
	if (qstring.length > 0) {
		form1.query.value = qstring.substr(0, qstring.length - 5);
		hiddenform.query.value = qstring.substr(0, qstring.length - 5);
	}
	else {
		// when there is no value in either oclcAccountName or institutionAlias, do CQL formatting anyway,
		// otherwise, the search raises an exception
		form1.query.value = "local.oclcAccountName" + " all " + "\"" + strippedTerm + "\"";
		hiddenform.query.value = "local.oclcAccountName" + " all " + "\"" + strippedTerm + "\"";
	}

	return false;
}

/**
 * Set All Select Element Options.
 */
function setAllSelectOptions(selectCountry, selectState, defaultCountry, defaultState)
{
	// Set country Select Options.
	if (selectCountry) {
		setSelectOptions( selectCountry, enumCountry, defaultCountry );
	}

	// Set state Select Options.
	if (selectState) {
		setRegionOptions(selectCountry, selectState, defaultCountry, defaultState);
	}
}

/**
 * Set the state Select Options based on the country Element.
 */
function setRegionOptions(selectCountry, selectState, defaultCountry, defaultState)
{
	var oldLen = selectState.options.length;
	if (selectCountry) {
		/*
		if (selectCountry.options[selectCountry.selectedIndex].value.length == 0) {
			deleteSelectOptions(selectState);
		} else {
			var re = new RegExp( selectCountry.options[selectCountry.selectedIndex].value + "-" );
			setFilteredSelectOptions( selectState, enumRegion, re, defaultState );
		}
		*/
		var re = new RegExp( selectCountry.options[selectCountry.selectedIndex].value + "-" );
		setFilteredSelectOptions( selectState, enumRegion, re, defaultState );
		if (selectCountry.selectedIndex == 0) {//no country is selected
			selectState.selectedIndex = 0;
		}
	} else {
		var re = new RegExp( defaultCountry + "-" );
		if (selectState.options.length = 1)
       setFilteredSelectOptions( selectState, enumRegion, re, "" );
    else
      setFilteredSelectOptions( selectState, enumRegion, re, defaultState );
	}

	// Enable/Disable state Select based on Options.
	if( selectState.options.length > 0 )
	{
		if (oldLen <= 1) {
			selectState.disabled = false;
		}
	}
	else
	{
		selectState.disabled = true;
	}
}

/**
 * Set the country Select Options based on the Region Element.
 */
function setCountry(selectCountry, selectState, defaultCountry, defaultState)
{
	if (selectState.options.length > 70) { //the whole state list is displayed
		var country = selectState.options[selectState.selectedIndex].value.substr(0,2);
		var i;
		for( i = 0; i < selectCountry.options.length; i++ ) {
			if( selectCountry.options[i].value == country ) {
				selectCountry.selectedIndex = i;
			}
		}
		setRegionOptions(selectCountry, selectState, defaultCountry, selectState.options[selectState.selectedIndex].value);
	}
}

function setCountryStateAuth(firstAuth, pairAuth, pairList)
{
	var firstAuthSelect = document.getElementById(firstAuth);
	var pairAuthSelect = document.getElementById(pairAuth);
	var pairListSelect = document.getElementById(pairList);
	if (pairAuthSelect) {
		pairAuthSelect.selectedIndex = firstAuthSelect.selectedIndex;
	} else if (pairListSelect && pairAuth.indexOf('state')>=0) {
		if (firstAuthSelect.selectedIndex == 2) {
			pairListSelect.selectedIndex = 0;
			pairListSelect.disabled = true;
		} else {
			pairListSelect.disabled = false;
		}
	}
}

function showAdvanced() {
  var advancedcheckbox = document.getElementById('advancedcheckbox');
  if (advancedcheckbox.checked) {
    document.getElementById('advanced').style.display="block";
  } else {
    document.getElementById('advanced').style.display="none";
  }
  support01();
}

function support01() {
  enabled = document.getElementById('OpenURL_0.1').checked;
  document.getElementById('bibcode').disabled = (!enabled);
  document.getElementById('doi').disabled = (!enabled);
  document.getElementById('oai').disabled = (!enabled);
  document.getElementById('pmid').disabled = (!enabled);
  document.getElementById('article').disabled = (!enabled);
  document.getElementById('book').disabled = (!enabled);
  document.getElementById('bookitem').disabled = (!enabled);
  document.getElementById('conference').disabled = (!enabled);
  document.getElementById('journal').disabled = (!enabled);
  document.getElementById('preprint').disabled = (!enabled);
  document.getElementById('proceeding').disabled = (!enabled);

}

function supportZ39() {
  enabled = document.getElementById('Z39.88-2004').checked;
  for (i=1; i<=41; i++) {
    eval("document.getElementById('a"+i+"').disabled = ("+!enabled+")");
  }
}

function select_sap1_2004() {
  if (document.getElementById('a1').checked == false) {
    return;
  }
  //Namespaces
  for (i=3; i<=19; i++) {
    eval("document.getElementById('a"+i+"').checked = true");
  }
  //Transports
  for (i=20; i<=22; i++) {
    eval("document.getElementById('a"+i+"').checked = true");
  }
  //Character Encodings
  for (i=26; i<=27; i++) {
    eval("document.getElementById('a"+i+"').checked = true");
  }
  //ContextObjects
  document.getElementById('a28').checked = true
  //Metadata Formats
  for (i=30; i<=34; i++) {
    eval("document.getElementById('a"+i+"').checked = true");
  }
}
function select_sap2_2004(){
  if (document.getElementById('a2').checked == false) {
    return;
  }
  //Namespaces
  for (i=3; i<=19; i++) {
    eval("document.getElementById('a"+i+"').checked = true");
  }
  //Transports
  for (i=20; i<=22; i++) {
    eval("document.getElementById('a"+i+"').checked = true");
  }
  //Character Encodings
  document.getElementById('a27').checked = true
  //Context Objects
  document.getElementById('a29').checked = true
  //Metadata Formats
  for (i=35; i<=41; i++) {
    eval("document.getElementById('a"+i+"').checked = true");
  }
}


function uccp() {
  //uncheck community profile
  uc_sap1 = false;
  uc_sap2 = false;
  for (i=3; i<=19; i++) {
    if (eval("document.getElementById('a"+i+"').checked == false")) {
      uc_sap1 = true;
      uc_sap2 = true;
    }
  }
  for (i=20; i<=22; i++) {
    if (eval("document.getElementById('a"+i+"').checked == false")) {
      uc_sap1 = true;
      uc_sap2 = true;
    }
  }
  for (i=26; i<=27; i++) {
    if (eval("document.getElementById('a"+i+"').checked == false")) {
      uc_sap1 = true;
    }
  }
  if (document.getElementById('a28').checked == false) {
      uc_sap1 = true;
  }
  for (i=30; i<=34; i++) {
    if (eval("document.getElementById('a"+i+"').checked == false")) {
      uc_sap1 = true;
    }
  }
  if (document.getElementById('a27').checked == false) {
      uc_sap2 = true;
  }
  if (document.getElementById('a29').checked == false) {
      uc_sap2 = true;
  }
  for (i=35; i<=41; i++) {
    if (eval("document.getElementById('a"+i+"').checked == false")) {
      uc_sap2 = true;
    }
  }

  if (uc_sap1==true) {
    document.getElementById('a1').checked = false;
  }
  if (uc_sap2==true) {
    document.getElementById('a2').checked = false;
  }
}

function toggle( nBox, nDiv, nGroup ) {

   if( nBox.checked )
   {
  //    document.getElementById(nDiv).style.display = ''
       nRadio = document.getElementsByName(nGroup);
      for( i = 0; i < nRadio.length; i++ )
      {
         nRadio[i].checked = true;
         nRadio[i].disabled = false;
      }
   }
   else
   {
 //     document.getElementById(nDiv).style.display = 'none';
      nRadio = document.getElementsByName(nGroup);
      for( i = 0; i < nRadio.length; i++ )
      {
         nRadio[i].checked = false;
         nRadio[i].disabled = true;
      }
   }
}

function findNodeByIdStartsWith(elem, id)
{
    if (elem.id && elem.id.startsWith(id))
    {
    	return elem;
    }
    var childList = elem.childNodes;
    for (var i=0; i<childList.length; i++)
    {
        var node = findNodeByIdStartsWith(childList[i], id);
        if (node != null)
        	return node;
    }
    
    return null;
}

function findNodeById(elem, id)
{
    if (elem.id && elem.id == id)
    {
    	return elem;
    }
    var childList = elem.childNodes;
    for (var i=0; i<childList.length; i++)
    {
        var node = findNodeById(childList[i], id);
        if (node != null)
        	return node;
    }
    
    return null;
}

function getTextContent(elem)
{
    if (elem.innerText)
    	return elem.innerText;
    else
    	return elem.textContent;
}

function setTextContent(elem, text)
{
    if (elem.innerText)
    	elem.innerText = text;
    else
    	elem.textContent = text;
}

function searchActionSelect()
{
  var select = document.getElementById("feedback");
  var si = select.selectedIndex;
  var selectValue = select.options[si].value;

  if (selectValue.length > 0)
  {
      window.location.href = selectValue;
  }
}

