function initOverLabels () {
  if (!document.getElementById) return;      

  var labels, id, field;

  // устанавливаем обработчики onfocus и onblur
  // чтобы скрывать и отображать метки
  // с именем класса 'overlabel'
  labels = document.getElementsByTagName('label');
  for (var i = 0; i < labels.length; i++) {

    if (labels[i].className == 'overlabel') {

      // пропускаем метки которые не связаны
      // с полем ввода
      id = labels[i].htmlFor || labels[i].getAttribute('for');
      if (!id || !(field = document.getElementById(id))) {
        continue;
      } 

      // изменяем класс метки 
      // чтобы расположить ее перед полем ввода.
      labels[i].className = 'overlabel-apply';

      // скрываем метку если поле
      // имеет значение по умолчанию
      if (field.value !== '') {
        hideLabel(field.getAttribute('id'), true);
      }

      // устанавливаем обработчики
      // скрывающие и отображающие метки
      field.onfocus = function () {
        hideLabel(this.getAttribute('id'), true);
      };
      field.onblur = function () {
        if (this.value === '') {
          hideLabel(this.getAttribute('id'), false);
        }
      };

      // обрабатываем клики на метки (для Safari).
      labels[i].onclick = function () {
        var id, field;
        id = this.getAttribute('for');
        if (id && (field = document.getElementById(id))) {
          field.focus();
        }
      };

    }
  }
};

function hideLabel (field_id, hide) {
  var field_for;
  var labels = document.getElementsByTagName('label');
  for (var i = 0; i < labels.length; i++) {
    field_for = labels[i].htmlFor 
	|| labels[i].getAttribute('for');
    if (field_for == field_id) {
      labels[i].style.textIndent = (hide) ? '-1000px' : '0px';
      return true;
    }
  }
}

window.onload = function () {
  initOverLabels();
};

function checkRegForm(form) {
	
	var EmailCheck = new RegExp("^[A-z0-9\._%-]+@([A-z0-9-]+\.)+[A-z]{2,4}$", "i");
	var result = true;
	var alert_msg = "";
	
	if ( form.firstname.value=="" && form.emailaddress.value=="" ) {
		alert_msg = "Please fill out all the fields";
		result = false;
	} else {
		if (form.firstname.value == "") {
			alert_msg = "Please, enter your First name!";
			form.firstname.focus();
			result = false;
		}
	
		if (form.emailaddress.value == "" || !EmailCheck.test(form.emailaddress.value)) {
			 alert_msg = "Please, enter valid E-mail address!";
			 form.emailaddress.focus();
			 result = false;
		}
	}
	
	if ( result==false ) {
		document.getElementById("alertContainer").innerHTML = alert_msg;
	}
	return result;
}
