Test Failed
Push — master ( 78ef9f...88ea0f )
by Roberto
03:12 queued 11s
created

TranslateJsonValidation::translate()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 7
rs 10
c 0
b 0
f 0
cc 2
nc 2
nop 1
1
<?php
2
3
namespace NFePHP\eSocial\Common;
4
5
class TranslateJsonValidation
6
{
7
    /**
8
     * @var array
9
     */
10
    protected static $frases = [
11
        'no schema found to verify against' => 'sem um schema parra verificar',
12
        'Cannot validate the schema of a non-object' => 'Impossivel validar o '
13
            .'schema de algo que não é um objeto',
14
        'Schema did not pass validation' => 'O schema não passa na validação',
15
        'Schema is not valid' => 'O schema não é válido',
16
        'Error validating' => 'Erro validando',
17
        'Unable to encode schema array as JSON' => 'Incapaz de transformar o array em Json',
18
        'There must be a minimum of' => 'Deve haver um mínimo de',
19
        'items in the array' => 'itens no array',
20
        'There must be a maximum of' => 'Deve haver um máximo de',
21
        'There are no duplicates allowed in the array' => 'Não são permitidas repetiçõess no array',
22
        'The item' => 'O item',
23
        'is not defined and the definition does not allow additional items'
24
            => 'não está definido e a definição não permite itens adicionais',
25
        'Does not have a value in the enumeration' => 'Não possui um valor na enumeração',
26
        'Unknown constraint' => 'Restrição desconhecida, falha de codificação',
27
        'Invalid date' => 'Data inválida',
28
        'expected format YYYY-MM-DD' => 'esperado o formato YYYY-MM-DD',
29
        'Invalid time' => 'Hora inválida',
30
        'expected format hh:mm:ss' => 'esperado formato HH:mm:ss',
31
        'Invalid date-time' => 'Inválida data hora',
32
        'expected format YYYY-MM-DDThh:mm:ssZ or YYYY-MM-DDThh:mm:ss+hh:mm'
33
            => 'esparado o formto YYYY-MM-DDThh:mm:ssZ ou YYYY-MM-DDThh:mm:ss+hh:mm',
34
        'expected integer of milliseconds since Epoch'
35
            => 'esperado numero inteiro de millisegundos desde Epoch',
36
        'Invalid regex format' => 'Invalido formato regex',
37
        'Invalid color' => 'Cor inválida',
38
        'Invalid style' => 'Estilo inválido',
39
        'Invalid phone number' => 'Telefone inválido',
40
        'Invalid URL format' => 'URL inválida',
41
        'Invalid email' => 'Email inválido',
42
        'Invalid IP address' => 'Endereço IP inválido',
43
        'Invalid hostname' => 'Hostname inválido',
44
        'Must have a minimum value of' => 'Deve ter no minimo',
45
        'Must have a maximum value of' => 'Deve ter no máximo',
46
        'Use of exclusiveMinimum requires presence of minimum'
47
            => 'Requer a presença do minimo',
48
        'Is not divisible by' => 'Não é divisivel por',
49
        'Must be a multiple of' => 'Tem que ser um multiplo de',
50
        'The pattern' => 'O padrão',
51
        'is invalid' => 'é inválido',
52
        'The property' => 'A propriedade',
53
        'is not defined and the definition does not allow additional properties'
54
            => 'não está definida e a definição não permite propriedades adicionais',
55
        'The presence of the property' => 'A presença dessa propriedade',
56
        'requires that' => 'requer que',
57
        'also be present' => 'também esteja presente',
58
        'Must contain a minimum of' => 'Deve conter um minimo de',
59
        'properties' => 'propriedades',
60
        'Must contain no more than' => 'Não pode conter mais que',
61
        'Must be at most' => 'Deve ter no máximo',
62
        'characters long' => 'caracteres de comprimento',
63
        'Must be at least' => 'Deve ter pelo menos',
64
        'Does not match the regex pattern' => 'Não corresponde ao padrão',
65
        'an integer' => 'um inteiro',
66
        'a number' => 'um numero',
67
        'a boolean' => 'um boleano',
68
        'an object' => 'um objeto',
69
        'an array' => 'um array',
70
        'a string' => 'uma string',
71
        'a null' => 'um null',
72
        'value found, but' => 'encontrado, mas',
73
        'is required' => 'é obrigatório',
74
        'No wording for' => 'Nenhuma redação para',
75
        'available, expected wordings are:' => 'está disponivel, as redações esperadas são:',
76
        'is an invalid type for' => 'é um tipo inválido para',
77
        'Disallowed value was matched' => 'O valor não permitido foi correspondido',
78
        'Matched a schema which it should not' => 'Correspondeu a um esquema que não deveria',
79
        'Failed to match all schemas' => 'Falha ao corresponder a todos os esquemas',
80
        'Failed to match at least one schema' => 'Falha ao corresponder a pelo menos um esquema',
81
        'Failed to match exactly one schema' => 'Falha ao corresponder exatamente a um esquema',
82
        ' depends on' => ' depende de',
83
        ' and ' => ' e ',
84
        ' or ' => ' ou ',
85
        'is missing' => 'não encontrado.',
86
    ];
87
88
    /**
89
     * Translate to pt-BR
90
     *
91
     * @param string $message
92
     * @return string
93
     */
94
    public static function translate($message)
95
    {
96
        foreach (self::$frases as $key => $value) {
97
            $message = str_replace($key, $value, $message);
98
        }
99
        return $message;
100
    }
101
}
102