[TUTORIAL] Limitar quantidade de letras para postar uma mensagem
Página 1 de 1
[TUTORIAL] Limitar quantidade de letras para postar uma mensagem
Tópicos e Mensagens |
Em nosso fórum existe os usuários que gostam de postar conteúdos desnecessários, sendo que, isso incomoda muito na questão do controle contra os floods. Com este novo recurso, você poderá resolver este problema sem ter dor de cabeça.
--> Tutoriais, dicas e astúcias <--
Limitar quantidade de letras para postar uma mensagem
Limitar quantidade de letras para postar uma mensagem
1º - Noção básica da função:
As páginas javascript ativas em seu fórum possibilita inserir scripts e jquery para personalizar seu fórum, contudo é importante saber que qualquer script encontrado na internet acabam por não surgir efeito nos fóruns.
Painel de controle >> Módulos >> HTML & JavaScript >> Gestão dos códigos JavaScripts >>
Título Correspondente ao nome da página JavaScript/jQuery que será criada. |
Localização- São destinados os devidos locais para onde você aplicará os efeitos do JavaScript nos fóruns. No nosso caso, aplicaremos Nos tópicos. |
Código JavaScript Campo destinado para receber os códigos JavaScript e jQuery. |
Habilitar o gerenciamento dos códigos JavaScript Ao selecionar a opção sim, estará ativando a função páginas Javascript no seu fórum. Se selecionar não, as páginas serão desabilitadas no fórum. |
2º - Código JS a ser utilizado:
Deixamos algumas descrições dentro do código, altere ao seu gosto.jQuery(function(){jQuery(function(){
/* Name of effect: Contagem de palavras antes de postar
Criado por: Turbodeif - Fórum dos Fóruns Espanhol
Traduzido por: Shek
Disponível em: Fórum dos Fóruns
Disponível para: Todas as versões:
*/
var MinNumberOfWords = 5; /* Mínimo de palavras para destravar o botão ENVIAR */
var LetterCountPerWord = 3; /* Comprimento mínimo da palavra */
var ico_compl = "https://i.servimg.com/u/f73/18/10/89/49/ok-gre10.png"; /* Ícone que aparecerá quando o usuário tiver digitado tudo */
var ico_incompl = "https://i.servimg.com/u/f73/18/10/89/49/exclam10.png"; /* Ícone que aparecerá quando o usuário não tiver digitado tudo */
/* ATENÇÃO: Mude somente os trechos que estão em Português, ou seja:
jQuery(".sceditor-container").after("<br/><div id='div_minchars' align='center'><div id='div_minchars_header'> Mínimo de letras para postar: " +
Você pode alterar o nome "MÍNIMO DE LETRAS PARA POSTAR" que está no código de exemplo acima.
*/
if(jQuery("#text_editor_textarea").length != 0){
jQuery("input[type='submit'][name='post']").attr("disabled", true).css("opacity", "0.5");
jQuery(".sceditor-container").after("<br/><div id='div_minchars' align='center'><div id='div_minchars_header'> Mínimo de letras para postar: " + MinNumberOfWords + " (ou pelo menos) " + LetterCountPerWord + " letras)</div><div id='div_minchars_info'></div></div>");
var sceditor = jQuery("#text_editor_textarea").sceditor("instance");
var str = sceditor.val();
var regex = new RegExp('\\w{' + LetterCountPerWord + ',}\\b', 'g');
var str_arr = str.match(regex);
var str_len = str_arr == null ? 0 : str_arr.length;
if(str_len >= MinNumberOfWords) jQuery("input[type='submit'][name='post']").attr("disabled", false).css("opacity", "1");
sceditor.keyUp(function(e) {
str = sceditor.val();
str_arr = str.match(regex);
str_len = str_arr == null ? 0 : str_arr.length;
if(str_len >= MinNumberOfWords) {
jQuery("#div_minchars_info").html("Você escreveu <span style='color:green'>" + str_len + "</span> palavras. Agora você pode enviar a mensagem <img src='" + ico_compl + "' />");
jQuery("input[type='submit'][name='post']").attr("disabled", false).css("opacity", "1");
}else{
jQuery("#div_minchars_info").html("Você escreveu <span style='color:red'>" + str_len + "</span> palavras. Você precisa " + (MinNumberOfWords - str_len) + " palavraspara enviar esta mensagem <img src='" + ico_incompl + "' />");
jQuery("input[type='submit'][name='post']").attr("disabled", true).css("opacity", "0.5");
}
});
}
})});
- Resultado:
© Fórum dos Fóruns & Turbodeif
Se tiver alguma dúvida relacionada com este tópico crie um tópico com o seguinte título: [Dúvida] Limitar quantidade de letras para postar uma mensagem |
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos