<!--
//browser detection
var strUserAgent = navigator.userAgent.toLowerCase();
var isIE = strUserAgent.indexOf("msie") > -1;
var isNS6 = strUserAgent.indexOf("netscape6") > -1;
var isNS4 = !isIE && !isNS6  && parseFloat(navigator.appVersion) < 5;
 //regular expressions
var reValidChars = /\d/;
var reValidString = /^\d*|\)|\(|\-$/;
var reKeyboardChars = /[\x00\x03\x08\x0D\x16\x18\x1A]/;
var reClipboardChars = /[cvxz]/i;

function maskKeyPress(objEvent) {
  var iKeyCode, strKey, objInput;
  if (isIE) {
    iKeyCode = objEvent.keyCode;
    objInput = objEvent.srcElement;
  } else {
    iKeyCode = objEvent.which;
    objInput = objEvent.target;
  }
  strKey = String.fromCharCode(iKeyCode);
  if (isValid(objInput.value)) {
    objInput.validValue = objInput.value;
    if (!reValidChars.test(strKey) && !reKeyboardChars.test(strKey) && !checkClipboardCode(objEvent, strKey)) {
     //alert("Invalid Character Detected!\nKeyCode = " + iKeyCode + "\nCharacter =" + strKey);
      return false;
    }
  } else {
    alert("Invalid Data");
    objInput.value = objInput.validValue;
    return false;
  }
}

function showOther(divID,rdoID){
	var rdo = document.getElementById(rdoID);
	var div = document.getElementById(divID);
	if(rdo.checked == true){
	  div.style.visibility = 'visible';
		div.style.display = 'block';
	}else{
		div.style.visibility = 'hidden';
		div.style.display = 'none';
	}
}

function isValid(strValue) {
  return reValidString.test(strValue) || strValue.length == 0;
}

function checkClipboardCode(objEvent, strKey) {
  if (isNS6)
     return objEvent.ctrlKey && reClipboardChars.test(strKey);
  else
     return false;
}
function getSelectionStart(o) {
  if (o.createTextRange) {
    var r = document.selection.createRange().duplicate()
    r.moveEnd('character', o.value.length)
    if (r.text == '') return o.value.length
    return o.value.lastIndexOf(r.text)
  } else return o.selectionStart
}
function PhoneOnFocus(TBID){
  var boxA = document.getElementById(TBID);
  var num = boxA.value.replace(/-/,"");
  num = num.replace(/\(/,"");
  num = num.replace(/\)/,"");
  boxA.value = num;
  boxA.setAttribute('maxlength', 10);
}
function PhoneOnBlur(TBID,errorID){
  var TB = document.getElementById(TBID);
  var err = document.getElementById(errorID);
  TB.setAttribute('maxlength', 13);
  if(TB.value.length<10 && TB.value.length!=0){
    if(TB.value.length>3 && TB.value.length<7){
      TB.value = '(' + TB.value.substring(0,3) + ')' + TB.value.substring(3,6);
    }else if(TB.value.length>6){
      TB.value = '(' + TB.value.substring(0,3) + ')' + TB.value.substring(3,6) + '-' + TB.value.substring(6,TB.value.length);
    }
    err.innerHTML='Please enter number in the correct form. Ex.(555)555-5555';
  }else{
    if(TB.value.length!=0){
      TB.value = '(' + TB.value.substring(0,3) + ')' + TB.value.substring(3,6) + '-' + TB.value.substring(6,10);
      err.innerHTML='';
    }else{
      err.innerHTML='';
    }
  }
}
function VPhoneOnBlur(TBID,errorID){
  var TB = document.getElementById(TBID);
  var err = document.getElementById(errorID);
  TB.setAttribute('maxlength', 13);
  if(TB.value.length<10 && TB.value.length!=0){
    if(TB.value.length>3 && TB.value.length<7){
      TB.value = '(' + TB.value.substring(0,3) + ')' + TB.value.substring(3,6);
    }else if(TB.value.length>6){
      TB.value = '(' + TB.value.substring(0,3) + ')' + TB.value.substring(3,6) + '-' + TB.value.substring(6,TB.value.length);
    }
    err.innerHTML='Please enter number in the correct form. Ex.(555)555-5555';
  }else{
    if(TB.value.length!=0){
      TB.value = '(' + TB.value.substring(0,3) + ')' + TB.value.substring(3,6) + '-' + TB.value.substring(6,10);
      err.innerHTML='';
    }else{
      err.innerHTML='Field is required.';
    }
  }
}

function PassOnBlur(ID,ID2,errID,errID2){
  var pass = document.getElementById(ID);
  var pass2 = document.getElementById(ID2);
  var err = document.getElementById(errID);
  var err2 = document.getElementById(errID2);
  if(pass.value.length>15 || pass.value.length<5){
    err.innerHTML='Password must be 5-15 characers long.';
  }else{
    if(pass2.value!="" && pass2.value==pass.value){
      err.innerHTML='';
      err2.innerHTML='';
    }else{
      if(pass2.value!=""){
        err.innerHTML='Passwords do not match.';
        err2.innerHTML='Passwords do not match.';
      }else{
        err.innerHTML='';
      }
    }
  }
}
function SelectOnBlur(ID,defaultQ,errID,errMSG){
  var sel = document.getElementById(ID);
  var err = document.getElementById(errID);
  if(sel.value.toLowerCase()==defaultQ.toLowerCase()){
    err.innerHTML= errMSG.toString();
  }else{
    err.innerHTML='';
  }
}
function HasValueOnBlur(ID,errID){
  var box = document.getElementById(ID);
  var err = document.getElementById(errID);
  if(box.value==''){
    err.innerHTML='Field is required.';
  }else{
    err.innerHTML='';
  }
}
function Zip(ID,errID){
  var zip = document.getElementById(ID);
  var err = document.getElementById(errID);
  zip.value = zip.value.toUpperCase();
  var check = /^\d{5}([\-]\d{4})?$|^[A-Z]\d[A-Z] \d[A-Z]\d/;
  if(check.test(zip.value)){
    err.innerHTML='';
  }else{
    err.innerHTML='Zip entered incorrectly.<br /> Ex. 22345, 22345-2234, or G3H 6A3';
  }
}
function SDNameOnFocus(ID){
  var SDN = document.getElementById(ID);
  if(SDN.value=='Name'){
    SDN.value = '';
    SDN.style.color = '#000000';
  }else{
    // Leave what is there
    SDN.style.color = '#000000';
  }
}
function SDNumberOnFocus(ID){
  var SDN = document.getElementById(ID);
  var num = SDN.value.replace(/-/,"");
  num = num.replace(/\(/,"");
  num = num.replace(/\)/,"");
  SDN.value = num;
  SDN.setAttribute('maxlength', 10);
  if(SDN.value=='Number'){
    SDN.value = '';
    SDN.style.color = '#000000';
  }else{
    // Leave what is there
    SDN.style.color = '#000000';
  }
}
function SDNameOnBlur(ID){
  var SDN = document.getElementById(ID);
  if(SDN.value==''){
    SDN.style.color = '#bbbbbb';
    SDN.value = 'Name';
  }else{
    // Leave what is there
  }
}
function SDNumberOnBlur(ID){
  var SDN = document.getElementById(ID);
  if(SDN.value==''){
    SDN.style.color = '#bbbbbb';
    SDN.value = 'Number';
  }else{
    // Leave what is there
  }
}
function IPOnBlur(ID,errID){
  var err = document.getElementById(errID);
  if(IP_DNS_Check(ID)){
    err.innerHTML='';
  }else{
    err.innerHTML='IP or DNS entered incorrectly.';
  }
}
function IP_DNS_Check(ID){
  var ip = document.getElementById(ID);
  var re = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;
  var check = /^([a-z0-9]([-a-z0-9]*[a-z0-9])?\.)+((a[cdefgilmnoqrstuwxz]|aero|arpa)|(b[abdefghijmnorstvwyz]|biz)|(c[acdfghiklmnorsuvxyz]|cat|com|coop)|d[ejkmoz]|(e[ceghrstu]|edu)|f[ijkmor]|(g[abdefghilmnpqrstuwy]|gov)|h[kmnrtu]|(i[delmnoqrst]|info|int)|(j[emop]|jobs)|k[eghimnprwyz]|l[abcikrstuvy]|(m[acdghklmnopqrstuvwxyz]|mil|mobi|museum)|(n[acefgilopruz]|name|net)|(om|org)|(p[aefghklmnrstwy]|pro)|qa|r[eouw]|s[abcdeghijklmnortvyz]|(t[cdfghjklmnoprtvwz]|travel)|u[agkmsyz]|v[aceginu]|w[fs]|y[etu]|z[amw])$/i;
  if(check.test(ip.value)){
    return true;
  }else if(re.test(ip.value)){
      var parts = ip.value.split(".");
      if (parseInt(parseFloat(parts[0])) == 0) {
        return false;
      }
      for (var i=0; i<parts.length; i++) {
         if (parseInt(parseFloat(parts[i])) > 255) { 
           return false;
         }
      }
      return true;
  }else{
    if(ip.value==''){
      return true;
    }else{
      return false;
    }
  }
}
function EmailOnBlur(ID,ID2,errID,errID2){
  var em = document.getElementById(ID);
  var err = document.getElementById(errID);
  var em2 = document.getElementById(ID2);
  var err2 = document.getElementById(errID2);
  var check = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
  if(check.test(em.value.toLowerCase())){
    if(em2.value!="" && em2.value.toLowerCase()==em.value.toLowerCase()){
      err.innerHTML='';
      err2.innerHTML='';
    }else{
      if(em2.value!=""){
        err.innerHTML='Email addresses do not match.';
        err2.innerHTML='Email addresses do not match.';
      }else{
        err.innerHTML='';
        err2.innerHTML='';
      }
    }
  }else{
    err.innerHTML='Email address incorrect. {name}@{host}.{com/org/etc.}';
  }
}
function PagerOnBlur(ID,errID){
  var em = document.getElementById(ID);
  var err = document.getElementById(errID);
  var check = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
  if(em.value!=''){
    if(check.test(em.value.toLowerCase())){
      err.innerHTML='';
    }else{
      err.innerHTML='Pager address incorrect. {name}@{host}.{com/org/etc.}';
    }
  }else{
    //Pager is not required
    err.innerHTML='';
  }
}
function displayCount(TB, lbl){
  var iChars = "\'\"\\";
  var TBMSG = document.getElementById(TB);
  var VAL = document.getElementById(TB).value;
  var TBLength = TBMSG.value.length;
  var lblDisplayCount = document.getElementById(lbl);
  for (var i=0; i < TBMSG.value.length; i++) {
    if (iChars.indexOf(VAL.charAt(i)) == -1) {
      // do nothing
    }else{
      TBLength++;
    }
  }
  if(TBLength < 41){
    lblDisplayCount.innerHTML = TBLength;
  }else{
    lblDisplayCount.innerHTML = '<span style="color: #f00;">' + TBLength + '</span>';
  }
}
function displayCountText(TB, lbl){
  var iChars = "\'\"\\";
  var TBMSG = document.getElementById(TB);
  var VAL = document.getElementById(TB).value;
  var TBLength = TBMSG.value.length;
  var lblDisplayCount = document.getElementById(lbl);
  for (var i=0; i < TBMSG.value.length; i++) {
    if (iChars.indexOf(VAL.charAt(i)) == -1) {
      // do nothing
    }else{
      TBLength++;
    }
  }
  if(TBLength < 201){
    lblDisplayCount.innerHTML = TBLength;
  }else{
    lblDisplayCount.innerHTML = '<span style="color: #f00;">' + TBLength + '</span>';
  }
}
function IP_DNS_PN_EXT_Check(ID){
  var ip = document.getElementById(ID);
  var re = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/;
  var check = /^([a-z0-9]([-a-z0-9]*[a-z0-9])?\.)+((a[cdefgilmnoqrstuwxz]|aero|arpa)|(b[abdefghijmnorstvwyz]|biz)|(c[acdfghiklmnorsuvxyz]|cat|com|coop)|d[ejkmoz]|(e[ceghrstu]|edu)|f[ijkmor]|(g[abdefghilmnpqrstuwy]|gov)|h[kmnrtu]|(i[delmnoqrst]|info|int)|(j[emop]|jobs)|k[eghimnprwyz]|l[abcikrstuvy]|(m[acdghklmnopqrstuvwxyz]|mil|mobi|museum)|(n[acefgilopruz]|name|net)|(om|org)|(p[aefghklmnrstwy]|pro)|qa|r[eouw]|s[abcdeghijklmnortvyz]|(t[cdfghjklmnoprtvwz]|travel)|u[agkmsyz]|v[aceginu]|w[fs]|y[etu]|z[amw])$/i;
  if(check.test(ip.value)){
    return true;
  }else if(re.test(ip.value)){
      var parts = ip.value.split(".");
      if (parseInt(parseFloat(parts[0])) == 0) {
        return false;
      }
      for (var i=0; i<parts.length; i++) {
         if (parseInt(parseFloat(parts[i])) > 255) { 
           return false;
         }
      }
      return true;
  }else{
    if(ip.value==''){
      return true;
    }else{
      return false;
    }
  }
}
function IP_DNS_PN_EXT_OnBlur(ID){
  var SDN = document.getElementById(ID);
  if(SDN.value==''){
    SDN.style.color = '#bbbbbb';
    SDN.value = 'IP  URL  Phone No.  Hamilton Relay Ext.';
  }else{
    // Leave what is there
  }
}
function IP_DNS_PN_EXT_OnFocus(ID){
  var SDN = document.getElementById(ID);
  if(SDN.value=='IP  URL  Phone No.  Hamilton Relay Ext.'){
    SDN.value = '';
    SDN.style.color = '#000000';
  }else{
    // Leave what is there
    SDN.style.color = '#000000';
  }
}
function DelExt(which){
	document.getElementById('txt' + which + 'VPN').value = '';
	document.getElementById('txt' + which + 'IP').value = '';
	document.getElementById('hidden' + which + 'Ext').value = 'delete';
	document.getElementById('div' + which + 'Ext').style.visibility = 'hidden';
	document.getElementById('div' + which + 'Ext').style.display='none';
}
//-->
