Areá do topico

5 participantes

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

Tópico resolvido Areá do topico

Mensagem por proberto 10.04.14 2:23

Qual é minha questão:
Eu queria tipo quando a pessoa criar um Topico deixa ela assim Olha.

Tipo eu queria bota issu.
Areá do topico Nd0obq

Aqui aonde ta essas 2 Flechas
Areá do topico Vg22ib

Endereço do meu fórum:
http://supportibia.alianceforum.com

Versão do fórum:
PHPBB3


Última edição por proberto em 10.04.14 19:42, editado 1 vez(es)
avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 3:32

Olá,

Pode nos passar o link do fórum onde viu isso?

Abraços. Feliz
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por proberto 10.04.14 3:46

Xtibia.com

Tipo eu queria bota ali tbm aonde tem o nome igual aquela barra ae
avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 4:06

Adicione isso a um novo Javascript com Investimento em Tópicos:

Código:
$(function() {
    $('.post .postprofile strong a').each(function(key, element) {
        var self;
        self = $(element);
        self.closest('.post').before('<div class="post-author">' + self.parent().get(0).outerHTML + '</div>');
        self.closest('dt').remove();
    });
});

E isso ao seu CSS:

Código:
.post-author {
  background: #262626 url('http://www.xtibia.com/forum//public/style_images/marble/branding_bg.png') repeat;
  text-shadow: rgba(0,0,0,0.5) 0px -1px 0px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: inset #000 0px 1px 3px;
  -moz-box-shadow: inset #000 0px 1px 3px;
  box-shadow: inset #000 0px 1px 3px;
  padding: 0 10px;
  height: 36px;
  line-height: 36px;
  font-weight: normal;
  font-size: 13px;
}

.post-author a {
  color: #fff;
  font-size: 13px;
  font-weight: normal;
}

Abraços. Feliz
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por proberto 10.04.14 4:11

Cara eu te amo. Mais tipo na frente do nome sera que tem como bota 1 bola Verde fala que ta online e cinza fala que ta off.

2 Não tem como bota essa barra azul com o tanto de mensagens que tem no tópico.

essa barra
Areá do topico 15qr9k6

avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por proberto 10.04.14 4:12

Amigo e a imagen não esta aparecendo agora que atualizo aqui
avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 13:34

Então, quanto a bolinha, troque o Javascript por esse:

$(function() {
$('.post .postprofile strong a').each(function(key, element) {
var self, post;
self = $(element);
post = self.closest('.post');
post.before('<div class="post-author"><img src="http://www.xtibia.com/forum//public/style_images/marble/post_' + (post.hasClass('online') ? 'on' : 'off') + 'line.png" /> ' + self.parent().get(0).outerHTML + '</div>');
self.closest('dt').remove();
});
});

Quanto a barra azul com a contagem não há como. O Forumeiros não exibe na tela o número de posts no tópico, logo para conseguir esse número, teria que carregar outra página, o que podia fazer o carregamento do tópico ficar lento. Malz. Triste

E de que imagem você está falando?
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

  • 0

Tópico resolvido Re: Areá do topico

Mensagem por JScript 10.04.14 13:43

Kyo Panda escreveu:Quanto a barra azul com a contagem não há como. O Forumeiros não exibe na tela o número de posts  no tópico, logo para conseguir esse número, teria que carregar outra página, o que podia fazer o carregamento do tópico ficar lento. Malz. Triste
Tem essa possibilidade sim amigo, veja um print de um tópico em meu fórum:
Areá do topico 0U5nkMv

Vou lhe dar uma dica: Basta somar quantas mensagens tem e subtrair uma, feito isso é só mostrar na "barra azul"...

Edit:
Aqui está os códigos que utilizo:
HTML:
Código:

         <!-- #region: Adds the number of replies to the topic bar -->
         <font style='font-size: 12px; font-family: Arial;'><span itemprop="count_post"></span> respostas neste tópico</font>           
         <!-- #endregion: Adds the number of replies to the topic bar -->

JavaScript:
Código:

            var amount = $('span.count-post:last').html() - 1;
            $('span[itemprop="count_post"]').html(amount);

JS


Última edição por JScript em 10.04.14 13:44, editado 1 vez(es) (Motivo da edição : + infos...)
JScript

JScript
Super Membro

Membro desde : 15/03/2013
Mensagens : 1449
Pontos : 1901

http://jscript.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 14:14

Duas perguntas, JS:

1) Quando diz somar a quantidade de mensagens que tem, diz somar as mensagens no tópico atual, correto? Mas eu não tenho como detectar qual o número de mensagens no último tópico, o que pode tornar o número incerto. Logo, como contornar isso? (Claro, sem carregarmos uma nova página, pois se for necessário, é mais fácil puxar a da listagem de tópicos).

2) No script, você puxa a quantidade de posts de um elemento que possui essa quantidade, o span.count-post:last, mas não sei ao certo se esse elemento existe no PHPBB3. Você sabe se existe? Pois não conseguiríamos alterar o layout no PHPBB3.

Abraços. Feliz
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por JScript 10.04.14 14:27

@Kyo Panda

Não precisa tanto, para não fazer uma requisição só para ter o número de respostas, basta saber quantas tem na página atual mesmo!
Experimente em PHPBB3 (console):
Código:
jQuery('.post').length;

Lembre-se: Quanto mais requisições com um curto intervalo entre elas é igual a Request Limit!

JS
JScript

JScript
Super Membro

Membro desde : 15/03/2013
Mensagens : 1449
Pontos : 1901

http://jscript.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por proberto 10.04.14 14:29

Jscript eu não entendi como que instala isso
avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por JScript 10.04.14 14:31

proberto escreveu:Jscript eu não entendi como que instala isso
Nem tente ainda pois estou analisando com o @Kyo Panda, leia: https://ajuda.forumeiros.com/t91217-area-do-topico#619716

JS
JScript

JScript
Super Membro

Membro desde : 15/03/2013
Mensagens : 1449
Pontos : 1901

http://jscript.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 14:39

Então, até aí eu compreendo. Mas há algumas variáveis que influenciam.

Nós devemos calcular o número de mensagens que há no tópico, incluindo todas as páginas. Contando o número de posts nesse tópico, sabemos qual é o número de mensagens por tópico definido pelo usuário, se o tópico possuir paginação. Se não possuir, temos o número exato.

Mas aí entramos num problema. Supomos que o usuário não mexeu na quantidade de mensagens por página e possuímos o padrão de 15 mensagens, o jQuery('.post').length retornaria 15, se o $('#main-content > .pagination:first span a').eq(-2).text() retornasse um valor (indicando que há mais de uma página). Nessa linha de raciocínio, se possuíssemos 3 páginas, poderíamos ter até 45 mensagens no tópico. O problema é que a terceira página pode ter 15 ou menos mensagens e não teríamos como ter certeza desse número.

Isso que está complicado. Triste
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

  • 0

Tópico resolvido Re: Areá do topico

Mensagem por JScript 10.04.14 15:23

@Kyo Panda

Chegou ao ponto que eu queria: Se desejar ter precisão no número de respostas, terá que fazer no mínimo uma requisição!

JS
JScript

JScript
Super Membro

Membro desde : 15/03/2013
Mensagens : 1449
Pontos : 1901

http://jscript.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 15:48

Este é o ponto. Triste

Então proberto, eu posso até criar um script para tal, mas acho um pouco pesado demais para seus usuários, por uma informação não determinante. Ou podemos colocar um número aproximado. O que será?
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por proberto 10.04.14 16:30

SS faz um ae que tipo seja igual ou algo assim. O que vocês fazer ta otimo...
avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por proberto 10.04.14 16:42

Cara e agora que eu percebi a Imagem de perfil não esta aparecendo...
avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Daemon 10.04.14 17:14

O que você quer fazer? Numerar seus posts? Se for crie um JS com investimento nos tópicos e adicione:
Código:
$(function() {
  var postspagina = 5; //Número de posts por página.
  var pagina = document.title.match(/-\sPage\s(\d+)$/), pagina = pagina ? pagina[1] : 1;
  var posts = $('.postprofile', document.getElementById('main-content')), numero = (pagina - 1) * postspagina;

  for(var i = 0; i < postspagina; i++) {
      if(!posts[i]) break;
      var link = posts[i].previousSibling.getElementsByTagName('h2')[0].getElementsByTagName('a')[0].href;
      posts[i].innerHTML = '<span id="n-post"><a href="' + link + '">#' + ++numero + '</a></span>' + posts[i].innerHTML;

  }
});
Depois em seu css adicione:
Código:
#n-post {float: right;font-size: 1.2em;font-weight: normal;}
Feliz'
Daemon

Daemon
Super Membro

Membro desde : 02/03/2012
Mensagens : 1132
Pontos : 1825

http://bestskins.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 17:40

Nyeh, Daemon, não é bem isso. Estávamos discutindo a melhor maneira de se adicionar uma contagem com a soma de respostas no tópico. Feliz

Proberto, quanto ao avatar, erro meu. E quanto ao número, vamos ficar com o valor aproximado para deixar o site mais rápido para os usuários, tudo bem?

Troque o script por esse:

Código:
$(function() {
  var last, count, message;
  last = parseInt(/Página\s\d+\sde\s(\d+)/g.exec($('.pagination:first').text())[1]);
  count = $('.post').length - 1;
  if (last !== 1) {
    count = (count + 1) * (last - 1);
    message = 'Mais de ' + count + ' respostas neste tópico';
  } else {
    message = count + ' resposta' + (count > 1 ? 's' : '') + ' neste tópico'
  }
  $('.post:first').before('<div class="post-count">' + message + '</div>');
  $('.post .postprofile strong a').each(function(key, element) {
    var self, post;
    self = $(element);
    post = self.closest('.post');
    post.before('<div class="post-author"><img src="http://www.xtibia.com/forum//public/style_images/marble/post_' + (post.hasClass('online') ? 'on' : 'off') + 'line.png" /> ' + self.parent().get(0).outerHTML + '</div>');
    self.parent().next().remove();
    self.parent().remove();
  });
});

E adicione isso ao seu CSS:

Código:
.post-count {
  background: #2F558B url("http://www.xtibia.com/forum//public/style_images/marble/noise.png") repeat;
  color: #fff;
  text-shadow: rgba(0,0,0,0.25) 0px -1px 0px;
  padding: 12px;
  font-size: 14px;
  font-weight: 300;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: inset #778594 0px 1px 3px;
  -moz-box-shadow: inset #778594 0px 1px 3px;
  box-shadow: inset #778594 0px 1px 3px;
  overflow: hidden;
  margin-bottom: 2px;
  font-size: 11px;
}

Abraços. Feliz
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Membro Entusiasta

Tópico resolvido Re: Areá do topico

Mensagem por Hancki 10.04.14 17:46

Olá!

Kyo, ele realmente parece funcionar, aqui teve resultado, mas veja como ficam os nomes: http://prntscr.com/38qo06
É normal?

Hancki
Hancki

Hancki
Membro Entusiasta
Membro Entusiasta

Membro desde : 03/10/2009
Mensagens : 8190
Pontos : 12245

https://ajuda.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 17:49

Sim, segue o padrão do fórum passado: http://www.xtibia.com/forum/topic/180827-2-conteudo/

Eles mantém o nome em cima e não o repetem no avatar. Feliz
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Daemon 10.04.14 18:23

Se fosse PunBB facilitaria bastante, era só criar um Script com:
Código:
$(function(){
 var p = $('.main-head p.h2')[0];
 var paging = $('p.paging');
 var nf = $('.posthead').last().find('h2 strong').text().match(/\d+/g)-1;
 var link =  $('p.paging').find('img[alt="Seguinte"]').closest('a').attr('href');
if(!paging) {
    $(p).replaceWith('<span class="countpost">'+nf+'</span>');
}else if(paging) {
 $.get(link, function(data) {
    var nl = $('.posthead', data).last().find('h2 strong').text().match(/\d+/g)-1;
    $(p).replaceWith('<span class="countpost">'+nl+'</span>');
 });
}
});
E adicionar ao css:
Código:
.countpost:after {
  content: ' respostas neste tópico';
}
:/'
Daemon

Daemon
Super Membro

Membro desde : 02/03/2012
Mensagens : 1132
Pontos : 1825

http://bestskins.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 18:37

Mas Daemon, aqui:

Código:
$('.posthead').last().find('h2 strong').text().match(/\d+/g) - 1;

Ele só pegaria o número da última postagem da página, ao invés de pegar a quantidade de respostas do tópico, não?

Veja:

http://ajuda-punbb.forumeiros.com/t6-cancao-katyusha

Este tópico possui 16 respostas, mas se executar o script nessa página, conseguiríamos apenas 14. Esse foi o ponto em que chegamos. Tive que calcular o número de páginas para chegar a um número aproximado, como Mais de 15 respostas, pois não sei quantas respostas há na segunda página. Feliz
Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

  • 0

Tópico resolvido Re: Areá do topico

Mensagem por JScript 10.04.14 18:51

JScript

JScript
Super Membro

Membro desde : 15/03/2013
Mensagens : 1449
Pontos : 1901

http://jscript.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Daemon 10.04.14 18:56

Creio que este sim é o certo:
Código:
$(function(){
 var p = $('.main-head p.h2')[0];
 var paging = $('p.paging');
 var nf = $('.posthead').last().find('h2 strong').text().match(/\d+/g)-1;
 var link =  $('p.paging').not('img').find('a:last').attr('href');
if(!paging) {
    $(p).replaceWith('<span class="countpost">'+nf+'</span>');
}else if(paging) {
 $.get(link, function(data) {
    var nl = $('.posthead:last', data).find('h2 strong').text().match(/\d+/g)-1;
    $(p).replaceWith('<span class="countpost">'+nl+'</span>');
 });
}
});
Para PunBB claro.
Daemon

Daemon
Super Membro

Membro desde : 02/03/2012
Mensagens : 1132
Pontos : 1825

http://bestskins.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por proberto 10.04.14 19:39

Ai eu te pergunto. Qual script eu uso KKKKK tem um monte....
avatar

proberto
****

Membro desde : 21/09/2012
Mensagens : 223
Pontos : 374

http://tradebrasil.umforum.net/

Ir para o topo Ir para baixo

Tópico resolvido Re: Areá do topico

Mensagem por Kyo Panda 10.04.14 19:41

Kyo Panda

Kyo Panda
Hiper Membro

Membro desde : 08/01/2012
Mensagens : 4641
Pontos : 5939

https://ajuda.forumeiros.com

Ir para o topo Ir para baixo

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

- Tópicos semelhantes

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