function SearchBoxForm_Validator(theForm)
{
submitonce(theForm);
  if ((theForm.SearchTerm.value.length < 3) || (theForm.SearchTerm.value == 'enter search'))
  {
    alert('Please enter at least 3 characters in search field.');
    theForm.SearchTerm.focus();
    submitenabled(theForm);
    return (false);
  }
  return (true);
}


function addToDelicious()
{
  window.open('http://del.icio.us/post?v=4&noui&jump=close&url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=700,height=400');
}

function findWistsImages(anchor) {
     var imgs;
     if (document.all) {
       imgs = document.all.tags('img');
     }
     else if (document.getElementsByTagName) {
       imgs = document.getElementsByTagName('img');
     }
     var image_ignore_classes = ['wistsignore'];
     var image_class_ignore_regex = new RegExp('\\s(' +  image_ignore_classes.join("|") + ')\\s', "i");
     
     var i = 0;         
     while ( image_class_ignore_regex.test(" " + imgs[i].className  + " ") && (i < imgs.length) ) { i++; }
     anchor.href = ( image_class_ignore_regex.test(" " + imgs[i].className + " ") ) ? anchor.href : anchor.href.replace(/(\&u\=)([^&]+)/, ("$1" + imgs[i].src));
}

function clearBox(box)
{
  box.value='';
}

function clearBox2(box, prompt)
{
  if (box.value == prompt)
    box.value='';
}

// =========================== AJAX FUNCTIONS ===================================
var objXMLHttp
var REFRESH = false;

function subscribe(box) {
  subscribe(box, 0);  
}

function subscribe(box, refresh) {
  subscribe(box, 0, refresh);  
}

function subscribe(box, refresh, custId) {
  var regEx = /^[\w\.\+-]{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,6}$/;
  if (!regEx.test(box.value)) {
    //document.getElementById('nlmsg').innerHTML = 'Invalid email';
    alert('Please enter valid email address.');
    box.focus();
    return;
  }

  objXMLHttp=createXmlHttpObject()
  
  if (objXMLHttp==null) {
    alert ('Your browser does not support AJAX.\nPlease email customer support to sign up.');
    return;
  }
  
  REFRESH = refresh;
  var url='subscribe.aspx?email=' + box.value + '&cid=' + custId + '&uid=' + Math.random(); // prevent caching
  objXMLHttp.onreadystatechange = stateChanged;
  objXMLHttp.open('GET',url,true); // GET method
  objXMLHttp.send(null); // always use null for GET method
}
  
function createXmlHttpObject() {
  var req = null;
  try {
    req = new XMLHttpRequest(); //ie7, ff, safari
  }
  catch (e) {
    try {
      req = new ActiveXObject("Msxml2.XMLHTTP"); //later ie
    }
    catch (e) {
      try {
        req = new ActiveXObject("Microsoft.XMLHTTP") // earlier ie
      }
      catch (e) {
        // could not create XMLHttpRequest object
        return false;
      }
    }
  }
  return req;
}

function stateChanged()
{
  if (objXMLHttp.readyState == 0)  {
    //document.getElementById("nlmsg").innerHTML = "Processing..."; //uninitialized
    //document.title = "Processing...";
  }
  else if(objXMLHttp.readyState == 1)  {
    //document.getElementById("nlmsg").innerHTML = "Processing..."; //loading
    //document.title = "Processing...";
  }
  else if(objXMLHttp.readyState == 2)  {
    //document.getElementById("nlmsg").innerHTML = "Processing..."; //loaded
    //document.title = "Processing...";
  }
  else if(objXMLHttp.readyState == 3)  {
    //document.getElementById("nlmsg").innerHTML = "Processing..."; //interactive
    //document.title = "Processing...";
  }
  else if (objXMLHttp.readyState == 4 || objXMLHttp.readyState == "complete") {
    //document.getElementById("nlmsg").innerHTML=objXMLHttp.responseText // completed
    //document.title = objXMLHttp.responseText;
    eval("alert('" + objXMLHttp.responseText + "')"); // completed
  if (REFRESH)
    window.location.reload(true);
  }
}

function popuptopicwh(title,topic,w,h,scrollbars)
{
  window.open('popup.aspx?title=' + title + '&topic=' + topic,'Popup' + topic,'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=' + scrollbars + ',resizable=no,copyhistory=no,width=' + w + ',height=' + h + ',left=0,top=0');
  return (true);
}

