var strSelectedTab = 'EDatabases';

function DBQuickSearch()
{
    var srchSelect = document.frmDatabases.qt;
    var srchType = srchSelect.options[srchSelect.selectedIndex].value;
    if (srchType == 7)
    { 
        document.frmDatabases.dbName.style.display = 'none';
        document.frmDatabases.CatID.style.display = 'inline';
        document.frmDatabases.dbName.value = '';
    }
    else
    {
        document.frmDatabases.dbName.style.display = 'inline';
        document.frmDatabases.CatID.style.display = 'none';
        document.frmDatabases.dbName.value = '';
    }
}

function BookQuickSearch()
{
 var srchSelect = document.frmBooks.bk;
    var srchType = srchSelect.options[srchSelect.selectedIndex].value;
    if (srchType == 9)
    { 
        document.frmBooks.SubjID.style.display = 'inline';
        document.frmBooks.BookName.style.display = 'none';
        document.frmBooks.BookName.value = '';
    }
    else
    {
        document.frmBooks.SubjID.style.display = 'none';
        document.frmBooks.BookName.style.display = 'inline';
        document.frmBooks.BookName.value = '';
    }
}

//////////////////////////
// Code to insert AND between Keywords
// Copyright Regents of the University of California 2004
// Modified for Columbia use June 2006

function OPACQuickSearch()
{
  var str1;

  // extract the index chosen by the user. if set to CMD (keyword)
  // insert AND in the search string, etc.

  var srchSelect = document.frmOPAC.code;
  var srchType = srchSelect.options[srchSelect.selectedIndex].value;

  //if keyword, fix the search arg(s)
  if( srchType == "CMD" )
  {
    str1 = document.frmOPAC.entry.value;

    // remove initial spaces
    str1 = str1.replace(/^\s+/, "");
    // rm any trailing spaces
    str1 = str1.replace(/\s+$/, "");
    // replace two or more spaces with single space
    str1 = str1.replace(/(\s){2,}/g, " ");
    // insert space(s) inside of any adjancent double quote delimiters (eg "term1""term2"; "term1"term2"term3")
    str1 = str1.replace(/\"\"/g, "\" \"");

    var qstate = 0;
    var pstring = "";
    var regx1 = /(.)/;
    var currentMatch;

    ///////////// top of loop ////////////////
    while( str1 )
    {
      // check for special code
      if( str1.search(/^100A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '100A ';}
      else if( str1.search(/^110A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '110A ';}
      else if( str1.search(/^111A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '111A ';}
      else if( str1.search(/^130A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '130A ';}
      else if( str1.search(/^210A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '210A ';}
      else if( str1.search(/^240A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '240A ';}
      else if( str1.search(/^245A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '245A ';}
      else if( str1.search(/^246A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '246A ';}
      else if( str1.search(/^260A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '260A ';}
      else if( str1.search(/^260B\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '260B ';}
      else if( str1.search(/^260C\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '260C ';}
      else if( str1.search(/^262K\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '262K ';}
      else if( str1.search(/^262L\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '262L ';}
      else if( str1.search(/^400N\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '400N ';}
      else if( str1.search(/^400T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '400T ';}
      else if( str1.search(/^410N\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '410N ';}
      else if( str1.search(/^410T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '410T ';}
      else if( str1.search(/^411N\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '411N ';}
      else if( str1.search(/^411T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '411T ';}
      else if( str1.search(/^440T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '440T ';}
      else if( str1.search(/^490T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '490T ';}
      else if( str1.search(/^600A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '600A ';}
      else if( str1.search(/^610A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '610A ';}
      else if( str1.search(/^611A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '611A ';}
      else if( str1.search(/^630A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '630A ';}
      else if( str1.search(/^650A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '650A ';}
      else if( str1.search(/^651A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '651A ';}
      else if( str1.search(/^653A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '653A ';}
      else if( str1.search(/^655A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '655A ';}
      else if( str1.search(/^690A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '690A ';}
      else if( str1.search(/^691A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '691A ';}
      else if( str1.search(/^700A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '700A ';}
      else if( str1.search(/^700T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '700T ';}
      else if( str1.search(/^710A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '710A ';}
      else if( str1.search(/^710T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '710T ';}
      else if( str1.search(/^711A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '711A ';}
      else if( str1.search(/^711T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '711T ';}
      else if( str1.search(/^730A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '730A ';}
      else if( str1.search(/^740A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '740A ';}
      else if( str1.search(/^760A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '760A ';}
      else if( str1.search(/^762A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '762A ';}
      else if( str1.search(/^765A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '765A ';}
      else if( str1.search(/^767A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '767A ';}
      else if( str1.search(/^770A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '770A ';}
      else if( str1.search(/^772A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '772A ';}
      else if( str1.search(/^773A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '773A ';}
      else if( str1.search(/^775A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '775A ';}
      else if( str1.search(/^776A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '776A ';}
      else if( str1.search(/^777A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '777A ';}
      else if( str1.search(/^780A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '780A ';}
      else if( str1.search(/^780T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '780T ';}
      else if( str1.search(/^785A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '785A ';}
      else if( str1.search(/^785T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '785T ';}
      else if( str1.search(/^787A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '787A ';}
      else if( str1.search(/^800N\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '800N ';}
      else if( str1.search(/^800T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '800T ';}
      else if( str1.search(/^810N\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '810N ';}
      else if( str1.search(/^810T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '810T ';}
      else if( str1.search(/^811N\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '811N ';}
      else if( str1.search(/^811T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '811T ';}
      else if( str1.search(/^830T\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '830T ';}
      else if( str1.search(/^948A\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + '948A ';}
      else if( str1.search(/^GKEY\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'GKEY ';}
      else if( str1.search(/^ISBN\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'ISBN ';}
      else if( str1.search(/^ISSN\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'ISSN ';}
      else if( str1.search(/^JKEY\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'JKEY ';}
      else if( str1.search(/^NKEY\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'NKEY ';}
      else if( str1.search(/^NOTE\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'NOTE ';}
      else if( str1.search(/^NPUB\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'NPUB ';}
      else if( str1.search(/^OPUS\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'OPUS ';}
      else if( str1.search(/^PUBL\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'PUBL ';}
      else if( str1.search(/^PUBP\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'PUBP ';}
      else if( str1.search(/^SERI\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'SERI ';}
      else if( str1.search(/^SKEY\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'SKEY ';}
      else if( str1.search(/^TKEY\s/i) == 0 ){
      str1 = str1.replace(/.{5}/, "");
      pstring = pstring + 'TKEY ';}
      
      // remove and store the first char of the string
      str1 = str1.replace(regx1, "");
      currentMatch = RegExp.$1;
      if( currentMatch == "\"" )
      {
        if( qstate == 0 )
        {
          qstate = 1;
        }
        else
        {
          qstate = 0;
        }
        pstring = pstring + currentMatch;
      }
      else
      {
        if( qstate == 0 )
        {
          if( currentMatch == " " )
          {
            // "0" is the postion in the string where "and " starts
            if( str1.search(/^and\s/i) == 0 || str1.search(/^and\"/i) == 0 )
            {
              str1 = str1.replace(/.{4}/, "");
              pstring = pstring + ' AND ';
            }
            else if( str1.search(/^or\s/i) == 0 || str1.search(/^or\s/i) == 0 )
            {
              str1 = str1.replace(/.{3}/, "");
              pstring = pstring + ' OR ';
            }
            else if( str1.search(/^not\s/i) == 0 || str1.search(/^not\s/i) == 0 )
            {
              str1 = str1.replace(/.{4}/, "");
              pstring = pstring + ' NOT ';
            }
            else
            {
              pstring = pstring + ' AND ';
            }
          }
          else
          {
            pstring = pstring + currentMatch;
          }
        }
        else
        {
          pstring = pstring + currentMatch;
        }
      }
    }
    // end of loop
    document.frmOPAC.entry.value = pstring;
  }
   var srchSel = document.frmOPAC.code;
   var srchTyp = srchSel.options[srchSel.selectedIndex].value;
 
  switch(srchTyp)
    {
  case 'TALL':
    {//style=tiau&infile=presearch.glue&searcher=tiau.glue
    document.frmOPAC.style.value = 'tiau';
    document.frmOPAC.infile.value = 'presearch.glue';
    document.frmOPAC.searcher.value = 'tiau.glue';
    break;
    }
  case 'CMD':
    {//style=kws2&infile=presearch.glue&searcher=kws2.glue&kopt1=TRUE&kopt2=TRUE
    document.frmOPAC.style.value = 'kws2';
    document.frmOPAC.infile.value = 'presearch.glue';
    document.frmOPAC.searcher.value = 'kws2.glue';
    break;
    }
  case 'NAME_':
    {//style=name&infile=presearch.glue&searcher=name.glue
     document.frmOPAC.style.value = 'name';
    document.frmOPAC.infile.value = 'presearch.glue';
    document.frmOPAC.searcher.value = 'name.glue';
    var strentry = document.frmOPAC.entry.value;
    var strarr = strentry.split(',')
    document.frmOPAC.entry.value = trim(strarr[0]);
    document.frmOPAC.entry2.value = trim(strarr[1]);
    break;
    }
  case 'JALL':
    {//style=pf_serials&infile=presearch.glue&searcher=tiau.glue
     document.frmOPAC.style.value = 'pf_serials';
    document.frmOPAC.infile.value = 'presearch.glue';
    document.frmOPAC.searcher.value = 'tiau.glue';
    break;
    }
  case 'SUBJ_':                                       
    {//style=sub&infile=presearch.glue&searcher=sub.glue
     document.frmOPAC.style.value = 'sub';
    document.frmOPAC.infile.value = 'presearch.glue';
    document.frmOPAC.searcher.value = 'sub.glue';
    break;
    }
  }
}
function trim(str)
{
    if(!str || typeof str != 'string')
        return null;

    return str.replace(/^[\s]+/,'').replace(/[\s]+$/,'').replace(/[\s]{2,}/,' ');
}
//////////////////////////////////
function PreLoadQuickSearchImages()
{
  if (!document.images)
  {
    return;
  }

  var strImagesPath = "/images/index/quickfind/";
  var aryImageFilenames = new Array(
                                    'tab_OPAC.gif',
                                    'tab_eDatabases.gif',
                                    'tab_Journals.gif',
                                    'tab_eBooks.gif'
                                   );
  var aryImages = new Array();
  var intImage = 0;

  while (intImage < aryImageFilenames.length)
  {
    aryImages[intImage] = new Image();
    aryImages[intImage].src = strImagesPath + aryImageFilenames[intImage];
    intImage++;
  }
}


////////////////////////////
function TabClick(strClickedTab)
{
  var divOPACControls = document.getElementById('divOPACControls');
  var diveDatabasesControls = document.getElementById('divEdatabasesControls');
  var divJournalsControls = document.getElementById('divJournalsControls');
  var diveBooksControls = document.getElementById('divEbooksControls');

  strSelectedTab = strClickedTab;
  divOPACControls.style.visibility = 'hidden';
  diveDatabasesControls.style.visibility = 'hidden';
  divJournalsControls.style.visibility = 'hidden';
  diveBooksControls.style.visibility = 'hidden';
  eval('div' + strClickedTab + 'Controls').style.visibility = 'visible';
  //document.images['imgQuickSearchTitle'].src = '/images/newsite/quickfind/quick_search.' + strClickedTab + '.gif';
  document.images['imgQuickSearch'].src='/images/index/quickfind/tab_' + strClickedTab + '.gif';
}


///////////////////////////////////////
function TabMouseOver(strMousedOverTab)
{

/*  if (strMousedOverTab != strSelectedTab.toLowerCase())
  {
    document.images['imgQuickSearch'].src='/images/newsite/quickfind/tab_' + strSelectedTab + '_' + strMousedOverTab  + '.gif';
  }
  */
}


//////////////////////
function TabMouseOut()
{
  /*document.images['imgQuickSearch'].src='/images/newsite/quickfind/tab_' + strSelectedTab + '.gif';*/
}