﻿// ***************************************************************************************************
//											Search Functions
// ***************************************************************************************************
   var strSearchclear   = ""; 
   var strSearchdefault = "Search";
   var strSearchbad     = "Invalid Search"; 
   var Timers   = new Array() ;

function SearchTextTimer(SearchText  ,  SearchButton , Timer     ) 
 {
   Timers[  Timer  ]   =  setTimeout(  "  UpdateSearchText(     SearchText  ,  SearchButton )  "   ,  2000);     
 }


function SearchPhraseFilled(SearchText  ,  SearchButton  )
{ 
   // chesk for blank
   var strSearchPhrase = SearchText.value.replace(/ /g,'');  

   if(strSearchPhrase.length < 1) 
	{
      SearchButton.className = "searchBad";
      SearchText.style.color = "Red";
    }
   else
     {
      SearchButton.className =  "searchClear";
      SearchText.style.color = "#555";
     }
}  

function UpdateSearchText (SearchText , SearchButton , Timer  ,  state   )
{
     if (  Timers[  Timer ]  == null      )
        {
            Timers[  Timer   ]   = 0;
         }
       
    switch (state)
    {
      case 'clear':
      {
       clearTimeout(  Timers[ Timer  ]  );
       SearchText.value = strSearchclear;
       SearchText.style.color = "#555";
       break;
      }

     case 'error':
      {
       SearchText.value = strSearchbad;
       SearchText.style.color = "#555";
       break;
      }

     default:
      {
        SearchText.value = strSearchdefault;
        SearchText.style.color = "#bbb";
        SearchButton.className =  "searchClear";
       break;
      }
   }
}

function searchRequest( SearchText,  SearchButton ,  Timer , Form , Action )
{
    
    // blank check
   SearchPhraseFilled(SearchText,  SearchButton);

   // filter for error
   if (SearchButton.className != "searchClear" ||
       -1 != SearchText.value.indexOf(strSearchbad)  ||
       -1 != SearchText.value.indexOf(strSearchdefault)
      )
     {
      
       UpdateSearchText( SearchText , SearchButton ,  Timer  ,  'error' );
       SearchButton.className = "searchBad";
       SearchText.style.color = "Red";
       SearchTextTimer(   SearchText , SearchButton , Timer     ) ;
       return false;
   }
  
   // submit search
       Form.method = 'post';
       Form.action = Action   +  SearchText.value  ;
       Form.target = '_self';
       Form.submit()
      return true; 
}  
  
     