Страница 8 из 9
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 11:18
Mac
MrCuper, присоединяюсь к вопросу.
У меня спойлер с заголовком вообще не работает (и с кавычками, и без). Все перекопал, не пойму, в чем дело. Старый был тоже на основе этого же, правда, кривоват, потомоу решил поставить ваш.
Еще маленький вопрос: картинка pic_loading.gif у кого-нибудь грузится? Когда и где она должна показываться? Не покажете скриншот?
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 12:00
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]");
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 12:22
Mac
У меня этот pic_loading.gif что-то не наблюдается вообще нигде
Приаттачил свой bbcode.php - дело, очевидно, именно в нем.
Поясню, что работает все, кроме случая с шапкой. В этом случае выводится просто как текст, будто неизвестный bb-код:
З.Ы. Пара замечаний. Стоит упомянуть, что в моде уже встроен мод ImgFit. А также стили желательно бы в style.css вынести, а также картинки в папку с картинками в шаблонах.
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 12:37
woffi
Отредактировал свое предыдущее сообщение. У Вас та же проблема. Предложенное решение должно помочь.
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 13:13
Mac
woffi, да, помогло. Спасибо. Но опять же присоединяюсь к просьбе
MrCuper насчет кавычек. Как можно сделать так, чтобы работало без них? А также хотелось бы сохранить возможность применять бб-коды к заголовку, например:
Код: Выделить всё
[color=green][spoiler="fsdfsdf"][/color]bla[/spoiler]
З.Ы. Курсив и подчеркнутый работает и так.
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 14:41
woffi
Добавлено спустя 12 минут 7 секунд:
Mac писал(а):У меня этот pic_loading.gif что-то не наблюдается вообще нигде
При входе в ветку сообщений видим свернутый спойлер.
- Свернутый спойлер
Щелкаем по заголовку спойлера для его открытия. Начинает загружаться картинка. Пока загрузка не завершена - отображается наша гифка.
- Загрузка картинки
Загрузка завершилась, вместо гифки показана конечная картинка
- Картинка загружена
Добавлено спустя 39 минут 19 секунд:
Сорри. Косяк. Не работает предложенная схема с кавычками
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 15:38
Mac
woffi, не помогает ни добавление строки, ни замена ею предыдущей.
З.Ы. Вообще у меня 2.0.23) (правда, в кодах, возможны отличия)
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 15:40
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 секунд:
Я уже сам запутался что к чему и почему, но тесты показывают, что на обеих версиях алгоритм работает.
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 16:02
Mac
Работает, но есть небольшое "но". В таком случае работает некорректно:
либо в других вариациях.
Странная вещь с нерабочей 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>
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 16:12
woffi
Ну для комбинированного использования кавычек как бы уже ситуация требует более глубокого вмешательства в код. Согласитесь, в тэге quote вообще нельзя без кавычек имя цитируемого указывать.
А изображения плюсика/минусика рядом с заголовком спойлера видны?
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 17.02.2009 16:42
Mac
да, видны. Дело, очевидно, не в путях, потому что замена:
Код: Выделить всё
<img src="./templates/subSilver/images/pic_loading.gif" alt="" border="0"/>
на текст тоже не отображается.
Все-таки, видимо, надо курить в сторону стандартизации применения кавычек... Смайлы в заголовке спойлера портят его.
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 18.02.2009 6:44
Mac
Сейчас обнаружил уязвимость в шапке спойлера. Возможно использование html-кодов и вытекающая отсюда возможность xss-атаки. Будьте внимательны.
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 18.02.2009 18:29
SMM
исправления найденной уязвимости для мода спойлера на текущий момент?
p.s. о которых говорит Mac
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 07.03.2009 20:54
SMM
проблему с уязвимостью можно решить только удалением возможности показа спойлера с комментарием в шапке?
Re: Spoiler / Споилер (Сполер Spoler)
Добавлено: 08.03.2009 8:05
Lektor
С чего решили что есть какая-то проблема ?
PS на заборе тоже написано, а там дрова ..
PPS
"Сейчас обнаружил уязвимость в шапке спойлера." научить оформлять багтрак ?
Правильное описание проблемы — половина её решения.