Как сделать чтобы при голосовании за топик, голосовавшему к рейтингу прибавлялось определенное значение? [РЕШЕНО]

Доброе время суток сообщество Livestreet, обращаюсь к вам немного с нестандартным вопросом, потому что и задача у меня нестандартная. Состоит она вот в чем:

Любому проголосовавшему за топик (неважно + или -) к рейтингу нужно добавить определенное значение, например +1,00 или +0,50, оно ни от чего не зависит, всегда одна и та же величина.

Буду очень благодарен за любую помощь и наводки!

РЕШЕНИЕ:
1) находим файл classes\modules\rating\Rating.class.php
2) открываем и заменяем функцию VoteTopic (85 строка) на следующее:
	public function VoteTopic(ModuleUser_EntityUser $oUser, ModuleTopic_EntityTopic $oTopic, $iValue) {
		$oTopic->setRating($oTopic->getRating()+$iValue);
		$oUser=$this->User_GetUserById($oUser->getUserId());
		$oUser->setRating($oUser->getRating()+$iValue);
		$this->User_Update($oUser);
		return $iValue;
	}

ДАННАЯ ФУНКЦИЯ ДОБАВЛЯЕТ ГОЛОСУЮЩЕМУ +1 или -1 РЕЙТИНГА В ЗАВИСИМОСТИ + ИЛИ — ОН ПОСТАВИЛ ПОСТУ, И +1 ИЛИ -1 ПОСТУ.

! ВНИМАНИЕ ФУНКЦИЯ 1) НЕ ДОБАВЛЯЕТ СИЛЫ НИКОМУ 2) НЕ ДОБАВЛЯЕТ РЕЙТИНГА СОЗДАТЕЛЮ ТОПИКА


функционал странный, но именно такой мне был необходим, спасибо пользователям beauty_free и gran

5 комментариев

avatar
livestreet.ru/blog/questions/10526.html
и могу уверить существует не один подобный вопрос
avatar
а какая переменная будет отвечать за рейтинг юзера, который голосует?
там идет начисление рейтинга юзеру, создавшему топик
avatar
Разобрался, добавил решение и благодарности в содержание топика.
avatar
pirate а не подскажешь, как добавлять вместо 1, +0,1 например. То слишком жирно 1 иметь юзеру)
avatar
$oUser->setRating($oUser->getRating()+$iValue*0,1);
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.