[Tutorial] Limitar quantidade de letras para postar uma mensagem

Ver o tópico anterior Ver o tópico seguinte Ir para baixo

Admin
Admin
Administrador
Tempo Online : 250d 6h 21m 59s
Mensagens : 693
Reputação : 4
https://bestweb.forumeiro.com

MensagemAdmin Qui Set 29, 2016 11:13 pm

Informações:

Autor: Desconhecido
Versões: Todas as versões
Introdução: Limitar quantidade de letras ou palavras para postar uma mensagem

Instalação:

Acesse:
Painel de controle -> Modulos -> HTML & Javascripts -> Gestão dos códigos Javascripts
Então crie um novo javascript com investimento em todas as paginas com esse código:
Código:
jQuery(function(){jQuery(function(){
      var MinNumberOfWords = 5; /* Mínimo de palavras para destravar o botão ENVIAR */
      var LetterCountPerWord = 3; /* Comprimento mínimo da palavra */
      var ico_compl = "http://i73.servimg.com/u/f73/18/10/89/49/ok-gre10.png"; /* Ícone que aparecerá quando o usuário tiver digitado tudo */
      var ico_incompl = "http://i73.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) + " palavras para enviar esta mensagem <img src='" + ico_incompl  + "' />");
              jQuery("input[type='submit'][name='post']").attr("disabled", true).css("opacity", "0.5");
            }
          });
      }
    })});
Deixamos algumas descrições dentro do código, altere ao seu gosto.


  • Resultado:
    [Tutorial] Limitar quantidade de letras para postar uma mensagem Result37

Ver o tópico anterior Ver o tópico seguinte Ir para o topo

Cria uma conta ou logue para postar uma mensagem.

Você precisa ser um membro, para poder postar uma resposta.

Criar conta

Participe de nossa comunidade, basta se registrar. É Fácil!


Criar uma conta

Logar

Já tem uma conta? Sem problemas, Logue agora.


Logar-se

 
Permissões neste sub-fórum
Não podes responder a tópicos