function myXHReq() {
  try { return new ActiveXObject("Msxml2.XMLHTTP");    } catch(e) {}
  try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}
  try { return new XMLHttpRequest();                   } catch(e) {}
  $("response").innerHTML = "Your browser does not support XMLHttpRequest, please upgrade your browser";
  return null;
}

function $() {

    var elements = new Array();

    for (var i = 0; i < arguments.length; i++) {

      var element = arguments[i];

      if (typeof element == 'string') {
        if (document.getElementById) {
          element = document.getElementById(element);
        } else if (document.all) {
          element = document.all[element];
        }
      }

      elements.push(element);

    }

    if (arguments.length == 1 && elements.length > 0) {
      return elements[0];
    } else {
      return elements;
    }
}

var posx = 0;
var posy = 0;
function ump(e) {
        if (!e) var e = window.event;
        if (e.pageX || e.pageY)         {
                posx = e.pageX;
                posy = e.pageY;
        }
        else if (e.clientX || e.clientY)        {
                posx = e.clientX + document.body.scrollLeft
                        + document.documentElement.scrollLeft;
                posy = e.clientY + document.body.scrollTop
                        + document.documentElement.scrollTop;
        }
        // posx and posy contain the mouse position relative to the document
        // Do something with this information
	//alert("X: "+posx+" Y: "+posy);
}

function hdv(d) {
    if(d.length < 1) { return; }
    document.getElementById(d).style.display = "none";
}

function sdv(d) {
    if(d.length < 1) { return; }
    var dd = document.getElementById(d);
    dd.style.left = posx+15+"px";
    dd.style.top  = posy+15+"px";
    dd.style.display = "block";
}

function nfpsOkp(e,w) {
   if(e.keyCode==13){
      document.forms['fps'].submit();
   }
}

function nlSuOkp(e) {
   if(e.keyCode==13){ submitNsSu(); }
}

function cOucAllpat(n,s) {
  if(s.checked) { s.checked = false; }
  else { s.checked = true; }

  var l = n.length;
  for(x=0;x<document.fps.elements.length;x++) {
     var mye = document.fps.elements[x];

     if(mye.name.substring(0, l) == n) {
     if(mye.checked) {
        if(mye.disabled) { }
        else { mye.checked = false; }
     }
     else {
        if(mye.disabled) { }
        else { mye.checked = true; }
     }
     }
  }
}

function cOucAllgeneric(e,s) {
  if(s.checked) { s.checked = false; }
  else { s.checked = true; }

  for(x=0;x<e.length;x++) {
     if(e[x].checked) {
        if(e[x].disabled) { }
        else { e[x].checked = false; }
     }
     else {
        if(e[x].disabled) { }
        else { e[x].checked = true; }
     }
  }
}

function fpsShM() {
   $("fpsm").innerHTML = '<a href="#" onClick="fpsHdM()">Hide More</a></div>';
   $("fpsCM").style.display="block";
}

function fpsHdM() {
   $("fpsm").innerHTML = '<a href="#" onClick="fpsShM()">More &gt;&gt;&gt;</a></div>';
   $("fpsCM").style.display="none";
}



var nssureq = false;
function submitNsSu() {
  var url = "index.cgi";

  var params = "sn=nlsu&e="+encodeURI(document.getElementById("nlsuem").value);
  //alert("params: '"+params+"'");
  nssureq = myXHReq();
  nssureq.onreadystatechange = nsSuDivUpdate;
  nssureq.open("POST", url, true);
  nssureq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  nssureq.setRequestHeader("Content-length", params.length);
  nssureq.setRequestHeader("Connection", "close");
  nssureq.send(params);
}

function nsSuDivUpdate() {
   if(nssureq.readyState==4) {
      if(nssureq.status==200) {
         var res=nssureq.responseText;
         $("nlsudivres").innerHTML=res;
      }
      else {
         alert("Sorry! There was a problem signing you up, please try again later");
      }
   }
}



function submitFrontPageSearch(wlid, sn) {
   document.forms['fps'].submit();
}

function cOucAllpat(n,s) {
  if(s.checked) { s.checked = false; }
  else { s.checked = true; }

  var l = n.length;
  for(x=0;x<document.fps.elements.length;x++) {
     var mye = document.fps.elements[x];

     if(mye.name.substring(0, l) == n) {
     if(mye.checked) {
        if(mye.disabled) { }
        else { mye.checked = false; }
     }
     else {
        if(mye.disabled) { }
        else { mye.checked = true; }
     }
     }
  }
}

function hideCalSpecial() {
  $("calSpecial").style.visibility="hidden";
}
function loadCalSpecial(sn,scid,when) {
  var vars = {
    sn:     sn,
    scid:   scid,
    when:   when
  }

  var hStr = "";
  for( key in vars ) {
      var value = vars[key];
      hStr += '&' + key + '=' + value;
  }
  if (hStr.length > 0) { hStr = hStr.substring(1); }

  var url = "index.cgi";
  url += "?" + hStr;
  //alert("url: '"+url+"'");
  var req = myXHReq();
  req.open("GET", url, false);
  req.send(null);
  var serverResponse = req.responseText;
  $("calSpecial").innerHTML = serverResponse;
  $("calSpecial").style.visibility="visible";
}




