Добавление новых (кастомных) полей для модуля Блоги 2.0 — различия между версиями
VITL' (обсуждение | вклад) (Новая страница: « category:Описание модулей и макросов Изменение кода аналогично тому как это описано в стат…») |
(нет различий)
|
Версия 05:50, 29 апреля 2010
Изменение кода аналогично тому как это описано в статье "Добавление новых (кастомных) полей для модуля Комментарии". Копируем код метода commentAdd из файла ~classes/modules/blogs20/class.php в файл classes/modules/ blogs20/__custom.php, переименовываем метод, пусть будет название commentAddNew. Создаем файл permissions.custom.php, содержимое файла permissions.custom.php должно быть таким:
<?php
$permissions = Array(
'common' => Array('commentAddNew')
);
?>
В коде метода commentAddNew меняем все записи:
$this-> и self::
на
def_module::
После записи:
$sContent = htmlspecialchars(trim(getRequest('content')));
Прописываем прием значения кастомного поля с идентификатором newfield (для примера):
$sField = htmlspecialchars(getRequest('newfield'));
После записей:
$oComment->setValue('content', $sContent);
$oComment->setValue('author_id', $authorId);
Сохраняем значение нашего поля:
$oComment->setValue('newfield', $sField);
Также не забудьте в шаблоне ~tpls/blogs20/default.tpl, в блоках comment_add_form и comment_add_form_guest поменять значение action, заменив commentAdd на commentAddNew.