Компонент Rating: рейтинг материала

Компонент: Rating: Рейтинг

Компонент предназначен для создания и вывода рейтинга каких-либо сущностей (новостей, статей, публикаций или самих пользователей). Право участвовать в рейтингах по умолчанию имеют только зарегистрированные пользователи.

Вывод рейтинга на странице

Вывод рейтинга осуществляется через хелпер rating. Через него доступны три метода:

  • rating_indicator($material_id, $average = false) - выводит рейтинг в численном выражении.
  • rating_control($material_id, $average = false)- выводит рейтинг + ссылки для голосования.
  • create_rating($view, $material_id, $user_id = false, $time_end = false) - создает рейтинг с параметрами.

Переменные, которые передаются в методы:

  • $material_id - любой набор символов, однозначно определяющий материал.
  • $average - если параметр равен false, то будет выведено абсолютное значение рейтинга, в другом случае - среднее.
  • $user_id - id пользователя.
  • $time_end - время окончания голосования. Принимает timestamp или дату в форматах 'Y-m-d', 'Y-m-d H:i:s'.

В самом простом случае для реализации голосования нам достаточно вызвать метод rating_control(), который выведет и рейтинг и кнопки для голосования, а так же создаст голосование с параметрами по умолчанию (бессрочное, автор не указан).

Например в шаблоне новости:

// app/components/Nodus/app/Datatype/News/full.phtml
...
<?= $this->rating->rating_control('news'.$item->id) ?>

//..

$this->rating->rating_indicator('news'.$item->id) // рейтинг без ссылок для голосования
...

Если нужно указать автора (при этом, сам автор не сможет проголосовать за данный материал) или ограничить голосование временными рамками, то, до вызова rating_control() или rating_indicator(), следует вызвать метод create_rating(), передав ему необходимые параметры.

19.05.2015
Все статьи