diff --git a/index.js b/index.js index 8fad2b6..3dad916 100644 --- a/index.js +++ b/index.js @@ -324,6 +324,19 @@ wss.on('connection', ws => { break; } + // Verificar termo via expressão regular. + let palavraRegexIlegal = new RegExp(vars["palavra.regex.caracteresIlegais"], 'g'); + if (palavraRegexIlegal.test(resposta.extra.termo)){ + ws.send(JSON.stringify(new Resposta("PEDIDO_CANCELADO", "SERVIDOR", "PALAVRA_OU_LETRA_PROIBIDO", { erroDescrição: "TERMO_CARACTERES_ILEGAIS" }))); + break; + } + + // Verificar se o termo enviado possui termos filtrados CASO a sala tinha o filtro habilitado + if (salaObj.opções["filtro.temasAdultos.habilitado"] && Util.filtrarMensagem(resposta.extra.termo, filtros) !== resposta.extra.termo){ + ws.send(JSON.stringify(new Resposta("PEDIDO_CANCELADO", "SERVIDOR", "PALAVRA_OU_LETRA_PROIBIDO", { erroDescrição: "TERMO_IMPRÓPRIO" }))); + break; + } + // Verificar o tipo do termo enviado. let letra = resposta.extra.termo.length === 1; let salaClientes = salaObj.clientes;