goodStar

Компонент звездного рейтинга
Автор дополнения
Михаил Электриков
Пакетов
7
Закачек
193
Обычно отвечает в течение 2 часов
Автор дополнения
Пакетов
7
Закачек
193
Обычно отвечает в течение 2 часов
Версия 1.0.6-pl
Дата выпуска 31.05.2018
Загрузки 35
Просмотры 993
Внимание, этот компонент требует версию MODX не ниже 2.5 !
Формула подсчета рейтинга:

Рейтинг = Нижняя граница доверительного интервала Вильсона (Wilson) для параметра Бернулли

Более подробно про расчет тут.

В комплекте 9 тем
  1. bars-1to10
  2. bars-square
  3. bars-pill
  4. bars-reversed
  5. bars-horizontal
  6. fontawesome-stars
  7. css-stars
  8. bootstrap-stars
  9. fontawesome-stars-o







Настройки:
goodstar_theme // тема звездочек
goodstar_selector // класс обертки select

Для показа рейтинга достаточно вызвать сниппет:
[[goodStar?]]

c параметрами:

&thread=`` //id ресурса
&tpl=`` //чанк
&group=`` //группа

Стандартный чанк имеет вид:
<select class="example" data-thread="[[+id]]" data-current-rating="[[+current_rating]]" data-group="[[+group]]" data-readonly="[[+readonly]]">
    <option value=""></option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
</select>

<span>Количество голосов: [[+count_voite]]</span>

Теперь можно выбирать, какой вывод рейтинга показывать:

&conclusion=`` // Принимает параметры wilson,average,user

  • wilson — параметр по умолчанию. Выводит рейтинг по формуле как раньше
  • average — параметр выводит среднюю оценку (сумма голосов / кол-во голосов)
  • user — параметр выводит голос, который поставил пользователь

&readonly=``

Данный параметр принимает значение 1 или 0. Разрешает голосовать или нет пользователю. Удобно на пример, запрет голосования в каталоге, но разрешать в карточке товара.

&onlyAuth=``

Параметр принимает значение 1 (только авторизованные) или 0 (могут все). Разрешает голосовать только авторизованным пользователям.

Добавлено событие OnGoodStarVoice, которое принимает массив:
array(
            'thread' => '', // id ресурса
            'vote' => '', // голос
            'user' => '' // id юзера, если авторизован
)

Обновил чанк. Теперь выводит отдельно голос пользователя в плейсхолдер [[+user_rating]].

Добавлена микроразметка для вывода в поисковики

Последние обсуждения в сообществе MODX.pro