Содержание

🐘 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, ...]

Удаление

Rating::delete([$ids]);