Máscara Telefone mudança para aceitar 9 digitos

Pessoal nao sei se vcs estao precisando ainda desta função porem precisei alterar um sistema que desenvolvo em ASP pois la tem um campo telefone de recados, logo ele pode ser tanto fixo como celular entao adaptei esta função para formatar de acordo com os numeros digitados.
Logo se encontrar na string o numero 9 logo apos o DDD significa que é um celular senão é um tel fixo.

Caso queiram permitir que se o primeiro numero digitado for 6-7-8 tambem formate com 5 caracteres o pre-fixo é só descomentar a linhas em Azul e comentar a linha em vermelho.
se precisarem esta ae para ajudar o pessoal grato.