🐘 PHP API
Работа с комментариями
Добавление комментария
use Chililab\Comments\Comment;
$commentId = Comment::addComment(
$name, // Имя автора
$text, // Текст комментария
$parentId, // ID родительского комментария (0 - корневой)
$moderated, // Требуется ли модерация (bool)
$active, // Активен ли комментарий (bool)
$url, // URL страницы (false - текущая)
$created, // Дата создания (false - текущая)
$siteId, // ID сайта (false - текущий)
$sendEvents, // Отправка событий (bool)
$iblockId, // ID инфоблока (optional)
$elementId // ID элемента (optional)
);
Удаление комментария
// Удалить один комментарий
Comment::deleteComment($id, $withChildren = false);
// Удалить несколько комментариев
Comment::delete([$ids], $withChildren = false);
Активация/Деактивация
Comment::activate([$ids]);
Comment::deactivate([$ids]);
Модерация
Comment::setModerated([$ids]);
Comment::cancelModerated([$ids]);
Редактирование
Comment::edit([
$id1 => ['NAME' => 'Новое имя', 'TEXT' => 'Новый текст'],
$id2 => ['TEXT' => 'Текст 2'],
]);
Работа с отзывами
Добавление отзыва
use Chililab\Comments\Review;
$reviewId = Review::add(
$name, // Имя автора
$text, // Текст отзыва
$rating, // Оценка (1-5)
$recommend, // Рекомендует ли товар (bool)
$moderated, // Требуется ли модерация (bool)
$active, // Активен ли отзыв (bool)
$url, // URL страницы (false - текущая)
$created, // Дата создания (false - текущая)
$likes, // Количество лайков (0)
$dislikes, // Количество дизлайков (0)
$answer, // Ответ администратора (false)
$siteId, // ID сайта (false - текущий)
$sendEvents, // Отправка событий (bool)
$iblockId, // ID инфоблока (optional)
$elementId // ID элемента (optional)
);
Лайки и Дизлайки
// Поставить лайк
Review::like($id);
// Отменить лайк
Review::likeCancel($id);
// Поставить дизлайк
Review::dislike($id);
// Отменить дизлайк
Review::dislikeCancel($id);
Удаление
Review::deleteReview($id, $withChildren = false);
Review::delete([$ids]);
Работа с рейтингами
Добавление рейтинга
use Chililab\Comments\Rating;
// Для авторизованного пользователя
Rating::addCurrentUserRating($rating);
// Для неавторизованного пользователя
Rating::addNotAutorazedRating(
$url, // URL страницы
$rating, // Оценка (1-5)
$active, // Активен ли рейтинг
$siteId, // ID сайта
$iblockId, // ID инфоблока (optional)
$elementId // ID элемента (optional)
);
Получение рейтинга страницы
// Получить рейтинг по URL
$pageRating = Rating::getPageRating();
// Получить рейтинг по инфоблоку и элементу
$pageRating = Rating::getPageRating($iblockId, $elementId);
// Результат:
[
'AVG' => 4.5, // Средний рейтинг
'COUNT' => 10 // Количество голосов
]
Текущий рейтинг пользователя
$userRating = Rating::getCurrentUserRating();
// Результат: ['ID' => 123, 'RATING' => 4, ...]
Удаление