var d, dom, ie, ie4, ie5x, moz, mac, win, lin, old, ie5mac, ie5xwin, op;

d = document;
n = navigator;
na = n.appVersion;
nua = n.userAgent;
win = ( na.indexOf( 'Win' ) != -1 );
mac = ( na.indexOf( 'Mac' ) != -1 );
lin = ( nua.indexOf( 'Linux' ) != -1 );

if ( !d.layers ){
	dom = ( d.getElementById );
	op = ( nua.indexOf( 'Opera' ) != -1 );
	konq = ( nua.indexOf( 'Konqueror' ) != -1 );
	saf = ( nua.indexOf( 'Safari' ) != -1 );
	moz = ( nua.indexOf( 'Gecko' ) != -1 && !saf && !konq);
	ie = ( d.all && !op );
	ie4 = ( ie && !dom );

	/*
	ie5x tests only for functionality. ( dom||ie5x ) would be default settings. 
	Opera will register true in this test if set to identify as IE 5
	*/

	ie5x = ( d.all && dom );
	ie5mac = ( mac && ie5x );
	ie5xwin = ( win && ie5x );
}

function doLoad() {
  // does nothing
}

var firstEl;

function validateForm(frm) {
  errs = "";
  firstEl = null;
  els = frm.elements;
  for(i=0; i<els.length; i++) {
    if(els[i].id == "req")
      errs += checkVal(els[i]);
  }
  if(errs != "") {
    alert("Please make the following changes:\n\n" + errs);
    if(firstEl)
      firstEl.focus();
    return false;
  }
  return true;
}

function checkVal(el) {
  if(el) {
    if(((el.tagName == "INPUT" || el.tagName == "TEXTAREA") && el.value == "")
       || (el.tagName == "SELECT" && el.options[el.selectedIndex].value == "")) {
      if(firstEl == null)
        firstEl = el;
      return "- " + el.title + "\n";
    }
  }
  return "";
}

function toggleImg(img) {
  src = img.src;
  if(src.indexOf('_off') != -1)
    img.src = src.replace('_off', '_on');
  else if(src.indexOf('_on') != -1)
    img.src = src.replace('_on', '_off');
}

function preloadImg(img) {
  src = img.src;
  document.onImg = new Image();
  document.onImg.src = src.replace('_off', '_on');
}
function goTo(u) {
  window.location = u;
}

function openPopupWindow(url, width, height, scrolling, name) {
  if (!width) width = 400;
  if (!height) height = 300;
  if (!scrolling) scrolling = "no"; 
  if (!name) name = "win"+Math.round(Math.random()*1000); 
  
  features = "width="+width+","
           + "height="+height+","
           + "toolbar=no,"
           + "location=no,"
           + "status=no,"
           + "menubar=no,"
           + "scrollbars="+scrolling+","
           + "top=50,"//+(window.screen.height-height)/2+","
           + "left=50";//+(window.screen.width-width)/2;
  window.open(url,name,features);
}

function popup(url, width, height, scrolling, name) {
  if (!scrolling) scrolling = "yes"; 
  openPopupWindow(url, width, height, scrolling, name);
}

function enlargeImg(i) {
  return openPopupWindow('/popup.jsp?url='+i);
}

function openLegal() {
  openPopupWindow('/legal.jsp', 600, 400, 'yes', 'legalWin');
}

function _clear(el) {
  t = el.title;
  if(el.value == t)
    el.value = '';
}

function _blur(el) {
  t = el.title;
  if(el.value == '')
    el.value = t;
}

function _validate(frm) {
    n = frm.first_name;
    ln = frm.last_name;
    pn = frm.phone;
    eml = frm.email;
    at = eml.value.indexOf('@');
    if(n.value == n.title || n.value == '') {
      alert("Please enter your first name");
      n.focus();
      return false
    } else if(ln.value == ln.title || ln.value == '') {
        alert('Please enter your last name');
        ln.focus();
        return false;
    } else if(pn.value == pn.title || pn.value == '') {
        alert('Please enter your phone number');
        pn.focus();
        return false;
    } else if(pn.value.length < 10) {
        alert('Please enter a valid phone number including area code');
        pn.focus();
        return false;
    } else if(eml.value == eml.title || eml.value == '') {
      alert('Please enter email address');
      eml.focus();
      return false;
    } else if(at == -1 || eml.value.indexOf('.', at) <= at) {
      alert('Please enter a valid email address');
      eml.focus();
      return false;
    }
    return true;
  }
