Página 1 de 2
Adicionar como Inimigo
Enviado: 20 Jul 2014, 11:24
por sr.x
Qual a URL do seu fórum: srx267.com
Tipo de Hospedagem: Pago
Qual a versão do phpBB: phpBB 3.0.0
É um novo ou uma conversão: Instalação Limpa
Usuário de teste: Usuário: n/d Senha:
Estilos instalados: prosilver
Modificações instaladas: n/d
Qual seu nivel de experiência: Iniciante
Quando começou o problema:
Descreva seu problema: A ferramenta \"Adicionar como Inimigo\" nos permite ignorar as mensagens do \"inimigo\". Porém, o \"inimigo\" continua vendo nossas mensagens e até o nosso perfil.
Minha pretensão é alterar a ferramenta, de modo que o inimigo não possa mais ver as mensagens do usuário que o bloqueou.
Isso é possível?
Desde já, agradeço a atenção.
Re: Adicionar como Inimigo
Enviado: 21 Jul 2014, 05:51
por _Vinny_
Correto, de fato a ferramenta funciona para que você não veja as mensagens de seu inimigo e não o contrario.
Re: Adicionar como Inimigo
Enviado: 21 Jul 2014, 07:58
por sr.x
Mas não há como alterar a ferramenta, para o inimigo não ver as mensagens do bloqueador?
Re: Adicionar como Inimigo
Enviado: 22 Jul 2014, 19:53
por sr.x
up
Re: Adicionar como Inimigo
Enviado: 23 Jul 2014, 00:34
por _Vinny_
Acredito que não.
Re: Adicionar como Inimigo
Enviado: 23 Jul 2014, 08:24
por sr.x
Eu estou pensando se não dá pra fazer uma gambiarra.
Encontrei este código, que serve para impedir que o inimigo poste em um tópico aberto por quem o bloqueou. Testei o código, e ele realmente funciona:
Código: Selecionar todos
/*** 2011-09-01 BEGIN AmigoJack
Let user not reply if he is a foe for the topic author ***/
switch( $mode ) {
case 'bump':
case 'reply':
case 'quote':
$sql= 'SELECT sum( foe ) AS cnt
FROM '. ZEBRA_TABLE. '
WHERE user_id= '. $post_data['topic_poster']. '
AND zebra_id= '. $user-> data['user_id'];
$result= $db->sql_query( $sql );
$aFoeReply= $db-> sql_fetchrow( $result );
$db-> sql_freeresult( $result );
if( $aFoeReply['cnt'] ) {
$user-> setup( array( 'posting' ) );
trigger_error( 'USER_CANNOT_REPLY' ); // Change to a more appropriate message
}
break;
}
Zebra é o arquivo que gerencia os amigos e inimigos.
Eu fui verificar o arquivo "view topic.php" e me parece que este trecho é o responsável por impedir que o usuário veja as postagens do inimigo:
Código: Selecionar todos
'hide_post' => ($row['foe'] && ($view != 'show' || $post_id != $row['post_id'])) ? true : false,
Ou este trecho:
Código: Selecionar todos
'S_IGNORE_POST' => ($row['hide_post']) ? true : false,
'L_IGNORE_POST' => ($row['hide_post']) ? sprintf($user->lang['POST_BY_FOE'], get_username_string('full', $poster_id, $row['username'], $row['user_colour'], $row['post_username']), '<a href="' . $viewtopic_url . "&p={$row['post_id']}&view=show#p{$row['post_id']}" . '">', '</a>') : ''
Estou pensando se não dá pra reaproveitar o código acima. Hoje, ele manda A ignorar B. Não dá para alterá-lo, de forma que B também ignore A?
Re: Adicionar como Inimigo
Enviado: 24 Jul 2014, 16:35
por sr.x
Olá.
Eu fiz uma experiência com o arquivo viewtopic.php. A experiência foi a seguinte: eu localizei o trecho abaixo:
Código: Selecionar todos
'hide_post' => ($row['foe'] && ($view != 'show' || $post_id != $row['post_id'])) ? true : false,
E substitui o foe por friend.
O resultado foi o seguinte: as mensagens de todos os friends foram ocultadas.
Logo, eu acredito que, se substituir o foe por algum termo, código ou variável, terei obtido o resultado que eu busco.
Por favor, se alguém entende de phpbb, me ajude.
Re: Adicionar como Inimigo
Enviado: 25 Jul 2014, 21:03
por sr.x
Estou jogando a toalha. Depois de pesquisar por diversos fóruns, mods, inclusive gringos, não consegui a ajuda que estava procurando.
Sendo assim, vamos ao plano B: alguém me recomenda um profissional em phpbb que faça este script para mim?
Re: Adicionar como Inimigo
Enviado: 25 Jul 2014, 21:22
por robra
Não sou programador, mas tenta substituindo
'show'
por
'hide'
, tanto para
foe
como para
friend
e veja no que vai dar...
Abraço.
![Imagem](http://www.gsmfans.com.br/Smileys/GSMFans/cool.gif)
Re: Adicionar como Inimigo
Enviado: 25 Jul 2014, 21:47
por sr.x
se você substitui 'show' por 'hide', a ferramenta deixa de funcionar. Isso porque !='show' significa "não mostrar", enquanto !='hide' significa "não esconder".
Se minha intenção é justamente esconder as postagens, porque diabos eu instruiria a função a "não esconder"???