// JavaScript Document

function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
  oldonload();
  func();
}
}
}

function insertAfter(newElement,targetElement) {
  var parent = targetElement.parentNode;
  if (parent.lastChild == targetElement) {
    parent.appendChild(newElement);
  } else {
    parent.insertBefore(newElement,targetElement.nextSibling);
  }
}

function removeError() {
	var container = document.getElementById("main");
	var error = document.getElementById("error");
	if(error) {
		container.removeChild(error);
	}
}

function showError() {
	
	removeError();
	var naglowek = document.getElementById("info");
	var kontaktForm = document.getElementById("kontakt");
	//var kontaktForm = document.form[0];
	var p = document.createElement("p");
	p.setAttribute("id", "error");
	var txt = document.createTextNode("Prosze wypelnic wszystkie puste pola.");
	p.appendChild(txt);
	insertAfter(p, naglowek);
	
	return false;
}


function showTelError() {
	
	removeError();
	
	var kontaktForm = document.getElementById("kontakt");
//	var kontaktForm = document.form[0];
	var p = document.createElement("p");
	p.setAttribute("id", "error");
	var txt = document.createTextNode("Prosze podać poprawny numer telefonu.");
	p.appendChild(txt);
	var naglowek = document.getElementById("info");
	insertAfter(p, naglowek);
	return false;
}



function validateForm(whichform) {
	   for (var i=0; i<whichform.elements.length; i++) {
 	   var element = whichform.elements[i];
	if (element.className.indexOf("required") != -1) {
	   if (!isFilled(element)) {
	   return showError();
      }
    }
if (element.className.indexOf("telefon") != -1) {
	   if (!isPhone(element)) {
	   return showTelError();
      }
    }
}
  return true;
}

function isFilled(field) {
  if (field.value.length < 1 || field.value == field.defaultValue) {
    return false;
  } else {
    return true;
  }
}


function isPhone(field){
	 if (!isFilled(field)) {
	   return false;
      }
	for (i = 0; i < field.value.length; i++)
       {
       var c = field.value.charAt(i);
        if (((c < "0") || (c > "9"))) 
		return false;
		}
		
		return true;
	}



function prepareForms() {
  for (var i=0; i<document.forms.length; i++) {
    var thisform = document.forms[i];
    thisform.onsubmit = function() {
	  return validateForm(this);
    }
  }
}

addLoadEvent(prepareForms);