// JavaScript Document

// <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">

var magic_STRING = "~voodoo!character@sequence#";

function valDate() {
  var x;
  var y1 = new String, y2 = new String;
  var fDate = new Date;
  var fRE = /(\d{1,2})\.(\d{1,2})\.(\d{4})/;
  var fRE1 = /0(\d)\.(\d{1,2})\.(\d{4})/;
  var fRE2 = /(\d{1,2})\.0(\d)\.(\d{4})/;
  
  for (var i = 0; i < arguments.length; i++) {
    x = eval("f." + arguments[i]);
    y1 = x.value;
    y1.match(fRE);
    t1 = Number(RegExp.$1); t2 = Number(RegExp.$2) - 1; t3 = Number(RegExp.$3);
    var fDate = new Date(t3, t2, t1);
    y1 = y1.replace(fRE1, "$1.$2.$3"); y1 = y1.replace(fRE2, "$1.$2.$3");
    y2 = fDate.getDate() + "." + (fDate.getMonth() + 1) + "." + fDate.getFullYear();
    if (y1 != y2) {
      alert('pls enter a date (dd.mm.yyyy) !');
      x.focus();
      return false;
    }
  }
  return true;
}

function valFDate(fForm) {
  var x;
  var y1 = new String, y2 = new String;
  var fDate = new Date;
  var fRE = /(\d{1,2})\.(\d{1,2})\.(\d{4})/;
  var fRE1 = /0(\d)\.(\d{1,2})\.(\d{4})/;
  var fRE2 = /(\d{1,2})\.0(\d)\.(\d{4})/;
  
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y1 = x.value;
    y1.match(fRE);
    t1 = Number(RegExp.$1); t2 = Number(RegExp.$2) - 1; t3 = Number(RegExp.$3);
    var fDate = new Date(t3, t2, t1);
    y1 = y1.replace(fRE1, "$1.$2.$3"); y1 = y1.replace(fRE2, "$1.$2.$3");
    y2 = fDate.getDate() + "." + (fDate.getMonth() + 1) + "." + fDate.getFullYear();
    if (y1 != y2) {
      alert('pls enter a date (dd.mm.yyyy) !');
      x.focus();
      return false;
    }
  }
  return true;
}

function valEmpty () {
  var x;
  for (var i = 0; i < arguments.length; i++) {
    x = eval("f." + arguments[i]);
    if (x.value == "") {
      alert("pls enter/select a value!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valFEmpty (fForm) {
  var x;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i])
    if (x.value == "") {
      alert("pls enter/select a value!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valCompare (f1, f2) {
  var x1 = eval("f." + f1); var x2 = eval("f." + f2);
  if (x1.value != x2.value) {
    alert("values must be the same!");
    x1.focus();
    return false;
  }
  return true;
}

function valFCompare (fForm, f1, f2) {
  var x1 = eval(fForm.name + "." + f1); var x2 = eval(fForm.name + "." + f2);
  if (x1.value != x2.value) {
    alert("values must be the same!");
    x1.focus();
    return false;
  }
  return true;
}

function valFNum (fForm) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y))) {
      alert("pls enter/select a number!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valNumPos () {
  var x;
  var y = new String;
  for (var i = 0; i < arguments.length; i++) {
    x = eval("f." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y <= 0))) {
      alert("pls enter/select a positive number!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valFNumPos (fForm) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y <= 0))) {
      alert("pls enter/select a positive number!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valFNumPos0 (fForm) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y < 0))) {
      alert("pls enter/select a non-negative number!");
      x.focus();
      return false;
    }
  }
  return true;
}


function valFNumInt (fForm) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (Math.floor(y) != y))) {
      alert("pls enter/select an integer number!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valFNumIntPos (fForm) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y <= 0) || (Math.floor(y) != y))) {
      alert("pls enter/select an integer positive number!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valNumIntPos () {
  var x;
  var y = new String;
  for (var i = 0; i < arguments.length; i++) {
    x = eval("f." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y <= 0) || (Math.floor(y) != y))) {
      alert("pls enter/select an integer positive number!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valNumIntPosMax (fMax) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval("f." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y <= 0) || (Math.floor(y) != y)) || (y > fMax)) {
      alert("pls enter/select an integer positive number <= " + fMax + "!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valFNumIntPosMax (fMax, fForm) {
  var x;
  var y = new String;
  for (var i = 2; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y <= 0) || (Math.floor(y) != y)) || (y > fMax)) {
      alert("pls enter/select an integer positive number <= " + fMax + "!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valFNumIntPos0 (fForm) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    y = y.replace(/\,/g, ".");
    if (y && (isNaN(y) || (y < 0) || (Math.floor(y) != y))) {
      alert("pls enter/select an integer non-negative number!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valEMail(fForm) {
  var x;
  var y = new String;
  for (var i = 0; i < arguments.length; i++) {
    x = eval("f." + arguments[i]);
    y = x.value;
    if (y && (y.replace(/([\w-._]+@[\w-.]+)/g, magic_STRING + "$1" + magic_STRING) != magic_STRING + y + magic_STRING)) {
      alert("pls enter/select a valid e-mail!");
      x.focus();
      return false;
    }
  }
  return true;
}

function valFEMail(fForm) {
  var x;
  var y = new String;
  for (var i = 1; i < arguments.length; i++) {
    x = eval(fForm.name + "." + arguments[i]);
    y = x.value;
    if (y && (y.replace(/([\w-._]+@[\w-.]+)/g, magic_STRING + "$1" + magic_STRING) != magic_STRING + y + magic_STRING)) {
      alert("pls enter/select a valid e-mail!");
      x.focus();
      return false;
    }
  }
  return true;
}