
// SEARCH BOX TABS START //

function changeTab ( sel, n ) {

  for ( i=1; i<=n; i++ ) {

    var tab = document.getElementById('stab-'+i);

    tab.className = i == sel ? "on" : "";

  }

  var q = document.forms['searchForm'].q;

  if ( q.value=="Search Products" || q.value=="Search Suppliers" || q.value=="" ) {

    q.style.color = '#606060';

    if ( sel == 1 ) { q.value="Search Suppliers"; }
    if ( sel == 2 ) { q.value="Search Products";  }

  }

  if ( sel == 1 ) {
    document.getElementById("sQuery").className = "text";
    document.getElementById("sCategory").style.display = "none";
  } else {
    document.getElementById("sQuery").className = "stext";
    document.getElementById("sCategory").style.display = "block";
  }

}

// SEARCH BOX TABS END //


// SEARCH SUGGESTIONS START //

var sgShow = "Y";

function SearchSuggest ( obj, stype ) { 

  var sDiv = document.all ? document.all["suggest"] : document.getElementById ? document.getElementById("suggest") : "";

  var sQuery = obj.value;

  var curleft = curtop = 0;

  if ( obj.offsetParent ) {

    curleft = obj.offsetLeft;
    curtop  = obj.offsetTop;

    while ( obj = obj.offsetParent ) {
      curleft += obj.offsetLeft;
      curtop  += obj.offsetTop;
    }

  }

  sDiv.style.left = curleft + "px";
  sDiv.style.top  = curtop + 24 + "px";

  if ( sQuery.length >= 3 ) {
    var sgURL = "/cgi-bin/ttw/sg.cgi?q=" + escape(sQuery) + "&stype=" + stype + "&show=" + sgShow;
    sgLoad('suggest',sgURL);
  } else {
    sDiv.style.display = "none";
  }

}

function HideSearchSuggest ( val ) {
  sgShow = val;
  SearchSuggest(document.searchForm.q);
}

function ClearSearch ( element ) {
  if ( element.value=="Search Products" || element.value=="Search Suppliers" || element.value=="Search Trade Shows" || element.value=="Search Videos" ){
    element.value = "";
  }
}

function ValidateSearch (form) {

  if ( form.q.value=="Search Products" || form.q.value=="Search Suppliers" || form.q.value=="Search Trade Shows" || form.q.value=="Search Videos" || form.q.value=="" ) {
    alert("Please enter your keywords");
    form.q.focus();
    return false;
  }
  return true;

}

function sgLoad (container, url) {
  var xmlHttp=GetXmlHttpObject();
  if (xmlHttp==null) { return; }
  xmlHttp.onreadystatechange = function () {
    if (xmlHttp.readyState==4) {
      document.getElementById(container).innerHTML=xmlHttp.responseText;
      if ( document.getElementById(container).innerHTML ) { 
        document.getElementById("suggest").style.display = "block";
      } else {
        document.getElementById("suggest").style.display = "none";
      }
    }
  }
  xmlHttp.open("GET",url,true);
  xmlHttp.send(null);
}

// SEARCH SUGGESTIONS END //


// MAX LENGTH START //

function MaxLength (obj,ml,id) {

  if ( obj.value.length > ml ) {
    obj.value = obj.value.substring(0,ml);
  }
  document.getElementById(id).innerHTML = ml - obj.value.length + " characters remaining";

}

// MAX LENGTH END //


// AJAX LOADER START //

function Load (container, url) {
  var xmlHttp=GetXmlHttpObject();
  if (xmlHttp==null) { return; }
  xmlHttp.onreadystatechange = function () {
    if (xmlHttp.readyState==4) {
      document.getElementById(container).innerHTML=xmlHttp.responseText;
    }
  }
  xmlHttp.open("GET",url,true);
  xmlHttp.send(null);
}

// AJAX LOADER END //


// XMLHTTP OBJECT START //

function GetXmlHttpObject() {
  var xmlHttp=null;
  try
    {
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
  return xmlHttp;
}

// XMLHTTP OBJECT END //


