Você não está conectado. Conecte-se ou registre-se

[TUTORIAL] Avaliação positiva de uma mensagem

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1 [TUTORIAL] Avaliação positiva de uma mensagem em Sab Maio 25, 2013 11:23 am

Cʀɑzy

avatar
Administrador
Administrador
Avaliação positiva de uma mensagem

Sempre
gostamos de criar novas maneiras para aumentar a interatividade nas
postagens, e dessa vez, você aprenderá através do tutorial a colocar um
botão de avaliação positiva nas mensagens, onde cada clique representará
o mesmo que "Curtir", como estamos acostumados na rede social Facebook.



--> Tutoriais, dicas e astúcias <--
Avaliação positiva de uma mensagem


Versão PunBB

1º - Localizar a template:
Painel de Controle Visualização Templates Geral viewtopic_body () Editar

2º - Adicionar o código:

Adicionem o seguinte script abaixo na última linha da template:
Código:
<style type="text/css">div.ddvote{float:right;margin-left:
20px;
height:20px;line-height:20px;font-size:12px;font-weight:bold;}</style>
<script type="text/javascript">
//<![CDATA[
var
 CopyrightNotice = 'Professional like/dislike bar for forumotion
IPB2/Invision boards. Copyright © 2011 by Dion Designs. All Rights
Reserved. Use and/or modification of this script is allowed, provided
this entire copyright notice remains in the original or modified script.
 Distribution is not allowed without written consent from Dion
Designs.';
var x=$('.vote').get();
for (i=x.length-1; i>=0; i--) {
    var plus='0';

    var vplus='<img style="margin-right:3px" title="Like" src="http://i45.servimg.com/u/f45/14/85/89/99/plus_110.png" />';
   
    var y=$(x[i]).find('.vote-button a').get();
    for (j=0; j<y.length; j++) {
        if (y[j].innerHTML=='+') {vplus='<a href="'+y[j].href+'">'+vplus+'</a>';}
    }
    var y=$(x[i]).find('.vote-bar')[0];
    if (y) {
        var z=y.title.split(' ');
        var pct=parseInt(z[3].replace(/%/,''))/100;
        var num=parseInt(z[4].replace(/\(/,''));
        plus=String(Math.round(num*pct));
    }
    $(x[i]).replaceWith('<div class="ddvote"> ' + vplus + plus + ' <div>');
}
//]]>
</script>

3º - Remover o bloco de votação:

Procure pelas seguintes linhas no template e remova-as: (busque apenas a primeira linha, depois veja até onde deletar)

Código:
<!-- BEGIN switch_vote_active -->
    <div class="vote gensmall">
    <!-- BEGIN switch_vote -->
 
      <div class="vote-button"><a
href="{postrow.displayed.switch_vote_active.switch_vote.U_VOTE_PLUS}">+</a></div>
    <!-- END switch_vote -->
    <!-- BEGIN switch_bar -->
        <div class="vote-bar" title="{postrow.displayed.switch_vote_active.L_VOTE_TITLE}">
        <!-- BEGIN switch_vote_plus -->
 
          <div class="vote-bar-plus"
style="height:{postrow.displayed.switch_vote_active.switch_bar.switch_vote_plus.HEIGHT_PLUS}px;"></div>
        <!-- END switch_vote_plus -->
        <!-- BEGIN switch_vote_minus -->
 
          <div class="vote-bar-minus"
style="height:{postrow.displayed.switch_vote_active.switch_bar.switch_vote_minus.HEIGHT_MINUS}px;"></div>
        <!-- END switch_vote_minus -->
        </div>
    <!-- END switch_bar -->
    <!-- BEGIN switch_no_bar -->
        <div title="{postrow.displayed.switch_vote_active.L_VOTE_TITLE}" class="vote-no-bar">----</div>
    <!-- END switch_no_bar -->
    <!-- BEGIN switch_vote -->
 
      <div class="vote-button"><a
href="{postrow.displayed.switch_vote_active.switch_vote.U_VOTE_MINUS}">-</a></div>
    <!-- END switch_vote -->
    </div>
<!-- END switch_vote_active -->

4º - Substituir outra linha da template:

Agora procure pela seguinte linha:

Código:
<div id="p{postrow.displayed.U_POST_ID}" class="posthead"{postrow.displayed.THANK_BGCOLOR}>

Substitua-a por esta:
Código:
<div id="p{postrow.displayed.U_POST_ID}" class="posthead clearfix"{postrow.displayed.THANK_BGCOLOR}>

5º - Adicionar o bloco de votação:

Agora, exatamente abaixo da linha que acabou de substituir, cole o código abaixo:

Código:
<!-- BEGIN switch_vote_active -->
    <div class="vote gensmall">
    <!-- BEGIN switch_vote -->
 
      <div class="vote-button"><a
href="{postrow.displayed.switch_vote_active.switch_vote.U_VOTE_PLUS}">+</a></div>
    <!-- END switch_vote -->
    <!-- BEGIN switch_bar -->
        <div class="vote-bar" title="{postrow.displayed.switch_vote_active.L_VOTE_TITLE}">
        <!-- BEGIN switch_vote_plus -->
 
          <div class="vote-bar-plus"
style="height:{postrow.displayed.switch_vote_active.switch_bar.switch_vote_plus.HEIGHT_PLUS}px;"></div>
        <!-- END switch_vote_plus -->
        <!-- BEGIN switch_vote_minus -->
 
          <div class="vote-bar-minus"
style="height:{postrow.displayed.switch_vote_active.switch_bar.switch_vote_minus.HEIGHT_MINUS}px;"></div>
        <!-- END switch_vote_minus -->
        </div>
    <!-- END switch_bar -->
    <!-- BEGIN switch_no_bar -->
        <div title="{postrow.displayed.switch_vote_active.L_VOTE_TITLE}" class="vote-no-bar">----</div>
    <!-- END switch_no_bar -->
    <!-- BEGIN switch_vote -->
 
      <div class="vote-button"><a
href="{postrow.displayed.switch_vote_active.switch_vote.U_VOTE_MINUS}">-</a></div>
    <!-- END switch_vote -->
    </div>
<!-- END switch_vote_active -->

6º - Salvar e publicar o template:

Ao terminar, clique em Salvar, na parte inferior da página e depois, no mesmo local em que clicou para ir até a edição do template, clique em Publicar ()

Observações:

Sim, eu poderia ter dado o template pronto para que vocês apenas o substituíssem. Mas não o fiz por duas razões.

1)
Seguindo o tutorial, você sabe exatamente o que fez para obter o
resultado desejado, caso contrário, estaria confiando no código
fornecido por mim sem saber as substituições e edições que fiz.

2)
Muitos membros já podem ter feito alguma alteração na template através
de outro tutorial ou modificação própria, então eu acabaria estragando
as mesmas...

Já fiz o tutorial utilizando a imagem que pediram, do FdF Inglês.

Versão Phpbb3 & Invision

1º - Localizar a gestão dos códigos Javascript:
Painel de Controle Módulos Gestão dos códigos JavaScript Criar um novo Javascript

2º - Criar o código:

Título: Avaliação positiva de uma mensagem
Investimento: Em todas as páginas
Código Javascript:

Phpbb3

Código:
var CopyrightNotice = 'Professional like/dislike bar for
forumotion phpBB3 boards. Copyright © 2011 by Dion Designs. All Rights
Reserved. Use and/or modification of this script is allowed, provided
this entire copyright notice remains in the original or modified script.
 Distribution is not allowed without written consent from Dion
Designs.';
$(function() {
   
$('#main-content').prepend('<style
type="text/css">ul.profile-icons
li.ddvote{height:20px;line-height:20px;font-size:12px;font-weight:bold}ul.profile-icons
 li.ddvote a{display:inline}.postbody ul.profile-icons li.ddvote
img{cursor:default;vertical-align:middle}.postbody ul.profile-icons
li.ddvote a img{cursor:pointer}</style>');
    var x=$('.vote').get();
    for (i=x.length-1; i>=0; i--) {
        var plus='0';

 
      var vplus='<img
style="position:relative;top:-3px;margin-right:3px" title="Like"
src="http://i45.servimg.com/u/f45/14/85/89/99/plus_110.png" />';

        var y=$(x[i]).find('.vote-button a').get();
        for (j=0; j<y.length; j++) {
            if (y[j].innerHTML=='+') {vplus='<a href="'+y[j].href+'">'+vplus+'</a>';}
            }
        var y=$(x[i]).find('.vote-bar')[0];
        if (y) {
            var z=y.title.split(' ');
            var pct=parseInt(z[3].replace(/%/,''))/100;
            var num=parseInt(z[4].replace(/\(/,''));
            plus=String(Math.round(num*pct));
        }
        if (x[i].parentNode.parentNode.parentNode.className=='module row1') {
            $(x[i].parentNode).find('.profile-icons').prepend('<li class="ddvote"> ' + vplus + plus + ' <li>');
            $(x[i].parentNode).find('.h3').css('border','none');
        }
        else {
            $(x[i].parentNode.childNodes[0]).prepend('<li class="ddvote"> ' + vplus + plus + ' <li>');
        }
        x[i].parentNode.removeChild(x[i]);
    }
});

Invision
Código:
var CopyrightNotice = 'Professional like/dislike bar for
forumotion phpBB3 boards. Copyright © 2011 by Dion Designs. All Rights
Reserved. Use and/or modification of this script is allowed, provided
this entire copyright notice remains in the original or modified script.
 Distribution is not allowed without written consent from Dion
Designs.';
$(function() {
   
$('#main-content').prepend('<style type="text/css">ul.post-info
li.ddvote{height:20px;line-height:20px;font-size:12px;font-weight:bold;}</style>');
    var x=$('.vote').get();
    for (i=x.length-1; i>=0; i--) {
        var plus='0';

 
      var vplus='<img
style="position:relative;top:-3px;margin-right:3px" title="Like"
src="http://i45.servimg.com/u/f45/14/85/89/99/plus_110.png" />';

        var y=$(x[i]).find('.vote-button a').get();
        for (j=0; j<y.length; j++) {
            if (y[j].innerHTML=='+') {vplus='<a href="'+y[j].href+'">'+vplus+'</a>';}
            }
        var y=$(x[i]).find('.vote-bar')[0];
        if (y) {
            var z=y.title.split(' ');
            var pct=parseInt(z[3].replace(/%/,''))/100;
            var num=parseInt(z[4].replace(/\(/,''));
            plus=String(Math.round(num*pct));
        }
        $(x[i].parentNode.previousSibling.childNodes[0]).prepend('<li class="ddvote"> ' + vplus + plus + ' <li>');
        x[i].parentNode.removeChild(x[i]);
    }
});


Clique em Confirmar.

Resultado final:

Agora,
acesse algum tópico ou mensagem no fórum que tenha sido criado por
outro membro e veja o resultado em uma de suas postagens (com já 1 voto
positivo computado):

(Desconsidere a versão de exemplo)

Expandir esta imagem Ver em tamanho real

Ver perfil do usuário http://kingercheats.forumeiros.com

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

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