function validateFields(fields) {
	for(var i = 0; i < fields.length; i++) {
		var field = fields[i];
		var id = field.id;
		var msg = field.msg;
		
		if($("#" + id).val() == "") {
			$("#msg").text(msg);
			$("#popupMsg").dialog("open");
			return false;
		}
	}
	return true;
}

jQuery.fn.restringeDigitacao = function(regex)
{
	this.keypress( function( e ){
		return restringeDigitacao(e, regex);
	});
}

jQuery.fn.somenteLetrasMaiusculas = function( )
{
	this.restringeDigitacao(/[A-Z]/i);
}

jQuery.fn.somenteLetras = function( )
{
	this.restringeDigitacao(/[a-zá-üç\s\.\-\']/i);
}

jQuery.fn.caracteresLogin = function( )
{
	this.restringeDigitacao( /[a-z\.\-_]/i);
}

jQuery.fn.somenteNumeros = function( ) 
{
	this.restringeDigitacao( /[0-9]/i);
}

function restringeDigitacao(event, regex)
{
	var tecla = getTecla(event);

   	if(isTeclaEspecial(tecla)) {
   		return true;
   	} 

	return regex.test(String.fromCharCode(tecla)); 
}

function getTecla(event) {
	var bname = navigator.appName;
	return bname == "Microsoft Internet Explorer"?
   		event.keyCode: event.which;
}

function isTeclaEspecial(tecla) {
	if( tecla == 0 )
     	return true ;
     	
	if( tecla == 8)//backspace
		return true ;
}
