Внимание!
Не все расширения для phpBB 3.2 совместимы с phpBB 3.3, главным образом из-за неверного синтаксиса в определениях сервисов (отсутствия обрамляющих кавычек - '...').
Перед обновлением необходимо убедиться в совместимости всех расширений.
Рекомендуется предварительно тестировать обновление на копии конференции (локально или на сервере).

Spoiler / Споилер (Сполер Spoler)

Идеи для расширения функциональности phpBB 2.0.x
Mac
phpBB 1.4.2
Сообщения: 58
Стаж: 13 лет

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Mac »

MrCuper, присоединяюсь к вопросу.

У меня спойлер с заголовком вообще не работает (и с кавычками, и без). Все перекопал, не пойму, в чем дело. Старый был тоже на основе этого же, правда, кривоват, потомоу решил поставить ваш.

Еще маленький вопрос: картинка pic_loading.gif у кого-нибудь грузится? Когда и где она должна показываться? Не покажете скриншот?

woffi
phpBB 1.2.0
Сообщения: 17
Стаж: 13 лет 8 месяцев

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение woffi »

Картинка pic_loading.gif должна отображаться на месте загружаемого изображения до тех пор, пока оно не загрузится. На локальной машине и фотографиях небольшого объема Вы её просто не увидите. Также я сам лично не наблюдал её в Opera.

Насчет не работающего спойлера - скиньте в ЛС архивы файлов

Код: Выделить всё

## Files To Edit: 	includes/bbcode.php,
##	                templates/subSilver/bbcode.tpl, 
##	  		templates/subSilver/posting_body.tpl,
##			templates/subSilver/overall_header.tpl
##	  		posting.php,
##	  		language/lang_english/lang_main.php
Для наглядности можно два архива "до" и "после"

Спойлер целиком сделан на jQuery, поэтому может не работать банально из за javascript. Проверьте этот момент.

В версии 2.0.17 аналогичный косяк с заголовком спойлера. Возможно у Вас та же ситуация. Попробуйте в файле bbcode.php заменить строку

Код: Выделить всё

	$text = bbencode_first_pass_pda($text, $uid, '/\[spoiler=\\\\"(.*?)\\\\"\]/is', '[/spoiler]', '', false, '', "[spoiler:$uid=\\\"\\1\\\"]");
на

Код: Выделить всё

	$text = bbencode_first_pass_pda($text, $uid, '/\[spoiler=(\\\".*?\\\")\]/is', '[/spoiler]', '', false, '', "[spoiler:$uid=\\1]");
Последний раз редактировалось woffi 17.02.2009 12:35, всего редактировалось 1 раз.
Суздаль - жемчужина России!

Mac
phpBB 1.4.2
Сообщения: 58
Стаж: 13 лет

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Mac »

У меня этот pic_loading.gif что-то не наблюдается вообще нигде :)

Приаттачил свой bbcode.php - дело, очевидно, именно в нем.
Поясню, что работает все, кроме случая с шапкой. В этом случае выводится просто как текст, будто неизвестный bb-код:

Код: Выделить всё

[spoiler=fsdfsdf]фывыфв[/spoiler]
З.Ы. Пара замечаний. Стоит упомянуть, что в моде уже встроен мод ImgFit. А также стили желательно бы в style.css вынести, а также картинки в папку с картинками в шаблонах.
Вложения
bbcode.rar
(7.99 КБ) 339 скачиваний
Последний раз редактировалось Mac 17.02.2009 15:46, всего редактировалось 1 раз.

woffi
phpBB 1.2.0
Сообщения: 17
Стаж: 13 лет 8 месяцев

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение woffi »

Отредактировал свое предыдущее сообщение. У Вас та же проблема. Предложенное решение должно помочь.
Суздаль - жемчужина России!

Mac
phpBB 1.4.2
Сообщения: 58
Стаж: 13 лет

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Mac »

woffi, да, помогло. Спасибо. Но опять же присоединяюсь к просьбе MrCuper насчет кавычек. Как можно сделать так, чтобы работало без них? А также хотелось бы сохранить возможность применять бб-коды к заголовку, например:

Код: Выделить всё

[color=green][spoiler="fsdfsdf"][/color]bla[/spoiler]
З.Ы. Курсив и подчеркнутый работает и так.

woffi
phpBB 1.2.0
Сообщения: 17
Стаж: 13 лет 8 месяцев

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение woffi »

Добавлено спустя 12 минут 7 секунд:
Mac писал(а):У меня этот pic_loading.gif что-то не наблюдается вообще нигде :)
При входе в ветку сообщений видим свернутый спойлер.
Свернутый спойлер
Свернутый спойлер
Щелкаем по заголовку спойлера для его открытия. Начинает загружаться картинка. Пока загрузка не завершена - отображается наша гифка.
Загрузка картинки
Загрузка картинки
Загрузка завершилась, вместо гифки показана конечная картинка
Картинка загружена
Картинка загружена
Добавлено спустя 39 минут 19 секунд:
Сорри. Косяк. Не работает предложенная схема с кавычками :)
Суздаль - жемчужина России!

Mac
phpBB 1.4.2
Сообщения: 58
Стаж: 13 лет

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Mac »

woffi, не помогает ни добавление строки, ни замена ею предыдущей.

З.Ы. Вообще у меня 2.0.23) (правда, в кодах, возможны отличия)

woffi
phpBB 1.2.0
Сообщения: 17
Стаж: 13 лет 8 месяцев

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение woffi »

По кавычкам...
В файле bbcode.php добавьте после

Код: Выделить всё

	$text = preg_replace("/\[spoiler:$uid=\"(.*?)\"\]/si", $bbcode_tpl['spoiler_title_open'], $text);
строку

Код: Выделить всё

	$text = preg_replace("/\[spoiler:$uid=(.*?)\]/si", $bbcode_tpl['spoiler_title_open'], $text);
а также (это важно и косяк как раз в этом на моем тестовом форуме) заменить строку

Код: Выделить всё

$text = bbencode_first_pass_pda($text, $uid, '/\[spoiler=...;
на

Код: Выделить всё

$text = bbencode_first_pass_pda($text, $uid, '/\[spoiler=(.*?)\]/is', '[/spoiler]', '', false, '', "[spoiler:$uid=\\1]");
Если я ничего не напутал и не забыл - заголовок будет работать как с кавычками, так и без. Заработало также и на версии 2.0.23.
Глюк был в тестах. Если что-то отображается некорректно - откройте сообщение на редактирование, посмотрите заголовки и пересохраните. Должно получиться.

По цветам пока ничего конкретного не скажу, поскольку там надо стили копать. Для тэгов b u i просто применяется паттерн span class=. Тут надо подумать... Кстати, проверьте скрытый спойлером текст, поскольку как я понял к нему курсив или подчеркнутость применяется вместе с заголовком спойлера. Быть может стиль скрытого текста можно перезадать явно - но это не есть хорошо.

Добавлено спустя 8 минут 27 секунд:
Я уже сам запутался что к чему и почему, но тесты показывают, что на обеих версиях алгоритм работает.
Суздаль - жемчужина России!

Mac
phpBB 1.4.2
Сообщения: 58
Стаж: 13 лет

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Mac »

Работает, но есть небольшое "но". В таком случае работает некорректно:

Код: Выделить всё

[spoiler="Привет", мир]abc[/spoiler]
либо в других вариациях.

Странная вещь с нерабочей pic_loading.gif. Я posting.php и posting_body.tpl не правил (у меня свои). Может быть в этом причина?
А также картинки со скриптами перенесены в папку с шаблонами и misc/js соответственно. Пути вроде изменил все: в spoiler.js:

Код: Выделить всё

var loading_icon = '<a href="'+ src +'" target="_blank"><img src="./templates/subSilver/images/pic_loading.gif" alt="" border="0"/></a>';
и overal_header.tpl:

Код: Выделить всё

<script language="JavaScript" type="text/javascript" src="misc/js/jquery.pack.js"></script>
<script language="JavaScript" type="text/javascript" src="misc/js/spoiler.js"></script>

woffi
phpBB 1.2.0
Сообщения: 17
Стаж: 13 лет 8 месяцев

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение woffi »

Ну для комбинированного использования кавычек как бы уже ситуация требует более глубокого вмешательства в код. Согласитесь, в тэге quote вообще нельзя без кавычек имя цитируемого указывать.

А изображения плюсика/минусика рядом с заголовком спойлера видны?
Последний раз редактировалось woffi 18.02.2009 9:06, всего редактировалось 1 раз.
Суздаль - жемчужина России!

Mac
phpBB 1.4.2
Сообщения: 58
Стаж: 13 лет

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Mac »

да, видны. Дело, очевидно, не в путях, потому что замена:

Код: Выделить всё

<img src="./templates/subSilver/images/pic_loading.gif" alt="" border="0"/>
на текст тоже не отображается.

Все-таки, видимо, надо курить в сторону стандартизации применения кавычек... Смайлы в заголовке спойлера портят его.

Mac
phpBB 1.4.2
Сообщения: 58
Стаж: 13 лет

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Mac »

Сейчас обнаружил уязвимость в шапке спойлера. Возможно использование html-кодов и вытекающая отсюда возможность xss-атаки. Будьте внимательны.

Аватара пользователя
SMM
phpBB 1.4.2
Сообщения: 70
Стаж: 14 лет
Откуда: Казань
Благодарил (а): 9 раз

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение SMM »

исправления найденной уязвимости для мода спойлера на текущий момент?
p.s. о которых говорит Mac
Спорьте, заблуждайтесь, ошибайтесь, но, ради бога, размышляйте, и хотя криво, да сами.

Аватара пользователя
SMM
phpBB 1.4.2
Сообщения: 70
Стаж: 14 лет
Откуда: Казань
Благодарил (а): 9 раз

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение SMM »

проблему с уязвимостью можно решить только удалением возможности показа спойлера с комментарием в шапке?
Спорьте, заблуждайтесь, ошибайтесь, но, ради бога, размышляйте, и хотя криво, да сами.

Lektor
phpBB 2.0.7
Сообщения: 574
Стаж: 14 лет 3 месяца

Re: Spoiler / Споилер (Сполер Spoler)

Сообщение Lektor »

С чего решили что есть какая-то проблема ?

PS на заборе тоже написано, а там дрова ..
PPS "Сейчас обнаружил уязвимость в шапке спойлера." научить оформлять багтрак ?
Правильное описание проблемы — половина её решения.

Вернуться в «Запросы модов для phpBB 2.0.x»