[Расширение] (phpBB 3.1/3.2) BB2Spoiler: простой спойлер для форума

Простой мод спойлера на аяксе для форума phpBB 3

Аватара пользователя
PPK
Администратор
Благодарил (а): 74 раза
Поблагодарили: 1542 раза
Сообщения: 9651
Зарегистрирован: 21 мар 2009, 17:13
Сообщение

[Расширение] (phpBB 3.1/3.2) BB2Spoiler: простой спойлер для форума

02 дек 2014, 17:29

Описание
Порт мода BB2Spoiler - мод спойлера для phpBB3 для форума phpBB3 (только версии 3.1 и выше)
Плавное раскрытие/скрытие содержимого спойлера
Подгрузка изображений находящихся в спойлере после открытия спойлера, а также изображений добавленных через тег spimage + анимированная картинка во время подгрузки
Уменьшения размеров изображений добавленных в сообщение тегом spimage
Фильтрация изображений с нежелательных доменов (ручное добавление в файле)
Переопределение адресов изображений или подмена на изображение миниатюру
Возможность скрывать изображения добавленные через тег spimage
Возможность скрывать изображения добавленные через тег spimage, находящиеся в подписях пользователей




Установка
Распаковать архив, в корневой директории форума в директории /ext/ создать директорию ppk, скопировать содержимое архива в эту директорию, т.е. путь файла composer.json из архива у вас должен выглядеть следующим образом: /ext/ppk/bb2spoiler/composer.json
Включить расширение в адм. разделе: адм. раздел - вкладка Персонализация - Управление расширениями, напротив BB2Spoiler нажать ссылку Включить

Добавить бб-коды
Администраторский раздел - Сообщения - BBCodes - Добавить BBCode, в поле Использование BBCode вставить:

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

[spoiler]{TEXT}[/spoiler]
в поле Замена HTML вставить:

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

<div class="sp-wrap"><div class="sp-body" title="Скрытый текст">{TEXT}</div></div>
в поле Подсказка вставить:

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

Спойлер (скрытый текст) [spoiler]Текст[/spoiler]
в поле Настройки отметить Показывать на странице ответа

Если нужен вариант спойлера с возможностью определять заголовок
Администраторский раздел - Сообщения - BBCodes - Добавить BBCode, в поле Использование BBCode вставить:

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

[spoiler="{INTTEXT}"]{TEXT}[/spoiler]
в поле Замена HTML вставить:

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

<div class="sp-wrap"><div class="sp-body" title="{INTTEXT}">{TEXT}</div></div>
в поле Подсказка вставить:

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

Спойлер (скрытый текст) [spoiler="Заголовок"]Текст[/spoiler]
в поле Настройки отметить Показывать на странице ответа

Для обработки изображений спойлером нужно создать бб-код
Администраторский раздел - Сообщения - BBCodes - Добавить BBCode, в поле Использование BBCode вставить:

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

[spimage]{URL}[/spimage]
в поле Замена HTML вставить:

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

<var title="{URL}" class="postImg" alt="{L_IMAGE}" /></var>
в поле Подсказка вставить:

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

Изображение для спойлера [spimage]адрес изображения[/spimage]
в поле Настройки отметить Показывать на странице ответа
Администраторский раздел - Сообщения - BBCodes - Добавить BBCode, в поле Использование BBCode вставить:

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

[spoiler={SIMPLETEXT;optional}]{TEXT}[/spoiler]
в поле Замена HTML вставить:

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

<div class="sp-wrap"><div class="sp-body" title="{SIMPLETEXT}">{TEXT}</div></div>
в поле Подсказка вставить:

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

Спойлер (скрытый текст) [spoiler=Заголовок]Текст[/spoiler]
в поле Настройки отметить Показывать на странице ответа

Администраторский раздел - Сообщения - BBCodes - Добавить BBCode, в поле Использование BBCode вставить:

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

[spimage]{URL}[/spimage]
в поле Замена HTML вставить:

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

<var title="{URL}" class="postImg" alt="{L_IMAGE}" /></var>
в поле Подсказка вставить:

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

Изображение для спойлера [spimage]адрес изображения[/spimage]
в поле Настройки отметить Показывать на странице ответа

Обновление
Для обновления расширения нужно отключить расширение в адм. разделе, заменить файлы расширения новыми файлами и включить расширение заново. Перед обновлением форума с версий 3.1 до 3.2 и обновлении этого расширения, необходимо удалить бб-коды которые указаны в инструкции для установки этого расширения для версии 3.1 и добавить бб-коды указанные для версии 3.2, иначе из-за багов в системе работы бб-кодов в текущей версии phpBB (3.2) при обновлении с версии 3.1 перестанут работать спойлеры с кавычками внутри spoiler="Скрытый текст", а так же спойлеры без текста, если использовать одновременно спойлеры с текстом и без него.

Настройка
Т.к. это "простая" версия спойлера, у этого спойлера нет никаких настроек в адм. разделе, все настройки делаются через файл /ext/ppk/bb2spoiler/js/spoiler.js
Ширина изображений

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

	var maxW = 200;
Скрывать изображения в сообщениях

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

	var hidePostImg = false;
Скрывать изображения в подписях пользователей

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

	var hideSigImg = false;
Забаненные хостинги изображений

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

		var banned_image_hosts = /imagebanana|hidebehind/i;//banned image hosts
Подмена полноразмерных изображений на миниатюры (пример для keep4u)

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

		// keep4u
		if (src.match(/keep4u/i)) {
			var new_src = src.replace(/http:\/\/keep4u.ru\/imgs\/\w\/(.*)\/(.*)\.(.*)/, "http://keep4u.ru/imgs/s/$1/$2.$3");
			//var new_url = src.replace(/http:\/\/keep4u.ru\/imgs\/\w\/(.*)\/(.*)\.(.*)/, "http://keep4u.ru/full/$1/$2/$3");
			$img.attr('src', new_src).addClass('clickable');
		}
Примечания
Для обработки изображения спойлером его нужно заключать в тег spimage
В phpBB 3.1 для бб-кодов добавленных через адм. раздел так-же как и в phpBB 3.0 нет возможности обрабатывать вложенные друг в друга идентичные бб-коды, поэтому на этой версии форума нет поддержки вложенных друг в друга спойлеров.

Скачать расширение
С форума (необходимо зарегистрироваться и/или войти на форум)
bb2spoiler_1.1.2.zip
С GIT репозитория
https://gitlab.com/protoneutron/bb2spoiler_se

2014.12.02 - 1.0.0 Начальная версия
2015.05.04 - 1.0.1 Добавлены файлы для работы спойлера в оконных режимах работы форума, т.е. без вывода футеров и хидеров форума.
2017.01.18 - 1.1.0 Изменения под версию форума phpBB 3.2
2019.04.29 - 1.1.1 Небольшое исправление, расширение переименовано в BB2Spoiler
2019.05.22 - 1.1.2 Небольшие исправления и изменения

У вас нет необходимых прав для просмотра вложений в этом сообщении.
Go
Godlakz
Благодарил (а): 4 раза
Сообщения: 5
Зарегистрирован: 29 мар 2015, 06:45
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 08:03

Хороший спойлер, но работать не хочет. Не парсится BBCode.
Аватара пользователя
PPK
Администратор
Благодарил (а): 74 раза
Поблагодарили: 1542 раза
Сообщения: 9651
Зарегистрирован: 21 мар 2009, 17:13
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 10:13

этот спойлер не парсит бб-коды, бб-коды парсит ваш форум, для этого, бб-код спойлера нужно добавить на форум через адм. раздел.
Go
Godlakz
Благодарил (а): 4 раза
Сообщения: 5
Зарегистрирован: 29 мар 2015, 06:45
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 11:46

Я устанавливал по инстукции. Расширение спойлера включил, добавил вручную ббкоды здесь указанные. Не работает может конфликтует с другими расширениями грешил на Advanced BBCode Box но после отключения тоже самое да и почти все лишние ббкоды которые идут с Advanced BBCode я удалил.

Вот этот файл /ext/ppk/bb2spoiler_se/js/spoiler.js я не трогал вообще.

Вот еще какая штука если замена в BBCode как Вы указали:

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

<div class="sp-wrap"><div class="sp-body" title="Скрытый текст">{TEXT}</div></div>
то спойлер выводится полоской см скрин.



А если делаю вот к примеру такую замену:

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

<div class="sp-wrap"><div class="sp-head folded clickable">Скрытый текст</div><div class="sp-body inited" title="" style="display: none;"><div class="clear"></div>{TEXT}<div class="clear"></div></div><div class="sp-head unfolded clickable" style="display: none;">Закрыть</div></div>
то уже начинает хоть как то пусть с глюками но "работать"))



Вот мои ббкоды:



Заранее благодарю может что подскажите.
Аватара пользователя
PPK
Администратор
Благодарил (а): 74 раза
Поблагодарили: 1542 раза
Сообщения: 9651
Зарегистрирован: 21 мар 2009, 17:13
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 12:32

Godlakz писал(а):то спойлер выводится полоской см скрин.
ссылку на форум, или смотрите в консоли js наличие ошибок ..
Go
Godlakz
Благодарил (а): 4 раза
Сообщения: 5
Зарегистрирован: 29 мар 2015, 06:45
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 13:08

Чтото я совсем так и непонял поставил ббкод стандартно опять начал писать так-же полоска но перезагрузил страницу и все работает как надо на 100% :D просто он сразу у меня не отображал спойлер а только полоску что ввело меня в заблуждение после перезагрузки страница все норамально :shock:

Добавлено спустя 5 минут 28 секунд:
Возможно это с быстрым ответом связано, там аякс подключен, и при отправке походу глюк. Отправил сообщение через обычный ответ страница запостилась с перезагрузкой и отобразился спойлер как и нужно. Спасибо за помощь расширение рабочее. У вас очень хороший форум, и ваши разработки.
Аватара пользователя
PPK
Администратор
Благодарил (а): 74 раза
Поблагодарили: 1542 раза
Сообщения: 9651
Зарегистрирован: 21 мар 2009, 17:13
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 13:20

да, там при предпросмотре ответа через форму быстрого ответа используется аякс, поэтому спойлер не обрабатыватся, дайте ссылку на этот мод ..
Go
Godlakz
Благодарил (а): 4 раза
Сообщения: 5
Зарегистрирован: 29 мар 2015, 06:45
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 13:32

Аватара пользователя
PPK
Администратор
Благодарил (а): 74 раза
Поблагодарили: 1542 раза
Сообщения: 9651
Зарегистрирован: 21 мар 2009, 17:13
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 14:12

/ext/tatiana5/quickreply/event/listener.php после

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

				//ABBC3
				'S_ABBC3_INSTALLED'		=> $this->phpbb_extension_manager->is_enabled('vse/abbc3'),
добавить

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

				//BB2SPOILER_SE
				'S_BB2SPOILER_SE_INSTALLED'		=> $this->phpbb_extension_manager->is_enabled('ppk/bb2spoiler_se'),
/ext/tatiana5/quickreply/styles/prosilver/template/event/overall_footer_after.html после

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

				$('#preview .content').html(res.PREVIEW_TEXT);
добавить

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

				<!-- IF S_BB2SPOILER_SE_INSTALLED -->
				$('#preview .content').bb2Spoiler();
				<!-- ENDIF -->
после

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

				if(res.prew_url)
				{
					$('#post_ajax').before('<div class="post bg1"><div class="inner"><a href="' + res.prew_url + '">{LA_QR_PREW_POSTS}</a></div></div>');
				}
добавить

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

				<!-- IF S_BB2SPOILER_SE_INSTALLED -->
				$('#post_ajax').bb2Spoiler();
				<!-- ENDIF -->
Go
Godlakz
Благодарил (а): 4 раза
Сообщения: 5
Зарегистрирован: 29 мар 2015, 06:45
Сообщение

Re: [Расширение] Спойлер BB2Spoiler Simple Edition

29 мар 2015, 14:45

PPK, благодарю. Все работает теперь идеально как в предпросмотре так и при отправке в быстром ответе. :good:

Вернуться в «Расширения для phpBB 3.1-3.3»