$(function() {
	$('textarea[display], input[display]').each(function() {
		$(this).val($(this).attr('display'));
		$(this).focus(function() {
			if($(this).attr('value') == $(this).attr('display')) $(this).val('');
		});
		$(this).blur(function() {
			if($(this).val() == '') $(this).val($(this).attr('display'));
		});
	});
	
	$('.form_monitored').submit(function() {
		var result = true;
		var reqs = $('.form_required');

		reqs.each(function() {
			var r = $(this);
			var msg;

			if(!r.val() || r.val() == r.attr('display')) {
				result = result && false;
				msg = 'Campo obrigat&oacute;rio n&atilde;o preenchido';
			} else if(r.hasClass('form_cpf') && !isCPF(r.val())) {
				result = result && false;
				msg = 'CPF inv&aacute;lido';
			} else if(r.hasClass('form_email') && !isEmail(r.val())) {
				result = result && false;
				msg = 'E-mail inv&aacute;lido';
			}  else if(r.hasClass('form_login') && !isLogin(r.val())) {
				result = result && false;
				msg = 'Login Inv&aacute;lido. Digite apenas letras, n&uacute;meros, underline (_) e h&iacute;fen (-)';
			}
			
			if(msg) {
				$('.' + r.attr('name')).html(msg).slideDown();
				r.change(function() { if(r.val()) { $('.' + r.attr('name')).slideUp(); }});
				r.keypress(function() { if(r.val()) { $('.' + r.attr('name')).slideUp(); }});
			}
		});
		
		if(!result) {
			return false;
		} else {
			$('textarea[display], input[display]').each(function() {
				if($(this).attr('value') == $(this).attr('display')) $(this).val('');
			});
			return true;
		}
	});
	
	$('.form_required').blur(function() {
		var r = $(this);
		var msg;

		if(!r.val() || r.val() == r.attr('display')) {
			msg = 'Campo obrigat&oacute;rio n&atilde;o preenchido';
		} else if(r.hasClass('form_cpf') && !isCPF(r.val())) {
			msg = 'CPF inv&aacute;lido';
		} else if(r.hasClass('form_email') && !isEmail(r.val())) {
			msg = 'E-mail inv&aacute;lido';
		} else if(r.hasClass('form_login') && !isLogin(r.val())) {
			msg = 'Login Inv&aacute;lido. Digite apenas letras, n&uacute;meros, underline (_) e h&iacute;fen (-)';
		}
		
		if(msg) {
			$('.' + r.attr('name')).html(msg).slideDown();
			r.change(function() { if(r.val()) { $('.' + r.attr('name')).slideUp(); }});
			r.keypress(function() { if(r.val()) { $('.' + r.attr('name')).slideUp(); }});
		}
	});
});

function isCPF(a){a=a.replace('.', '').replace('.', '').replace('-', '');if(a.length!=11||a=="00000000000"||a=="11111111111"||a=="22222222222"||a=="33333333333"||a=="44444444444"||a=="55555555555"||a=="66666666666"||a=="77777777777"||a=="88888888888"||a=="99999999999")return false;soma=0;for(i=0;i<9;i++)soma+=parseInt(a.charAt(i))*(10-i);resto=11-(soma%11);if(resto==10||resto==11)resto=0;if(resto!=parseInt(a.charAt(9)))return false;soma=0;for(i=0;i<10;i++)soma+=parseInt(a.charAt(i))*(11-i);resto=11-(soma%11);if(resto==10||resto==11)resto=0;if(resto!=parseInt(a.charAt(10)))return false;return true}
function isEmail(a){f=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;return f.test(a);}
function isLogin(a){f=/^[a-zA-Z][a-zA-Z0-9\_\-]*$/;return f.test(a);}