PrimeFaces.locales['pt_BR'] = {
    closeText: 'Fechar',
    prevText: 'Anterior',
    nextText: 'Pr&oacute;ximo',
    currentText: 'Hoje',
    monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
    monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun', 'Jul','Ago','Set','Out','Nov','Dez'],
    dayNames: ['Domingo','Segunda','Ter&ccedil;a','Quarta','Quinta','Sexta','S&aacute;bado'],
    dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','S&aacute;b'],
    dayNamesMin: ['D','S','T','Q','Q','S','S'],
    weekHeader: 'Semana',
    firstDay: 0,
    isRTL: false,
    showMonthAfterYear: false,
    yearSuffix: '',
    timeOnlyTitle: 'S&oacute; Horas',
    timeText: 'Tempo',
    hourText: 'Hora',
    minuteText: 'Minuto',
    secondText: 'Segundo',
    ampm: false,
    month: 'M&ecirc;s',
    week: 'Semana',
    day: 'Dia',
    allDayText : 'Todo o Dia',
    messages: {
        'javax.faces.component.UIInput.REQUIRED': '{0}: Valor obrigatório.',
        'javax.faces.converter.IntegerConverter.INTEGER': '{2}: \'{0}\' deve ser um número com um ou mais dígitos.',
        'javax.faces.converter.IntegerConverter.INTEGER_detail': '{2}: \'{0}\' deve ser um número entre -2147483648 e 2147483647. Exemplo: {1}',
        'javax.faces.converter.DoubleConverter.DOUBLE': '{2}: \'{0}\' deve ser um número com um ou mais dígitos.',
        'javax.faces.converter.DoubleConverter.DOUBLE_detail': '{2}: \'{0}\' deve ser um número entre 4.9E-324 e 1.7976931348623157E308. Exemplo: {1}',
        'javax.faces.converter.BigDecimalConverter.DECIMAL': '{2}: \'{0}\' deve ser um número decimal.',
        'javax.faces.converter.BigDecimalConverter.DECIMAL_detail': '{2}: \'{0}\' deve ser um número decimal com 0 ou mais dígitos, podendo ou não ser seguido de vírgula e fração. Exemplo: {1}',
        'javax.faces.converter.BigIntegerConverter.BIGINTEGER': '{2}: \'{0}\' deve ser um número com um ou mais dígitos.',
        'javax.faces.converter.BigIntegerConverter.BIGINTEGER_detail': '{2}: \'{0}\' deve ser um número com um ou mais dígitos. Exemplo: {1}',
        'javax.faces.converter.ByteConverter.BYTE': '{2}: \'{0}\' deve ser um número entre 0 e 255.',
        'javax.faces.converter.ByteConverter.BYTE_detail': '{2}: \'{0}\' deve ser um número entre 0 e 255. Exemplo: {1}',
        'javax.faces.converter.CharacterConverter.CHARACTER': '{1}: \'{0}\' deve ser um caractere válido.',
        'javax.faces.converter.CharacterConverter.CHARACTER_detail': '{1}: \'{0}\' deve ser um caractere ASCII válido.',
        'javax.faces.converter.ShortConverter.SHORT': '{2}: \'{0}\' deve ser um número com um ou mais dígitos.',
        'javax.faces.converter.ShortConverter.SHORT_detail': '{2}: \'{0}\' deve ser um número entre -32768 e 32767. Exemplo: {1}',
        'javax.faces.converter.BooleanConverter.BOOLEAN': '{1}: \'{0}\' deve ser \'true\' ou \'false\'',
        'javax.faces.converter.BooleanConverter.BOOLEAN_detail': '{1}: \'{0}\' deve ser \'true\' ou \'false\'. Qualquer valor diferente de \'true\' será avaliado como \'false\'.',
        'javax.faces.validator.LongRangeValidator.MAXIMUM': '{1}: Valor é maior que o máximo permitido de \'{0}\'',
        'javax.faces.validator.LongRangeValidator.MINIMUM': '{1}: Valor é menor que o mínimo permitido de \'{0}\'',
        'javax.faces.validator.LongRangeValidator.NOT_IN_RANGE': '{2}: Valor especificado não está entre os valores esperados {0} e {1}.',
        'javax.faces.validator.LongRangeValidator.TYPE={0}': 'Valor especificado não é do tipo correto.',
        'javax.faces.validator.DoubleRangeValidator.MAXIMUM': '{1}: Valor é maior que o máximo permitido de \'{0}\'',
        'javax.faces.validator.DoubleRangeValidator.MINIMUM': '{1}: Valor é menor que o mínimo permitido de \'{0}\'',
        'javax.faces.validator.DoubleRangeValidator.NOT_IN_RANGE': '{2}: Valor especificado não está entre os valores esperados {0} e {1}',
        'javax.faces.validator.DoubleRangeValidator.TYPE={0}': 'Valor especificado não é do tipo correto.',
        'javax.faces.converter.FloatConverter.FLOAT': '{2}: \'{0}\' deve ser um número com um ou mais dígitos.',
        'javax.faces.converter.FloatConverter.FLOAT_detail': '{2}: \'{0}\' deve ser um número entre 1.4E-45 e 3.4028235E38. Exemplo: {1}',
        'javax.faces.converter.DateTimeConverter.DATE': '{2}: \'{0}\' não pôde ser interpretado como data.',
        'javax.faces.converter.DateTimeConverter.DATE_detail': '{2}: \'{0}\' não pôde ser interpretado como data. Exemplo: {1}',
        'javax.faces.converter.DateTimeConverter.TIME': '{2}: \'{0}\' não pôde ser interpretado como hora.',
        'javax.faces.converter.DateTimeConverter.TIME_detail': '{2}: \'{0}\' não pôde ser interpretado como hora. Exemplo: {1}',
        'javax.faces.converter.DateTimeConverter.DATETIME': '{2}: \'{0}\' não pôde ser interpretado como data e hora.',
        'javax.faces.converter.DateTimeConverter.DATETIME_detail': '{2}: \'{0}\' não pôde ser interpretado como data e hora. Exemplo: {1}',
        'javax.faces.converter.DateTimeConverter.PATTERN_TYPE': '{1}: Atributo \'pattern\' ou \'type\' deve ser especificado para converter o valor \'{0}\'', 
        'javax.faces.converter.NumberConverter.CURRENCY': '{2}: \'{0}\' não pôde ser interpretado como valor monetário.',
        'javax.faces.converter.NumberConverter.CURRENCY_detail': '{2}: \'{0}\' não pôde ser interpretado como valor monetário. Exemplo: {1}',
        'javax.faces.converter.NumberConverter.PERCENT': '{2}: \'{0}\' não pôde ser interpretado como porcentagem.',
        'javax.faces.converter.NumberConverter.PERCENT_detail': '{2}: \'{0}\' não pôde ser interpretado como porcentagem. Exemplo: {1}',
        'javax.faces.converter.NumberConverter.NUMBER': '{2}: \'{0}\' não pôde ser interpretado como número.',
        'javax.faces.converter.NumberConverter.NUMBER_detail': '{2}: \'{0}\' não é número. Exemplo: {1}',
        'javax.faces.converter.NumberConverter.PATTERN': '{2}: \'{0}\' não é um número padrão.',
        'javax.faces.converter.NumberConverter.PATTERN_detail': '{2}: \'{0}\' não é um número padrão. Exemplo: {1}',
        'javax.faces.validator.LengthValidator.MINIMUM': '{1}: Tamanho é menor que o mínimo permitido de \'{0}\'',
        'javax.faces.validator.LengthValidator.MAXIMUM': '{1}: Tamanho é maior que o máximo permitido de \'{0}\'',
        'javax.faces.validator.RegexValidator.PATTERN_NOT_SET': 'Padrão Regex deve ser informado.',
        'javax.faces.validator.RegexValidator.PATTERN_NOT_SET_detail': 'Padrão Regex deve ser informado para um valor diferente de vazio.',
        'javax.faces.validator.RegexValidator.NOT_MATCHED': 'Valor não confere com o padrão esperado.',
        'javax.faces.validator.RegexValidator.NOT_MATCHED_detail': 'Valor \'{0}\' não confere com o padrão esperado.',
        'javax.faces.validator.RegexValidator.MATCH_EXCEPTION': 'Erro na expressão regular.',
        'javax.faces.validator.RegexValidator.MATCH_EXCEPTION_detail': 'Erro na expressão regular, \'{0}\''
    }
};

PrimeFaces.locales['pt'] = {
    closeText: 'Fechar',
    prevText: 'Anterior',
    nextText: 'Pr&oacute;ximo',
    currentText: 'Hoje',
    monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
    monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun', 'Jul','Ago','Set','Out','Nov','Dez'],
    dayNames: ['Domingo','Segunda','Ter&ccedil;a','Quarta','Quinta','Sexta','S&aacute;bado'],
    dayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','S&aacute;b'],
    dayNamesMin: ['D','S','T','Q','Q','S','S'],
    weekHeader: 'Semana',
    firstDay: 0,
    isRTL: false,
    showMonthAfterYear: false,
    yearSuffix: '',
    timeOnlyTitle: 'S&oacute; Horas',
    timeText: 'Tempo',
    hourText: 'Hora',
    minuteText: 'Minuto',
    secondText: 'Segundo',
    ampm: false,
    month: 'M&ecirc;s',
    week: 'Semana',
    day: 'Dia',
    allDayText : 'Todo o Dia'
};