Применение библиотеки HTMLPurifier в IPB - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Применение библиотеки HTMLPurifier в IPB

#1 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 02 Март 2016 - 09:24

Ранее задавался данным вопрос, но так ответа не получил. Сейчас применяю стандартную библиотеку, скаченную с http://htmlpurifier.org/.

Хотелось бы лишний раз не нагружать файлами, библиотеками и тд. А применить уже готовую сконфигурированную разработчиками ipb.

Необходимо проверить пользовательский html на наличие скриптов, вредоносного кода и тд. Прежде чем добавим его в базу, без сущьностей. В чистом виде html....

Соответсвено вопрос к вам, как это сделать применяя готовую сконфигурированную библию от ipb. Возможно ли это сделать и назначение ее немного иное?
0

#2 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 688
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 02 Март 2016 - 10:14

Вам же сказали использовать для этого classes_editor_composite. Он специально занимается обработкой текста этой библиотекой где происходит конфигурация htmlpurifier и предварительная обработка текста. Не надо заниматься херней.
0

#3 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 04 Март 2016 - 08:10

Такой вопрос
    $classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/classes/editor/composite.php', 'classes_editor_composite' );
    $editor = new $classToLoad();
    $editor->setLegacyMode( false );
    $editor->setIsHtml( false );
    $postContent = $editor->process('<tr date="sa"><td>ds</td></tr>');
    print_r($postContent);


Как в ответ получить код такого вида "<tr date="sa"><td>ds</td></tr>", отфильтрованный от вредоносного кода...? Как отключить проверку на наличие правильной структуры кода?
0

#4 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 688
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 05 Март 2016 - 00:08

Никак. Пользователи не имеют право использовать таблицы в сообщениях.
0

#5 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 05 Март 2016 - 12:39

Как разрешить использовать? Возможно?
0

#6 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 07 Март 2016 - 08:43

Мужики как разрешить использование таблиц?
0

#7 Пользователь не на сайте   Testweb ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 298
  • Регистрация: 12-Ноябрь 14
  • Репутация: -3
  • IPB version:3.4.x
 

Отправлено 08 Март 2016 - 20:31

Подскажи как выставить разрешение на такие атрибуты как id, class или добавить какой нибудь свой. Блин все удаляет.

Не понимаю, как конфиги указываются если использовать ту модификацию что у ipb

В стандартной библии есть такая возможность как добавлять свой префикс в начала значения атрибута id, подскажи как проделать тоже самое использую библию от ipb
0

#8 Пользователь не на сайте   Dmitriy427 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Specialist
  • Сообщений: 574
  • Регистрация: 15-Октябрь 11
  • Репутация: 152
  • Откуда:Россия, Тула
  • IPB version:3.3.x
 

Отправлено 09 Март 2016 - 05:40

Цитата

Подскажи как выставить разрешение на такие атрибуты как id, class или добавить какой нибудь свой. Блин все удаляет.

В IPS Suite 4 классы можно просто добавить в базу:
$myClasses = array( 'myClass_1','myClass_2',...,'myClass_n' );
$settingClasses = \IPS\Settings::i()->editor_allowed_classes ? explode( ',', \IPS\Settings::i()->editor_allowed_classes ) : array();
$settingClasses = array_unique( array_merge( $settingClasses, $myClasses ) );

\IPS\Db::i()->update( 'core_sys_conf_settings', array( 'conf_value' => implode( ',', $settingClasses ) ), array( 'conf_key=?', 'editor_allowed_classes' ) );

Для разрешения элемента по другим атрибутам, включая id, уже нужно работать с яваскрипт:
editor.dataProcessor.htmlFilter.addRules(
{
    elements :
    {
        $ : function( element )
        {
            if ( element.attributes.id == 'myID' )
                return element;
        }
    }
});
Но это, опять же, для 4-ой версии sceditor. С IP.Board 3.x.x не разбирался, там хватало штатных возможностей парсера бб-кодов.

Цитата

как разрешить использование таблиц?
https://community.in...c-table-bbcode/
1

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна