Это старая версия документа!
Миграция с версии 1 на версию 2
В новую версию модуля внесены изменения, которые нарушают обратную совместимость. Прежде всего это касается компонентов и шаблонов. Поэтому самым лучшим вариантом для кастомизированных шаблонов и компонентов будет следующий вариант: заново перенести в свое пространство имен шаблон (или компонент) и провести работы по кастомизации.
Компоненты в стандартной поставке
Если вы используете компоненты в стандартной поставке без кастомизации, ничего делать не нужно. Код компонентов обновится вместе с обновлением модуля. Единственное, что нужно сделать, - в настройках модуля выбрать и настроить поставщика капчи.
Компоненты с кастомизированным шаблоном
Сложность изменений зависит от глубины кастомизации. Если вы просто добавили свои стили к шаблону, попробуйте скопировать шаблон из новой версии модуля и просто добавить в него свои стилевые правила.
Если предыдущий способ не помог или вы изменяли разметку, то, к сожалению, кастомизацию придется повторить для новой версии. Для этого вам понадобятся услуги разработчика.
В новой версии изменен подход к показу капчи, изменены сигнатуры контроллеров компонентов. С другой стороны, такие части функциональности как капча, списки комментариев и отзывов, модальные окна вынесены в отдельные JS-экстеншены.
В новой версии формы добавления отзыва или комментария связаны с соответствующим списком через специальный параметр COMPONENT_ID. Это нужно для того, чтобы новый комментарий/отзыв добавлялся в правильный список, если на одной странице расположены несколько списков комментариев/отзывов.
В код шаблона комопнента формы добавлен блок
<div class="captcha-container form-field"
data-captcha-type="<?=$arResult['CAPTCHA']['TYPE']?>"
data-captcha-key="<?=$arResult['CAPTCHA']['PUBLIC_KEY']?>"
data-invisible="<?=($arResult['CAPTCHA']['INVISIBLE'])?'Y':'N';?>"
></div>
В этом блоке будет отрендерена капча в соответствии с настройками модуля. Данные этого блока используются экстеншеном chililab.comments.captcha для отображения и проверки капчи.
Компоненты кастомизированы полностью (шаблон + класс компонента)
Этот случай кастомизации проще. API взаимодействия с базой данных не менялся. Но есть изменения в названиях классов. К примеру, класс
Chililab\Comments\Rating
перенесен в пространство имен
Chililab\Comments\Classes\Rating.
Работа с настройками капчи ведется через новые свойства и классы из пространства имен
Chililab\Comments\Captcha
