Скрытый текст 3.1 (для IP.Board 3.1.x)

Хук требует модификации одного файла форума, поэтому помещен в раздел «Модификации». Но зато на такой большой хук только одна ручная правка smile
Принцип действия — содержимое блоков скрытого текста вырезается из сообщений и догружается отдельно через ajax с проверкой условий. При ajax-ответе в тему или нажатии плюска в репу скрытые поля обновляются без перезагрузки страницы. Весь скрытый текст идентифицируется md5-ключами, РАБОТАЕТ ВООБЩЕ ВЕЗДЕ на форуме, где работает javascript. Однако часть функционала (ответ в тему, плюс в репу) работает только в форумах (что логично).

На самом деле тег hide и его содержимое не вырезается из БД и так их хранится как есть. Таким образом, если вы захотите отказаться от хука — просто удалите bbcode «Скрытый текст» и после сброса кэша все теги сами собой раскроются.

Инструкция по установке:

1. Залить папку upload;
2. Установить хук hook.xml;
3. Импортировать bbcode.xml в список BBCode (удалить все старые hide, если есть);
4. Добавить в /admin/applications/forums/sources/classes/post/classPost.php после строки (3578):

$raw_post .= IPSText::raw2form( $postContent );

Строки:

if(preg_match_all(‘/([hide[^]]*](.*)[/hide])/iU’, $raw_post, $hides))
    {
        $raw_post = str_replace($hides[1], «», $raw_post);
    }


Инструкция по применению:

[hide]скрыть от гостей[/hide]

Дополнительные параметры:
* auth=»1″ — показывать только авторизованным
(по-умолчанию — «1»)
* thank=»1″ — показывать за плюсик в репутацию
(по-умолчанию — «0»)
* rep=»N» — показывать набравшим больше N баллов репутации
(по-умолчанию — «0»)
* reply=»1″ — показывать ответившим в теме после поста
(по-умолчанию — «0»)
* posts=»N» — показывать оставившим больше N постов на форуме
(по-умолчанию — «0»)
* group=»Первая,Вторая,третья» — показывать членам групп, перечислять группы через запятую не важно в каком регистре
(по-умолчанию — «any»)
* nick=»Ritsuka,idTails» — показывать пользователям с указанными никами (логинами), перечислять через запятую не важно в каком регистре
(по-умолчанию — «any»)

Пример употребления:

[hide auth=»1″ nick=»idTails»]Я тебя люблю![/hide]

Забрать модификацию:

Прикреплённые файлы:
Файл: ritsu_text.zip
Размер: [11,04 Kb] (забрали: 25 раз)