function phoneFilter(form) {
	var input = form.value;
	if(input.length > 0) { //do not perform if empty input
		var numbers = ""; //store all the numbers here
		//process to remove non-numbers and spaces
		for(var i = 0; i < input.length; i++) {
			var char = input.charAt(i);
			if(!(isNaN(char) || char == " ")) numbers += char;
		}
		//remove country code, if any
//		if(numbers.substring(0, 2) == "47") numbers = numbers.substring(2, numbers.length);
		var output = ""; //assign numbers here
		//assign numbers to chosen format
		var n = 0, i = 0;
		if (numbers.length == 10)
		{
		  format = "(##)####-####";		
  		  while(i < format.length && n < numbers.length) {
			  var char = format.charAt(i);
			  if(char == "#") {
			  	  output += numbers.charAt(n++)
			  } else {
				  output += char;
			  }
			  i++;
		  }
		}
		if (numbers.length == 9)
		{
		  format = "(##)###-####";
  		  while(i < format.length && n < numbers.length) {
			  var char = format.charAt(i);
			  if(char == "#") {
			  	  output += numbers.charAt(n++)
			  } else {
				  output += char;
			  }
			  i++;
		  }
		}
		//give alert if length is less than 8.
		if ((numbers.length != 9) && (numbers.length != 10)) {
			alert("O seu número de telefone deve conter somente 9 ou 10 números (incluindo o DDD).");
			form.focus();
		}

		form.value = output; //output to form
	}
}
