[TUTORIAL] Sistema de curtir nas mensagens

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

  • 0

[TUTORIAL] Sistema de curtir nas mensagens

Mensagem por Sennior em 28/06/15, 02:19 pm



Botão curtir nas mensagens

No tutorial a seguir, iremos ensinar como aplicar um sistema de curtir nas mensagens, substituindo o sistema atual de reputação.

--> Tutoriais, dicas e astúcias <--
Botão curtir nas mensagens


- Código a ser utilizado::
Para que a função seja ativa em teu fórum, precisaremos que aceda a teu painel administrativo e assim ir até na função "Folha de Estilo CSS":
Vá em:
Painel de controle  Seta curta Visualização  Seta curta Cores Seta curta "Aba" Folha CSS.


Seta Ver o CSS da base do seu fórum - Permite o administrador conferir o estilo padrão do CSS do fórum. Mesmo se você tiver aplicado algum código CSS na folha de estilo, esse CSS base não será alterado. Ele mostra os códigos que personalizam seu fórum sem a necessidade do CSS adicional, que no caso seria a da folha de estilo.
Seta Procurar CSS - Com essa ferramenta, podemos fazer uma busca nos códigos existentes na folha de estilo CSS. Por exemplo, se você adicionou algum código na folha de estilo, e pelo fato dela ser muito grande você não estiver encontrando o código desejado, a partir do momento em que digitar o código no campo "Procurar CSS", o código será encontrado (se digitado corretamente).
Seta Desativar o CSS de base - Caso desabilite essa opção, o CSS base do seu fórum será desativado, deixando apenas o CSS da folha de estilo.
Seta Melhorar seu CSS - Com essa função ativa, a capacidade de carregamento da página é aumentada, facilitando a navegação nas páginas de seu fórum. Mas é importante lembrar que, para que a função funcione normalmente como prometida, você terá que adicionar o código correto na folha de estilo.
No final de seu CSS, cole o seguinte código:

Código:

/*******CURTIR NO POST********/
  #rep_post .reput_vote {
  background-color: #daedfb;
  color: #666;
  -khtml-user-select: none;
  -moz-transition: all,0.15s;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-transition: all,0.15s;
  -webkit-touch-callout: none;
  -webkit-transition: all,0.15s;
  -webkit-user-select: none;
  background: #f0f0f0 url(https://cdn1.iconfinder.com/data/icons/social-media-13/24/Like-16.png) no-repeat 6px center;
  background-size: 12px;
  clear: both;
  color: #666;
  cursor: pointer;
  display: table;
  font-size: 11px;
  font-weight: 400;
  line-height: 18px;
  margin: 5px;
  padding: 3px 5px 3px 25px;
  text-align: right;
  transition: all,0.15s;
}
.reput_vote.zero {
  background-color: #6a6a6a;
}
  
  
  .BS_like:hover {
  background-color: #daedfb;
  color: #666;
}
.BS_like {
  -khtml-user-select: none;
  -moz-transition: all,0.15s;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-transition: all,0.15s;
  -webkit-touch-callout: none;
  -webkit-transition: all,0.15s;
  -webkit-user-select: none;
  background: #f0f0f0 url(https://cdn1.iconfinder.com/data/icons/social-media-13/24/Like-16.png) no-repeat 6px center;
  background-size: 12px;
  clear: both;
  color: #666;
  cursor: pointer;
  display: table;
  font-size: 11px;
  font-weight: 400;
  line-height: 18px;
  margin: 5px;
  padding: 3px 5px 3px 25px;
  text-align: right;
  transition: all,0.15s;
  user-select: none;
}

.BS_like:before {
  content: "Curtir";
}
  
  #rep_post .bs_inline {
  list-style: none;
}
  
  .BS_like:hover {
  background-color: #daedfb;
  color: #666;
}
  
  #rep_post {white-space: nowrap;margin: 6px 4px;float: right;}
#rep_post .bs_inline {list-style: none;}
#rep_post .bs_inline > li {display: inline-block;margin: 0 3px;}
#rep_post .bs_inline > li:first-child {margin-left: 0;}
#rep_post .bs_inline img {display: none;}
#rep_post span img {cursor: pointer;}


.reput_vote.positive {background-color: #8db13e;}
.reput_vote.zero {background-color: #6a6a6a;}

#rep_post .reput_vote:before {
  content: "Curtidas ";
}
/***********FIM CURTIR************/


- 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.

Vá em:
Painel de controle  Seta curta Modulos  Seta curta HTML & JavaScript  Seta curta "Aba" Gestão dos códigos JavaScripts

Seta Título Correspondente ao nome da página JavaScript/jQuery que será criada.
Seta 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.
Seta Código JavaScript Campo destinado para receber os códigos JavaScript e jQuery.
Seta 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.
Código JavaScript:

Código:
/***
* Código: IPB Like System
* Data de criação: 18/07/2014
* Atualização: 31/03/2015
* Autor: Daemon
* Versão: 1.2
* Inspirado: IPB
* Acesse: http://bestskins.net & http://ajuda.forumeiros.com
* Não distribuir, ou remover os créditos do autor.
***/
function bestskins_ls() {
  // Imagem de reputação
  var reputation_UP = 'http://www.agrotube.com.br/images/seta_baixo.png';
  for(var x = $('.vote'), i = 0, vote; (vote = x[i++]); ) {
                var qtd = 0,
                    barra = $('.vote-bar', vote)[0],
                    botao = $('.vote-button', vote)[0];                     
                if (barra) {
                    var numbarra = barra.title.match(/\d+/g);
                        qtd = Math.round(parseInt( numbarra[1] ) * parseInt( numbarra[0] )) / 100;
                }
           
 
                botao = botao ? '<li><span onclick="bestskinsVoto(\'' + botao.firstChild.href + '\',this);" class="BS_like"><img src="' + reputation_UP + '" alt="+" class="rep_up"></span></li>' : '<li style="display: none;"><img src="' + reputation_UP + '" alt="+" class="rep_up"></li>';
                var numrep = '<li>' + (qtd == 0 ? '<span class="reput_vote zero">' + qtd + '</span>' : '<span class="reput_vote positive">' + qtd + '</span>') + '</li>';
                var htmlFinal =
                '<div class="rep_bar clearfix" id="rep_post">' +
                '      <ul class="bs_inline">' + botao + numrep  + '</ul>' +
                '</div>';
  $('.postfoot', vote.parentNode.parentNode.parentNode.parentNode).before( htmlFinal );
  }
  x.remove();
};
function bestskinsVoto(b,a) {
  a.onclick = '#';
    $.get(b, function() {
    a.parentNode.style.display = 'none';
    var verify = a.parentNode.nextSibling.firstChild.innerHTML;
    if(verify == 0) {
        a.parentNode.nextSibling.firstChild.classList.remove('zero'),
        a.parentNode.nextSibling.firstChild.classList.add('positive');
    }
    var c = a.parentNode.nextSibling.firstChild, b = parseInt(/\d+/.exec(c.innerHTML)[0])+1;
    c.innerHTML = c.innerHTML.replace(/\d+/,b);
    });
};
if (document.readyState ===  'complete') {
        bestskins_ls();
} else {
      document.addEventListener('DOMContentLoaded', function() {
        bestskins_ls();
      });
}


- Funcionalidade:
O código acima funciona na versão PunBB, para que funcione nas demais versões, você deverá fazer as seguintes alterações:

Localize no JavaScript está seguinte parte:
Código:
$('.postfoot', vote.parentNode.parentNode.parentNode.parentNode).before( htmlFinal );
Troque por:
Código:
$('.postbody', vote.parentNode.parentNode.parentNode).append( htmlFinal );


- Resultado final:
O resultado será como na Print Screen apresentada abaixo:





© Fórum dos Fóruns & Daemon
Se tiver alguma dúvida relacionada com este tópico crie um tópico com o seguinte título:
Botão curtir nas mensagens
avatar

Sennior
Membro profissional
Membro profissional

Masculino
Inscrito dia : 10/06/2011
Mensagens : 16302
Pontos Ativos : 20791

Ver perfil do usuário http://ajuda.forumeiros.com/forum https://www.facebook.com/GlladstonHenrique

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum