НОВЫЙ подсчет рейтинга, помогите допилить до конца

Решил сделать рейтинг и силу чуть по другому, один голос одна единица, чтоб не было такого что кто то ставит голос и сразу +3 добавляется. ну и еще пару правок


Теперь:
Рейтинг — стала популярностью (голосовали за его топики (+1 к рейтингу), за его комментарий(+0,1 к рейтингу))
Т.к при таких значениях сила бесполезна превращаем её в показатель активности пользователя
Сила – это активность юзера (когда юзер голосует за топик или коммент, хоть в + хоть в -( юзеру +0,1 к силе) оставить коммент(+1 к силе) написать топик +10)

таким образом мы видим «рейтинг» — на сколько хорошие комментарии и топики он пишет, и «сила» — на сколько он активен.

переделываем заодно рейтинг блога, все оценки топиков деленные на кол-во топиков, т.е средний был топиков в этом блоге.


Ползем в \classes\modules\rating\ Rating.class.php

Расчет рейтинга при голосовании за комментарий
//Устанавливаем рейтинг комментария 1 голос  +-1
$oComment->setRating($oComment->getRating()+$iValue);
//Начисляем рейтинг  автору коммента 1 голос  +-0,1
$oUserComment=$this->User_GetUserById($oComment->getUserId());
$oUserComment->setRating($oUserComment->getRating()+$iValue*0,1);
$this->User_Update($oUserComment);
//Начисляем силу юзеру +0,1 при любом +- голосовании
$oUser=$this->User_GetUserById($oUser->getUserId());
$iSkillNew=$oUser->getSkill()+0,1;
$iSkillNew=($iSkillNew<0)? 0: $iSkillNew;
$oUser->setSkill($iSkillNew); 
return $iValue;


Расчет рейтинга и силы при голосовании за топик
// Устанавливаем рейтинг топика 1 голос +-1
$oTopic->setRating($oTopic->getRating()+$iValue);
// Начисляем  рейтинг автору топика 1 голос +-1
$oUserTopic=$this->User_GetUserById($oTopic->getUserId());
$oUserTopic->setRating($oUserTopic->getRating()+$iValue);
$this->User_Update($oUserTopic);
// Начисляем силу юзеру +0,1 при любом +- голосовании
$oUser=$this->User_GetUserById($oUser->getUserId());
$iSkillNew=$oUser->getSkill()+0,1;
$iSkillNew=($iSkillNew<0)? 0: $iSkillNew;
$oUser->setSkill($iSkillNew); 
//3 строки ниже считают не средний бал, общее кол-во рейтинга всех топиков в блоге
$oBlog=$this->Blog_GetBlogById($oTopic->getBlogId());
$oBlog->setRating($oBlog->getRating()+$iValue);
$this->Blog_UpdateBlog($oBlog);
return $iValue;

Вот тут мне по поводу блогов нужна помощь, нужно как то строки связанные с блогом, разделить еще на кол-во топиков в блоге. кто нить сможет помочь? возможно поможет эта тема, там прописано кол-во топиков в блоге, просто я не настолько опытен чтоб это содеинить (http://livestreet.ru/blog/addons/10265.html)

ну и удаляем все с рейтинга блога, чтоб нельзя было голосовать за него кнопками, должно выглядеть вот так:
public function VoteBlog(ModuleUser_EntityUser $oUser, ModuleBlog_EntityBlog $oBlog, $iValue){
return 0;
}

и втом числе у рейтинга юзера, чтоб нельзя было голосовать за него кнопками
public function VoteUser(ModuleUser_EntityUser $oUser, ModuleUser_EntityUser $oUserTarget, $iValue) {
return 0;
}


Чтоб сделать создании топика +10 к силе юзера
classes\actions\ActionTopic.class.php функция SubmitAdd()
после этого
/**
* Получаем топик, чтоб подцепить связанные данные
*/
$oTopic=$this->Topic_GetTopicById($oTopic->getId());

вставляем
$oUserTopic = $this->oUserCurrent;
$iSkillNew=$oUserTopic->getSkill()+10;
$iSkillNew=($iSkillNew<0)? 0: $iSkillNew;
$this->User_Update($oUserTopic);


функция EventDelete()

$oUserTopic = $this->oUserCurrent;
$iSkillNew=$oUserTopic->getSkill()-10;
$iSkillNew=($iSkillNew<0)? 0: $iSkillNew;
$this->User_Update($oUserTopic);


и еще вопрос может кто поможет
Как сделать при оставлении коммента +1 к силе юзера?

P.S.: буду очень рад если укажите на ошибки или добавите что то)

Как выключить возможность голосования за блоги?

Ситуация следующая: воспользоваться решением по упрощению рейтинговой системы из этого поста — livestreet.ru/blog/6429.html, теперь голосование за топики в блоге отражается на общем рейтинге блога, что весьма удобно и, на мой взгляд — очень логично.

Однако, в интерфейсе сайта всё равно осталась возможность проголосовать за блог, плюсы и минусы рядом с показателем всё ещё активны. Подскажите, как можно окончательно убрать эти кнопки, оставив на их месте только поле с результатом?

Нужна помощь с Выводом в Top блогов количество постов вместо рейтинга.

Просьба к профессионалам нашего сообщества довести этот плагин до ума, сделать его доступным для всех.

livestreet.ru/blog/addons/10265.html

Думаю мне не одному это интересно.

С уважением, прошу без минусов!

Изменение системы рейтинга для блогов

Заметил, что за блог редко, кто голосует. Голосуют в основном за топики. Вкратце идея такова: рейтинг от топиков отдавать блогу, тоесть автоматически блог с самыми хорошими топиками будет иметь высокий рейтинг.

upd

Как оказалось хак для работы такой системы уже есть! Продублировал из этого поста.
Читать дальше →

Настройка системы подсчета рейтинга блогов

Уже много раз обсуждалась здесь такая вещь: рейтинг блогов должен зависеть от оценки постов, опубликованных в этих блогах. Предлагалось также сделать зависимость от рейтинга подписчиков блога или связать оба параметра вместе. Но в любом случае не оставлять рейтинг блога зависимым только от плюсов, проставленных блогу напрямую.
Насколько я понимаю, сейчас сделано как раз так: рейтинг блога поднимается только когда его поднимает пользователь напрямую. Проблема в том, что мотивации делать это у обычных пользователей почти нет, есть она только у владельцев блогов, которые их и накручивают.

Как это можно исправить самостоятельно, не дожидаясь правок в движке или других доработок?
Спасибо заранее за советы