function runSubmit()  { 
  if (!AllInputs())      
    return;	
  else{           
    setvalues(); 
    document.search_form.submit();      
  }  
}
function AllInputs() { 
  var entered = "false";
  var CtrlObject;
  for(var i=0; i<document.search_form.elements.length; i++){
    if( document.search_form.elements[i].name.indexOf("customValue_") > -1 ){
      if(trimInput(document.search_form.elements[i].value) != "")
        entered = true;
    }		
  }
  
  CtrlObject = document.search_form.customValue_1;
  
  if (entered == "false" &&         
  document.search_form.other.value == "" //&&
  //document.search_form.gmd.selectedIndex <= 0
  ){             
    validatePrompt(CtrlObject, "Please enter some search terms")
    
    return (false);
  } 
  
  else              
    return (true);
}
function trimInput(sStr) {
  // Use a regular expression to replace leading and trailing 
  // spaces with the empty string  
  return sStr.replace(/(^\s*)|(\s*$)/g,"");
}
function resetStartRecord(){  
  if(document.search_form.startRecord)
    document.search_form.startRecord.value = 1;  
}

clearColonial_cookie = "OPACclearColonial"; 
colonialSearchInput_cookie = "ColonialSearchInput";
colonialSearchSelect_cookie = "ColonialSearchSelect";

function setvalues(){  		
  // CC - This function has been changed to allow for multiple gmds
  //if(parent.frames[0]) 
  //this.document.search_form.userId.value = parent.frames[0].getUserId();            		
  //else
  //document.search_form.userId.value = document.savedres.userId.value;   	
  var inputCookieStr = "", selectCookieStr = "";
  var elOrder = "";
  var elName = "";
  var elPref = "customValue_";
  var element; //object
  var elMatchPref = "customMatch_";	
  var elCombPref = "customCombine_";	
  for(var i=0; i<document.search_form.elements.length; i++){
    elName = document.search_form.elements[i].name;	
    if( elName.indexOf(elPref) > -1 ){										
      elOrder = elName.substring(elPref.length);
      element = eval('document.search_form.' + elPref + elOrder);		
      
      inputCookieStr = inputCookieStr + elPref + elOrder + "$" + 
      element.value + "|";
    }	
    else if( elName.indexOf(elMatchPref) > -1 ){										
      elOrder = elName.substring(elMatchPref.length);
      element = eval('document.search_form.' + elMatchPref + elOrder);					
      selectCookieStr = selectCookieStr + elMatchPref + elOrder + "$" + 
      element.selectedIndex + "|";
    }	
    else if( elName.indexOf(elCombPref) > -1 ){										
      elOrder = elName.substring(elCombPref.length);
      element = eval('document.search_form.' + elCombPref + elOrder);	
      selectCookieStr = selectCookieStr + elCombPref + elOrder + "$" + 
      element.selectedIndex + "|";
    }			
  }			
  for (var i = 0; i < document.search_form.gmd.options.length; i++) {  
    if (document.search_form.gmd.options[i].selected){   
      selectCookieStr = selectCookieStr + "gmd[" + i + "]$" + 
      document.search_form.gmd.options[i].value + "|";
    }
  }
  SetCookie(colonialSearchInput_cookie, inputCookieStr + 
  "other$"+document.search_form.other.value+"|"+
  "dateRange1$"+document.search_form.dateRange1.value+"|"+
  "dateRange2$"+document.search_form.dateRange2.value+"|"+
  "pageSize$"+document.search_form.pageSize.value+"|"+
  "groupDispl$"+document.search_form.groupDispl.checked+"|"+
  "abstractDisp$"+document.search_form.abstractDisp.checked+"|");		
  SetCookie(colonialSearchSelect_cookie, selectCookieStr +
  "location_comb$"+document.search_form.location_comb.selectedIndex+"|"+
  "gmd_comb$"+document.search_form.gmd_comb.selectedIndex+"|"+
  "popotherfld1$"+document.search_form.popotherfld1.selectedIndex+"|"+
  "location$"+document.search_form.location.selectedIndex+"|"+
  "displayFormat$"+document.search_form.displayFormat.selectedIndex+"|"+
  "orderBy$"+document.search_form.orderBy.selectedIndex+"|"+
  "other_match$"+document.search_form.other_match.selectedIndex+"|"+
  "date_comb$"+document.search_form.date_comb.selectedIndex+"|");
}
function loadDoc() {    
  if(GetCookie(clearColonial_cookie) != 'YES'){  
    var inputCookieStr = GetCookie(colonialSearchInput_cookie);
    var selectCookieStr = GetCookie(colonialSearchSelect_cookie);
    var tempString = "";
    var elOrder = "";
    var elName = "", elValue = "";
    var element; //object	
    while (inputCookieStr.length > 0){
      if(inputCookieStr.indexOf("|") > -1){
        tempString = inputCookieStr.substring(0, inputCookieStr.indexOf("|"));
        inputCookieStr = inputCookieStr.substring(inputCookieStr.indexOf("|") + 1);				
        elName = tempString.substring(0,tempString.indexOf("$"));
        elValue = tempString.substring(tempString.indexOf("$")+1, tempString.length);				
        element = eval('document.search_form.' + elName);
        if(elName == "groupDispl" || elName == "abstractDisp"){
          if(elValue == "true")
            element.checked = true;
        }
        else					
          element.value = elValue;															
      }
      else{
        tempString = inputCookieStr;
        inputCookieStr = "";
      }    		
    }//while    
    while (selectCookieStr.length > 0){
      if(selectCookieStr.indexOf("|") > -1){
        tempString = selectCookieStr.substring(0, selectCookieStr.indexOf("|"));
        selectCookieStr = selectCookieStr.substring(selectCookieStr.indexOf("|") + 1);

        elName = tempString.substring(0,tempString.indexOf("$"));
        elValue = tempString.substring(tempString.indexOf("$")+1, tempString.length);				
        element = eval('document.search_form.' + elName);
        if(elName.indexOf("gmd[") > -1){
          element.selected = true;
        }
        else
          element.selectedIndex = elValue;								
      }
      else{
        tempString = selectCookieStr;
        searchString = "";					
      } 
    }//while                                       
  }
  else{
    var elOrder = "";
    var elName = "";
    var elPref = "customValue_";
    var element; //object
    var elMatchPref = "customMatch_";	
    var elCombPref = "customCombine_";
    
    for(var i=0; i<document.search_form.elements.length; i++){
      elName = document.search_form.elements[i].name;	
      if( elName.indexOf(elPref) > -1 ){										
        elOrder = elName.substring(elPref.length);
        element = eval('document.search_form.' + elPref + elOrder);						
        element.value = "";
      }	
      else if( elName.indexOf(elMatchPref) > -1 ){										
        elOrder = elName.substring(elMatchPref.length);
        element = eval('document.search_form.' + elMatchPref + elOrder);											 
        element.selectedIndex = 0;
      }	
      else if( elName.indexOf(elCombPref) > -1 ){										
        elOrder = elName.substring(elCombPref.length);
        element = eval('document.search_form.' + elCombPref + elOrder);			
        element.selectedIndex = 0;
      }				
    }		
    //other	    
    document.search_form.popotherfld1.selectedIndex = 0;   		       
    document.search_form.other.value = "";    
    document.search_form.other_match.selectedIndex = 0;                                   
    document.search_form.date_comb.selectedIndex = 0;  
    //limit
    document.search_form.location.selectedIndex = 0;                                  
    document.search_form.gmd.selectedIndex = 0; 
    document.search_form.dateRange1.value = "";
    document.search_form.dateRange2.value = "";     		           
    //display
    document.search_form.displayFormat.selectedIndex = 0;                                   
    document.search_form.orderBy.selectedIndex = 0;                                      		
    document.search_form.location_comb.selectedIndex = 0;     
    document.search_form.gmd_comb.selectedIndex = 0;  	                                       		
    document.search_form.abstractDisp.checked=false;      
    document.search_form.groupDispl.checked=false; 		
  }
  setvalues();
  SetCookie(clearColonial_cookie, 'NO'); 
  return;    
}
function newSearch(){  
  document.search_form.reset();		  
}
function newSearchAdv(){  
  document.search_form.reset();		  
}
function validatePrompt(Ctrl, PromptStr) { 
  Ctrl.focus();
  alert(PromptStr);
  return false;
}
function document_onkeypress(){ 
  if (window.event.keyCode == 13){	
    event.cancelBubble;
    resetStartRecord();runSubmit();
    return false;
  }
}
if(IE) document.onkeypress = document_onkeypress; 

function getKeycode(e){  
  var NN4key = e.which
  if (NN4key == 13){			
    resetStartRecord();runSubmit();
  }  
}
if(Nav) document.onkeydown = getKeycode;
//if (Nav) document.captureEvents(Event.KEYDOWN);
function termslookup(object,type) {   
  var thesTerm = "";	
  var thesObject; //object
  thesObject = eval('document.search_form.' + object);
  thesTerm = thesObject.value;	
  window.open('theslook.jsp?scriptFile=addSearch.js&wordType=' + type + '&openerField=' + thesObject.name,  
  'thesource','scrollbars=yes,status=yes,resizable=yes,width=375,height=300,top=150,left=390');
}
