window.onload = function() {
	var fs = document.forms;
	for(var i = 0; i < fs.length; i++) {
		fs[i].onsubmit = function() {
			var msg = '';
			var labels = this.getElementsByTagName('label');
			for(var j = 0; j < this.elements.length; j++) {
				var el = this.elements[j];
				if(el.value == '' && el.getAttribute('w_required')) {
					for(var k = 0; k < labels.length; k++) {
						if(labels[k].getAttribute('for') == el.id)
							msg += labels[k].innerHTML + ', ';
					}
				}
			}
			if(!msg) return true;
			else {
				var ft = this.getElementsByTagName('fieldset')[0];
				if(ft.firstChild.className == 'err') ft.removeChild(ft.firstChild);
				var p = document.createElement('p');
				p.className = 'err';
				p.innerHTML = 'The following fields are required: ' + msg;
				ft.insertBefore(p, ft.firstChild);
				return false;
			}
		}
	}
}
