
IE = (document.all) ? 1: 0;

function openHelp (helpElem) 
{
  if (IE) 
  {
    document.all(helpElem).style.visibility = 'visible';
    document.all(helpElem).style.top = event.clientY + document.body.scrollTop + 10;
    document.all(helpElem).style.left = event.clientX - 200; //200 is width of helpElem
  }
  else 
  {
    //document.layers[helpElem].visibility = 'visible';
  }
}

function closeHelp (helpElem) 
{
  //alert('closing..');
  if (IE) 
  {
    document.all(helpElem).style.visibility = 'hidden';
  }
  else 
  {
    //document.layers[helpElem].visibility = 'hidden';
  }
}

function example (elem, text) 
{
  document.main.elements[elem].value = text;
}

function validateDate (date) 
{
  var reg = /^\s*((19|20)\d\d)(\d\d)(\d\d)\s*$/;

  if (-1 == date.search(reg))
    return false;

  var yy = parseInt(date.replace(reg, "$1"), 10)
  var mm = parseInt(date.replace(reg, "$3"), 10)
  var dd = parseInt(date.replace(reg, "$4"), 10)
	
  if (dd < 1 || dd>31)
    return false;
		
  if (mm < 1 || mm > 12)
    return false;
		
  switch (mm) 
  {
    case 2: 
      return (dd <= ((yy % 4)? 28 : 29))
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:
      return (dd <= 31);
    case 4:
    case 6:
    case 9:
    case 11:
      return (dd <= 30);
  }
}

function checkDate (date) 
{
  if (validateDate(date) == false) 
  {
    alert('Неверный формат даты!\nДата должна быть в формате YYYYMMDD.');
  }
}
