

function highlightShown(it)
{
var activelink = document.getElementById(it);
var otherlinks = ['inst_link','pa_link','ra_link','li_link','pm_link','dataops_link','aad_link','ba_link','welcome_link'];
for (var i=0;i<otherlinks.length;i++)
{
if (activelink != document.getElementById(otherlinks[i]))
{
document.getElementById(otherlinks[i]).className="";
}
}
activelink.className = "current";
}


function showHide(d)
{
var onediv = document.getElementById(d);
var divs=['instjd','pajd','rajd','lijd','pmjd','dataopsjd','aadjd','bajd','welcome'];
for (var i=0;i<divs.length;i++)
{
if (onediv != document.getElementById(divs[i]))
{
document.getElementById(divs[i]).style.display='none';
}
}
onediv.style.display = 'block';
}


function showMe (it, box) { 
   var vis = (box.checked) ? "block" : "none"; 
   document.getElementById(it).style.display = vis;
 }
 
function showMe2 (it) {
   document.getElementById(it).style.display = "block";
 }

 

 
 
 
 
 
function toggleLayer( whichLayer )
{
  var elem, vis;
  if( document.getElementById ) // this is the way the standards work
    elem = document.getElementById( whichLayer );
  else if( document.all ) // this is the way old msie versions work
      elem = document.all[whichLayer];
  else if( document.layers ) // this is the way nn4 works
    elem = document.layers[whichLayer];
  
  vis = elem.style;
  // if the style.display value is blank we try to figure it out here
  if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined)
  
  vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none';
  vis.display = (vis.display==''||vis.display=='block')?'none':'block';
}


// form validation function //
function validate(form) {
var firstname = form.firstname.value;
var lastname = form.lastname.value;
var email = form.email.value;
var emailconfirm = form.emailconfirm.value;
var mobilephone = form.mobilephone.value;
var street = form.street.value;
var city = form.city.value;
var state = form.state.value;
var zip = form.zip.value;
var learnedabout = form.learnedabout.value;
var referrer = form.referrer.value;
var returning = radioB(form.returning);
var authorized = radioB(form.authorized);
var ofage = radioB(form.ofage);
var checks = radioB(form.checks);
var crimoffense = radioB(form.crimoffense);
var crimdesc = form.crimdesc.value;
var roleprog = radioB(form.roleprog);
var rolemgt = radioB(form.rolemgt);
var rolecorp = radioB(form.rolecorp);
var distemployee = radioB(form.distemployee);
var subwilling = radioB(form.subwilling);
var validdl = radioB(form.validdl);
var caraccess = radioB(form.caraccess);
var internet = radioB(form.internet);



  var nameRegex = /^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$/;
  var emailRegex = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
  var phoneRegex = /^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-9]{7})$/;
  var zipRegex = /(^\d{5}$)|(^\d{5}-\d{4}$)/;

  	
	if(roleprog == null && rolemgt == null && rolecorp == null) {
	inlineMsg('step1','Please select a position.',5);
	return false;
	}
	
	if(firstname == "") {
	inlineMsg('firstname','Please enter your first name.',5);
	return false;
	}
	
	if(!firstname.match(nameRegex)) {
	inlineMsg('firstname','You have entered an invalid first name.',5);
	return false;
	}
	
	if(lastname == "") {
	inlineMsg('lastname','Please enter your last name.',5);
	return false;
	}
	
	if(!lastname.match(nameRegex)) {
	inlineMsg('lastname','You have entered an invalid last name.',5);
	return false;
	}
	
	if(email == "") {
	inlineMsg('email','Please enter your email.',5);
	return false;
	}
	
	if(!email.match(emailRegex)) {
	inlineMsg('email','<strong>Error</strong><br/>You have entered an invalid email.',5);
	return false;
	}
	
	if(emailconfirm == "") {
	inlineMsg('emailconfirm','Please confirm your email.',5);
	return false;
	}
	
	if(!emailconfirm.match(emailRegex)) {
	inlineMsg('emailconfirm','<strong>Error</strong><br>You have entered an invalid email.',5);
	return false;
	}
	
	if(!(emailconfirm == email)) {
	inlineMsg('emailconfirm','<strong>Error</strong><br/>Your email does not match.',5);
	return false;
	}
	if(mobilephone == "") {
	inlineMsg('mobilephone','Please provide your mobile phone number.',5);
	return false;
	}
	
	if(!mobilephone.match(phoneRegex)) {
	inlineMsg('mobilephone','<strong>Error</strong><br>You have entered an invalid phone number.',5);
	return false;
	}
	
	if(street == "") {
	inlineMsg('street','Please enter your street address.',5);
	return false;
	}
	
	if(city == "") {
	inlineMsg('city','Please enter your city.',5);
	return false;
	}
	
	if(state == "") {
	inlineMsg('state','Please slect your state.',5);
	return false;
	}

	if(zip == "") {
	inlineMsg('zip','Please enter your zipcode.',5);
	return false;
	}
	
	if(!zip.match(zipRegex)) {
	inlineMsg('zip','<strong>Error</strong><br>You have entered an invalid zipcode.',5);
	return false;
	}
	
	if(learnedabout == "") {
	inlineMsg('learnedabout','Please tell us how you heard about us.',5);
	return false;
	}
	
	if(learnedabout == "Referral" && referrer == "") {
	inlineMsg('referrer','Please indicate who referred you, using first and last names.',5);
	return false;
	}
	
	if(state == "") {
	inlineMsg('state','Please select your state.',5);
	return false;
	}
		
	if(returning == null) {
	inlineMsg('returning','Please answer this question.',2);
	return false;
	}

	if(authorized == null) {
	inlineMsg('authorized','Please answer this question.',2);
	return false;
	}
	
	if(ofage == null) {
	inlineMsg('ofage','Please answer this question.',2);
	return false;
	}
	
	if(checks == null) {
	inlineMsg('checks','Please answer this question.',2);
	return false;
	}

	if(crimoffense == null) {
	inlineMsg('crimoffense','Please answer this question.',2);
	return false;
	}

	if(crimoffense == "yes" && crimdesc == "") {
	inlineMsg('crimdesc','Please provide details.',5);
	return false;
	}
	
	if(distemployee == null ) {
	inlineMsg('distemployee','Please answer this question.',2);
	return false;
	}
	
	if(subwilling == null && !(roleprog == null)) {
	inlineMsg('subwilling','Please answer this question.',2);
	return false;
	}

	if(validdl == null && !(rolemgt == null)) {
	inlineMsg('validdl','Please answer this question.',2);
	return false;
	}
	
	if(caraccess == null && !(rolemgt == null)) {
	inlineMsg('caraccess','Please answer this question.',2);
	return false;
	}
	
	if(internet == null && !(rolemgt == null)) {
	inlineMsg('internet','Please answer this question.',2);
	return false;
	}
	
}



// START OF MESSAGE SCRIPT //

var MSGTIMER = 20;
var MSGSPEED = 5;
var MSGOFFSET = 3;
var MSGHIDE = 3;

// build out the divs, set attributes and call the fade function //
function inlineMsg(target,string,autohide) {
  var msg;
  var msgcontent;
  if(!document.getElementById('msg')) {
    msg = document.createElement('div');
    msg.id = 'msg';
    msgcontent = document.createElement('div');
    msgcontent.id = 'msgcontent';
    document.body.appendChild(msg);
    msg.appendChild(msgcontent);
    msg.style.filter = 'alpha(opacity=0)';
    msg.style.opacity = 0;
    msg.alpha = 0;
  } else {
    msg = document.getElementById('msg');
    msgcontent = document.getElementById('msgcontent');
  }
  msgcontent.innerHTML = string;
  msg.style.display = 'block';
  var msgheight = msg.offsetHeight;
  var targetdiv = document.getElementById(target);
  targetdiv.focus();
  var targetheight = targetdiv.offsetHeight;
  var targetwidth = targetdiv.offsetWidth;
  var topposition = topPosition(targetdiv) - ((msgheight - targetheight) / 2);
  var leftposition = leftPosition(targetdiv) + targetwidth + MSGOFFSET;
  msg.style.top = topposition + 'px';
  msg.style.left = leftposition + 'px';
  clearInterval(msg.timer);
  msg.timer = setInterval("fadeMsg(1)", MSGTIMER);
  if(!autohide) {
    autohide = MSGHIDE;  
  }
  window.setTimeout("hideMsg()", (autohide * 1000));
}

// hide the form alert //
function hideMsg(msg) {
  var msg = document.getElementById('msg');
  if(!msg.timer) {
    msg.timer = setInterval("fadeMsg(0)", MSGTIMER);
  }
}

// face the message box //
function fadeMsg(flag) {
  if(flag == null) {
    flag = 1;
  }
  var msg = document.getElementById('msg');
  var value;
  if(flag == 1) {
    value = msg.alpha + MSGSPEED;
  } else {
    value = msg.alpha - MSGSPEED;
  }
  msg.alpha = value;
  msg.style.opacity = (value / 100);
  msg.style.filter = 'alpha(opacity=' + value + ')';
  if(value >= 99) {
    clearInterval(msg.timer);
    msg.timer = null;
  } else if(value <= 1) {
    msg.style.display = "none";
    clearInterval(msg.timer);
  }
}

// calculate the position of the element in relation to the left of the browser //
function leftPosition(target) {
  var left = 0;
  if(target.offsetParent) {
    while(1) {
      left += target.offsetLeft;
      if(!target.offsetParent) {
        break;
      }
      target = target.offsetParent;
    }
  } else if(target.x) {
    left += target.x;
  }
  return left;
}

// calculate the position of the element in relation to the top of the browser window //
function topPosition(target) {
  var top = 0;
  if(target.offsetParent) {
    while(1) {
      top += target.offsetTop;
      if(!target.offsetParent) {
        break;
      }
      target = target.offsetParent;
    }
  } else if(target.y) {
    top += target.y;
  }
  return top;
}

// preload the arrow //
if(document.images) {
  arrow = new Image(7,80); 
  arrow.src = "images/msg_arrow.gif"; 
}

// function for radio button validation //
function radioB(btn) {
var cnt = -1;
for (var i=btn.length-1; i > -1; i--) {
if (btn[i].checked) {cnt = i; i = -1;}
}
if (cnt > -1) return btn[cnt].value;
else return null;
}

// Function to require a checkbox to be checked
function checkB(box) {
if (box.checked) return box.value;
else return null;
} 
