ajuda [Hide Images from Guests]

Started by Isa.F, March 09, 2014, 11:46:29 PM

Previous topic - Next topic

Isa.F

 Boa noite! Tenho este mod instalado há muito tempo Hide Images from Guests http://custom.simplemachines.org/mods/index.php?mod=1942

Mas queria fazer uma alteração...


Gostava que o mod só escondesse as imagens, em algumas salas, mas noutras salas, deixasse as imagens visíveis, ou seja, no fundo gostava que o mod não atuasse em algumas salas...

Será possível?


Obrigada!  ;)

margarett

Deve dar, o código é relativamente simples. Vou dar uma espreitadela ;)
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

margarett

Yup, cá está.

Edita o ficheiro Sources/Subs-HideImages.php

Encontra:
global $user_info, $txt;
Substitui por:
global $user_info, $txt, $board;

Adiciona a seguir a esta linha que acabaste de modificar o seguinte:
$exclude_board=array(1, 2, 3);
dentro daquele array(), colocas, separado por vírgulas, o ID de cada um dos quadros que queres permitir aos visitantes que vejam as imagens. 1, 2, 3 eram exemplos ;)

Encontra:
$code['content'] = $user_info['is_guest'] ? $txt['prevent_view_pic'] . '<br />' : (isset($code['parameters']) ?
'<img src="$1" alt="{alt}"{width}{height} class="bbc_img resized" />' : '<img src="$1" alt="" class="bbc_img" />');
$code['disabled_content'] = $user_info['is_guest'] ? $txt['prevent_view_pic'] . '<br />' : '($1)';

Substitui por:
$code['content'] = $user_info['is_guest'] && !in_array($board, $exclude_board) ? $txt['prevent_view_pic'] . '<br />' : (isset($code['parameters']) ?
'<img src="$1" alt="{alt}"{width}{height} class="bbc_img resized" />' : '<img src="$1" alt="" class="bbc_img" />');
$code['disabled_content'] = $user_info['is_guest'] && !in_array($board, $exclude_board) ? $txt['prevent_view_pic'] . '<br />' : '($1)';


;)
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Isa.F

Perfeito!  ;D Resultou!  :D

Obrigada, margarett!  ;)

Isa.F

Pois que isto não me correu nada bem desta vez....  :-[

Como tive que reinstalar o fórum, este ficheiro estava virgem também, e então fui tentar modifica-lo, tal como havia feito há uns meses, so que desta vez deu-me este erro:

Parse error: syntax error, unexpected T_EXIT in /home/pedacinh/public_html/Sources/Subs-HideImages.php on line 1

:-[

O que se passa desta vez...?  :-[


Obrigada....

margarett

Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Isa.F

Margarett!!!  :laugh: Ja estavamos a sentir a tua falta  :P


Olha, vou anexar o ficheiro, mas tenho a dizer-te que aquilo que me aconteceu nunca me tinha acontecido tal coisa. Passo a explicar:

Eu reinstalei o fórum do zero, reinstalei os mods do zero, e depois, um a um, foi fazendo aquelas pequenas personalizações. Mas antes de modificar seja o que for eu faço sempre um backup antes pois tenho o péssimo habito de nunca testar nada num fórum teste, é sempre online a vivo e a cores, lol, e como tal tenho que ter os ficheiros sempre á mao, e sempre que a coisa dá para o torto, eu imediatamente reponho o ficheiro original que tinha guardado antes de lhe mexer.

Pois bem, acho que foi, se bem me lembro, a única vez que isto não funcionou.


Eu peguei no tal SubsHideImages.php, fiz as alterações tal igual como me tinhas dito aqui há meses e que na altura tinha resultado, e imediatamente o fórum foi abaixo com o tal erro 

Parse error: syntax error, unexpected T_EXIT in /home/pedacinh/public_html/Sources/Subs-HideImages.php on line 1


Eu, muito tranquila, pego então no anterior ficheiro que tinha feito o backup antes da modificação manual, reponho, mas qual não é o meu espando quando percebo que o erro se mantem...  :o


Comecei a ficar preocupada, então fiz novamente o download do mod, e enviei o ficheiro SubsHideImages.php para o meu fórum. Esperei que desse certo, mas não deu!  :o

Continuava com o fórum em baixo e com o mesmíssimo erro:

Parse error: syntax error, unexpected T_EXIT in /home/pedacinh/public_html/Sources/Subs-HideImages.php on line 1

Fiquei tao espantada e assustada, que achei que fosse do IE, abri o Chrome, mas também estava a dar o mesmo erro...  :o Mesmo depois de eu ter reposto o ficheiro original!  :o E tinha sido o único que eu tinha mexido!  :o


Então, como estava a ver as coisas mal paradas, e como tinha feito o backup de todos os ficheiros do fórum minutos antes, resolvi transferir TODO o backup de ficheiros para o fórum. Mas o erro era exactamente o mesmo!!!  :o

Fui sendo cada vez mais agressiva, e apaguei todos os ficheiros do fórum, fiquei sem nenhum, e so depois enviei TODO o backup do furum!! E mesmo assim o erro se mantinha!!!  :o


Ora já estava a ficar um caso extremo, e então tive que fazer o que já fiz mil e uma vezes nesta semana: apagar tudo e reinstalar o fórum do zero....  :-[


Toca a fazer tudo do inicio...  8) Depois do fórum instalado virgem, o site estava finalmente novamente online, em tema default, mas enfim, lá estava ele. Sem erros. Achei que o pior já tinha passado, e então tentei enviar os ficheiros TODOS do tal backup que tinha feito antes da modificação do Subs-HideImages.php para o fórum reinstalado, e adivinha o que me deu novamente? O mesmíssimo erro!!  :o

E para o resolver novamente, tive que voltar novamente á estava zero, apagar todos os ficheiros do fórum, reinstalar o fórum do zero, passar para lá os pacotes, reinstala-los um a um e personaliza-los novamente um a um...  :-\


Bolas para isto. Confesso que instalar mods é das minhas coisas preferidas, mas esta semana está a ser demais, já estou a ficar com calos nos dedos de tanto "instala-desinstala-instala"  8)



Resumindo: preciso que vejas bem no ficheiro o que posso alterar, para não cometer o mesmo erro...

E em segundo lugar, gostaria que se pudesses, me explicasses que tipo de erro é esse que me surgiu, como posso evita-lo, e como posso agir caso me aconteça esse erro novamente, sem ter que reinstalar tudo de novo........  :-[ É que das outras vezes eu envio o ficheiro pré-alteração e imediatamente fica tudo ok, mas desta vez o fórum ficou mesmo "ofendido", lol, e não permitiu voltar atrás, só recuperou quando reinstalado do zero... Haverá outra maneira... no caso de isto me acontecer novamente?  :-[



Obrigada!  ;)



EDIT: percebi agora que devo estar no topo do ranking de posts mais longos... ups...  O:) Peço desculpa, mas tinha mesmo que desabafar isto...  O:) até porque queria muito perceber o que se passou e como posso resolver no futuro  ;)

margarett

Isso é um pincel :P Eu também vi mal (estava a ver no telemóvel). Então:

QuoteParse error: syntax error, unexpected T_EXIT in /home/pedacinh/public_html/Sources/Subs-HideImages.php on line 1

Isto quer dizer que foi encontrado um fim de ficheiro inesperado (T_EXIT) na linha 1 de um ficheiro. Ora um ficheiro não acaba na linha 1, começa :P O erro acontece assim porque o PHP processa os ficheiros conforme vão sendo requeridos. Quando esse ficheiro começa a ser processado, é detectado o final inesperado do ficheiro anterior.

Este erro é normalmente provocado pela falta de uma chaveta "}" no final de uma função. Como as funções não podem ser processadas em multiplos ficheiros, ao abrir um novo ficheiro sem terminar o processamento de uma função em aberto esse erro é disparado.

Não é neste ficheiro que se encontra o erro. Daí que repor o backup dele não te resolva o problema ;)
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Isa.F

Ok, tudo isso faz muito sentido... mas tenho duas duvidas:

1º Se o erro não é no ficheiro subs-hideImages.php, então porque é que só surge quando eu modifico esse ficheiro?  ??? É que neste momento o fórum está a funcionar bem... So quando mexo nele é que vai abaixo...


2º Se o erro não é no ficheiro subs-hide.Images.php então qual o ficheiro que está a causar o erro? Como eu o procuro?  ???


Obrigada!  ;)

margarett

Oi ;)

1- só vendo. Manda-me o ficheiro alterado mas não o carregues. Ainda assim, as primeiras linhas de um ficheiro costumam ser comentários, é estranho.

2- não faço ideia :P a sequência de carregamento de ficheiros não é nada linear. Sei que começa no index.php e termina no ficheiro do template adequado ao que estás a fazer. Lá pelo meio... Não faço ideia :(
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Advertisement: