Плагином можно реализовать, причем не очень сложным. Алгоритм вообще простой:
1) проверить голосовали ли раньше;
2) если голосовали, то прибавить/вычесть к/из силы/рейтинга удвоенное значение, вычисленное по стандартному алгоритму, а также изменить результат голосования в таблице БД;
3) если не голосовали — выполнить родной код.
Удвоенное значение используется для того, чтобы скомпенсировать предыдущее изменение. На самом деле между двумя этими голосованиями рейтинг голосующего пользователя мог измениться, но отследить такое изменение, чтобы точно скомпенсировать, будет сложнее.
Еще с поддержкой разных шаблонов придется помучиться.
4 комментария
1) проверить голосовали ли раньше;
2) если голосовали, то прибавить/вычесть к/из силы/рейтинга удвоенное значение, вычисленное по стандартному алгоритму, а также изменить результат голосования в таблице БД;
3) если не голосовали — выполнить родной код.
Удвоенное значение используется для того, чтобы скомпенсировать предыдущее изменение. На самом деле между двумя этими голосованиями рейтинг голосующего пользователя мог измениться, но отследить такое изменение, чтобы точно скомпенсировать, будет сложнее.
Еще с поддержкой разных шаблонов придется помучиться.