|
Как добавить возможность без изменения самого компонента, чтобы голосовать можно было "+" и "-", при этом рейтинг либо увеличивался на 1, либо уменьшался на 1. Т.е чтобы рейтинг высчитывался как целое число (может быть отрицательным, положительным, либо = 0)?
Рейтинг "Плюс минус" можно вычислить самостоятельно.
Сделайте голосование от 1 до 2.
Число выводите, как результат вычисления:
count = количество голосов,
sum = сумма баллов.
sum - count = количество тех, кто поставил 2 (то есть +). count - (sum - count) = количество тех, кто поставил 1 (то есть -).
(sum - count) - ( count - (sum - count) ) = 2*sum - 3*count = значение вашего рейтинга.
Пример:
10 человек поставили 1. (как бы минус)
5 человек поставили 2. (как бы плюс)
всего проголосовало 15
сумма оценок 20
2*20 - 3*15 = -5 рейтинг, который вы показываете пользователю.
Число 2*sum - 3*count достаточно выводить в шаблоне компонента.
Может потребоваться записать полученный рейтинг в базу данных. Используйте пример автоматического пересчета рейтинга, но со своей формулой
Формула рейтинга |
Описание курса
| Голосование за один из нескольких элементов
|