<!--
function isFill(Field, FName)
{
 var Value = Field.value;
 var re = /\s*([A-Za-z]|\w)+/;
 if (Value.search(re)!=-1)
  return true
 else
  Field.focus();
  alert("Vakjes aangeduid met een * dienen verplicht te worden ingevuld! «"+FName+"»");
  return false; 
}
//------------------------------------------------------------------------------
function isIntNumber(Field)
{
 var Value = Field.value;
 var re = /^\d*$/;
 if (Value.search(re)!=-1 || Value=="")
  return true
 else
  Field.focus();
  alert("В поле должно быть целое число!");
  return false; 
}
//------------------------------------------------------------------------------
function isFloatNumber(Field)
{
 var Value = Field.value;
 var re = /^(\-|\+)?\d*(\d\.\d)?\d*$/;
 if (Value.search(re)!=-1 || Value=="")
  return true
 else
  Field.focus();
  alert("В поле должно быть действительное число,\nразделитель «.»!");
  return false; 
}
//------------------------------------------------------------------------------
function isNDigit(Field, N,Empty)
{
if (Empty)
var re = new RegExp("^(\\d{"+N+"})?$");  
else
var re = new RegExp("^\\d{"+N+"}$");  

if (Field.value.search(re)!=-1) return true;
Field.focus();
alert(N+" цифр должно быть в поле!");
return false;
}
//------------------------------------------------------------------------------
function isEMail(Field)
{
 var Value = Field.value;
 var re=/^(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+);?(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)*$/;
 if (Value.search(re)!=-1 || Value=="")
  return true
  Field.focus();
  alert("U hebt een verkeerd e-mail adres ingegeven!");
//  alert("Это поле должно содержать e-mail!");
  return false; 
}
//------------------------------------------------------------------------------
function isUrl(Field, FName)
{
 var Value = Field.value;
 var re=/^(http:\/\/)?(\w+(\.[\w%~&\?=-]+|\/[\w%~&\?=-]*)+)+\s*$/;
 //допускает пустое значение
 if (Value.search(re)!=-1)
  return true;

  Field.focus();
  alert("Неправильный  URL в «"+FName+"»");
  return false; 
}
//------------------------------------------------------------------------------
function isDate(Field){
var String = Field.value;
if (String == "0000-00-00" || String=="") return true;
var separator = '-'; 
var re = /^(19|20)?\d\d-\d?\d-\d?\d$/;	 //------- YYYY-MM-DD
var day, month, year;
if (String.search(re)!=-1){ 
  year = String.substr(0,String.indexOf(separator))*1;
  String =String.substr(String.indexOf(separator)+1,String.length-String.indexOf(separator))
  month = String.substr(0,String.indexOf(separator))*1;
  String =String.substr(String.indexOf(separator)+1,String.length-String.indexOf(separator))*1;
  day = String;
  String = year;
  //day =  String.substr(0,String.indexOf(separator))*1;
  //String =String.substr(String.indexOf(separator)+1,String.length-String.indexOf(separator))
  //month = String.substr(0,String.indexOf(separator))*1;
  //String =String.substr(String.indexOf(separator)+1,String.length-String.indexOf(separator))*1;

  if (day<1 || day>31) {alert('Неправильный день'); return false;}
  if (month<1 || month>12) {alert(unescape('Неправильный месяц')); return false;}
  if (String<100) 
        { String +=1900; if (String<1950) String +=100;}    

  if (day==31 && (month==2||month==4||month==6||month==9||month==11)) {alert("Такого дня нет в этом месяце"); return false;}
  if (day==30 && month==2) {alert("Слишком много для февраля"); return false;}
  if (day==29 && month==2 && String%4!=0) {alert("Этот год не высокосный"); return false;}   
  return true;
}
alert("Формат даты гггг-мм-дд");
return false;
}

function isDateTime(Field){
 var Value = Field.value;
 if (Value == "0000-00-00 00:00:00" || Value=="") return true;
 var error = 0;
 var re = /^(19|20)?\d\d-\d?\d-\d?\d\s\d\d:\d\d:\d\d$/;  //------- YYYY-MM-DD HH:MM:SS
 if (Value.search(re)!=-1){
  //parse
  i = 0; j =0; buffer =''; date=new Array(3); time = new Array(2);
  //get date by parts
  while (Value.charAt(i) != ' ' && i<Value.length){
  if (Value.charAt(i)=='-') {if (buffer.indexOf('-')>-1) date[j++]=buffer.substring(1,buffer.length); else date[j++] = buffer; buffer='';}
  buffer += Value.charAt(i);
  i++; 
  }  
  if (buffer.indexOf('-')>-1) date[j]=buffer.substring(1,buffer.length); else date[j] = buffer;
  i++; j = 0; buffer='';
  //get time by parts
  while (i<Value.length){
  if (Value.charAt(i)==':') {if (buffer.indexOf(':')>-1) time[j++]=buffer.substring(1,buffer.length); else time[j++] = buffer; buffer='';}
  buffer += Value.charAt(i);
  i++;
  }
  if (buffer.indexOf(':')>-1) time[j]=buffer.substring(1,buffer.length); else time[j] = buffer;
  //analize
  if (date[1]<1 || date[1]>12) error=1;
  if (date[2]<1 || date[2]>31) error=2;
  if (date[2]==31 && (date[1]==2||date[1]==4||date[1]==6||date[1]==9||date[1]==11)) error=3;
  if (date[2]==30 && date[1]==2) error=4;
  if (date[2]==29 && date[1]==2 && date[0]%4!=0) error=5;
  if (time[0]<0 || time[0]>23) error=6;
  if (time[1]<0 || time[1]>59) error=7;
  if (time[2]<0 || time[2]>59) error=8;
  if (!error)   return true;    
  }
  
  Field.focus();
  switch(error){
   case 1: alert("Wrong month!");break;
   case 2: alert("Wrong day!");break;
   case 3: alert("There are only 30 days in the selected month!");break;
   case 4: alert("There are only 29 days in the selected month!");break;
   case 5: alert("There are only 28 days in the selected month of the selected year!");break;
   case 6: alert("Hour should be a number between 00 and 23!");break;
   case 7: alert("Minutes should be a number between 00 and 59!");break;
   case 8: alert("Seconds should be a number between 00 and 59!");break;
   default:  alert("Формат даты гггг-мм-дд чч:мм:cc");
  }  
  return false;
}
//------------------------------------------------------------------------------
function GetDatePart(Value, Sep)
{
var DatArr = new Array(3);
for (i=0;i<3;i++) DatArr[i] = "";
var j=0;
  for (i=0;i<Value.length;i++)
   {if (Value.charAt(i)==Sep) j++;
    else DatArr[j]+=Value.charAt(i);}        
return DatArr;      
}
//------------------------------------------------------------------------------
function CreateDate(Day,Month,Year)
{
 var Test = new Date()
 Test.setDate(Day);
 Test.setMonth(Month-1);      
 Test.setYear(Year);      
 return Test;
}
//------------------------------------------------------------------------------
function isLong(inp, maxl){
  var inpval = inp.value;
  if (inpval.length > maxl) {
    alert('Слишком длинно! Max =  ' + maxl + '. Вы набрали ' + inpval.length);
    inp.focus();
    return true;
  }
  return false;
}
//------------------------------------------------------------------------------
function isPhone(Field, FName)
{
 var Value = Field.value;
 var re = /^(\(\d+\))?(\d+-?\d+)*$/;
 if (Value.search(re)!=-1)
  return true
 else
  Field.focus();
  alert("Поле «"+FName+"» должно содержать телефон");
  return false; 
}
//-->	


