var NN = false;
var IE = false;
var deletecode = 127;
var deletekey = 46;
var backspacecode = 8;
var dash = 45;
var dot = 46;
var underscore = 95;
var colon = 58;
var space = 32;
if (navigator.appName == 'Netscape')
  NN = true;
else
  IE = true;
var version = parseInt(navigator.appVersion);

function getWindow(url) {
  newWindow = window.open("http://" + url);
}

function getKeyCode(evt) {
  if (NN)
    return evt.which;
  else
    return window.event.keyCode;
}

function getTargetObject(evt) {
  if (NN)
    return evt.target;
  else
    return window.event.srcElement;
}

function isValidCode(code, type) {
  if (type == 'c' || type == 'm' || type == 'e')
    return true;
  if (code == deletecode || code == backspacecode || code == 0 || code == deletekey)
    return true;
  if (type == 'n' && code <= 57 && code >= 48)
    return true;
  if (type == 'a' && (code <= 90 && code >= 48 || code == space || code <= 122 && code >= 97))     return true;
  if (type == 't' && (code >= 40 && code <= 41 || code == space || isValidCode(code, 'n')))
    return true;
  if (type == 'i' && (isValidCode(code, 'a') || isValidCode(code, 't')))
    return true;
  if (type == 'p' && (isValidCode(code, 'n') || code == 46))
    return true;
  if (type == 'd' && (isValidCode(code, 'n') || code == 45))
    return true;
  if (type == 'k' && (isValidCode(code, 'n') || code >= 65 && code <= 90 || code <= 122 && code >= 97 || code == dash))
    return true;
  if (type == 'f' && (isValidCode(code, 'k') || code == underscore || code == dot || code == colon))
    return true;
  if (type == 'z' && (code == colon || isValidCode(code, 'n')))
    return true;
  if (type == 'r' && (code >= 65 && code <= 90 || code <= 122 && code >= 97))
    return true;
  if (type == 'm' && (isValidCode(code, 'r') || code == space))
    return true;
  return false;
}

function checkcode(evt, type) {
  var code = getKeyCode(evt);
  if (!isValidCode(code, type)) {
    if (NN)
      return false;
    else {
      window.event.returnValue=false;
      return false;
    }
  }
  return true;
}

function isNumber(data) {
  var isnumber = /\D/;
  if (window.RegExp)
    return !isnumber.test(data);
}

function isEmpty(data) {
  var nonempty = new RegExp('.+');
  if (window.RegExp)
    return !nonempty.test(data);
}

function isEmail(data) {
  var isemail = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,6}|[0-9]{1,3})(\]?)$/;
  var notemail = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/;
  if (window.RegExp) {
    if (!notemail.test(data) && isemail.test(data))
      return true;
    else
      return false;
  }
}
function getNewChildWindow(url, name, width, height) {
  newWindow = window.open(url, name, 'dependent,width=' + width + ',height=' + height + ',scrollbars=yes,toolbar=no,location=no,menubar=no, statusbar=no,left=50,screenX=50,top=50,screenY=50');
}
function isDate(data) {
  var isdate = new RegExp('[0-9]{1,2}[-]{1}[0-9]{1,2}[-]{1}[0-9]{4}');
  if (!isdate.test(data))
    return false;
  var entries = data.split("-");
  var month = parseInt(entries[1], 10) - 1;
//  var date = new Date();
  var date = new Date(parseInt(entries[2], 10), month, parseInt(entries[0], 10));
//  date.setFullYear(parseInt(entries[2], 10));
//  date.setMonth(month);
//  date.setDate(parseInt(entries[0], 10));

  if (month != date.getMonth())
    return false;
  return date.getTime();
}
function isID(data) {
  var isid = new RegExp('[A-Z,a-z]{1}[0-9]{6}[(]{1}[0-9]{1}[)]{1}');
  if (window.RegExp)
    return isid.test(data);
}
function isTime(data) {
  var istime = new RegExp('[0-9]{1,2}[:]{1}[0-9]{1,2}[:]{1}[0-9]{1,2}');
  if (!istime.test(data))
    return false;
  var entries = data.split(":");
  var hh = parseInt(entries[0], 10);
  var mm = parseInt(entries[1], 10);
  var ss = parseInt(entries[2], 10);
  if (hh == 'NA' || mm == 'NA' || ss == 'NA' || hh >= 24 || mm > 60 || ss > 60)
    return false;
  return true;
}
function isBeforeNow(datevalue, timevalue) {
  datearray = datevalue.split("-");
  timearray = timevalue.split(":");
  newtime = new Date(datearray[2], datearray[1] - 1, datearray[0], timearray[0], timearray[1], timearray[2]);
  now = new Date();
  if (newtime < now)
    return false;
  else
    return true;
}
function buttonover(obj) {
  if (obj.className == 'button')
    obj.className = 'buttonhover';
  else
    obj.className = 'button20hover';
}
function buttonout(obj) {
  if (obj.className == 'buttonhover')
    obj.className = 'button';
  else
    obj.className = 'button20';
}
