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

Решил сделать рейтинг и силу чуть по другому, один голос одна единица, чтоб не было такого что кто то ставит голос и сразу +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.: буду очень рад если укажите на ошибки или добавите что то)

рейтинг и сила

Помогите разобраться с рейтингом.

За плюсы в профиле пользователя добавляется рейтинг
За плюсы в топиках — сила
За плюсы в комментариях не заметил изменений, вроде 7 плюсов достаточно чтоб увидеть изменения, это у всех так?

И чем отличается "+" админа от плюса, модера или обычного юзера

Где можно поменять значения, чтоб людям начислялись не мизерные десятые, а величины побольше.
Спасибо за ответ.

Как поменять ограничения на Силу и Рейтинг местами?

Здравствуйте. Вопрос такой: можно ли изменить как-то механизм ограничений на создание блогов/постов/комментариев и прочего?
$config['acl']['create']['blog']['rating']=  5;// порог рейтинга при котором юзер может создать коллективный блог


Можно ли как-то поменять, чтобы не рейтинг должен был равняться 5, а сила?

Сделать динамический рейтинг

Я считаю, что рейтинг пользователей должен быть динамическим. То есть при расчете рейтинга пользователей учитывать материалы только за определенный период или просто уменьшать рейтинг каждый день. Это пока самый простой вариант. Хорошим вариантом был бы плагин, который бы каждый день брал бы топики и комментарии пользователей за последний месяц и высчитывал бы рейтинг.

Дело в том, что если какой-то пользователь активно жил на сайте, а потом забивал на него, то он все надолго равно остается в лидерах рейтинга.

Система рейтинга, силы и СПАСИБО

На многих других сайтах сообществах нет рейтинга и силы, и это в основном форумы. Так вот, система + и — конечно же, дает свои плоды и убирать ее не нужно. Но как показывает практика, остается масса людей без ответа, недовольных. Было бы хорошо для новичков ввести еще такое поощрение как «Спасибо», когда человек не может в репу поставить + или — , но зато может сказать «Спасибо» и даже сотню раз, например, не чаще чем раз в неделю одному пользователю.

При этом, люди которые здесь вертятся не ради зарабатывания денег, будут помогать другим получая хотя бы моральное удовлетворение — у них в профиле будет — «Сказали Спасибо 123 раза». Это даст людям стимул друг другу помогать, а сообществу новый виток в развитии.

Порог рейтинга для персонального блога.

Здравствуйте. Пользуюсь ливстритом около недели.
Есть пару вопросов которые своими силами решить не могу.
1. В конфиге можно задать порог рейтинга при котором юзер может создать коллективный блог $config['acl']['create']['blog']['rating'] = 30;, а нет ли возможности поставить порог рейтинга для постинга в персональный блог? К примеру я хочу, чтобы топики в свои блоги могли добавлять только юзеры с рейтингом выше 10ти.

2. Как сделать так, чтобы на параметр силы влияли ежедневное посещение сайта и чтение топиков. (При стандартной формуле, если я правильно понял, на силу влияют создание топиков и комментирование)

Я не программист, поэтому, если можно. более менее детально объясните. Но раанее работал с многими известными cmsками, так что в коде покопаться могу.
Спасибо

Прогресс-бар для силы в профиле пользователя

Доброго времени суток.



Навеяно вот этим топиком.

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

Читать дальше →

Сила в livestreet

Сила наверное самый загадочный показатель в livestreet. Пользователи не связанные с IT и плохо знакомые с хабром даже при достаточно подробном FAQ не могут понять, как и за что начисляется эта загадочная величина, которая так похожа на рейтинг. В итоге после долгих объяснений и поднятий тем, силу пришлось отключить на обоих моих проектах.

А ведь ее можно использовать на всех без исключения проектах (не только для айтишников), да еще и с пользой.

На рисунке ниже сила представлена в виде прогрессбара — при таком отображении перепутать рейтинг с силой будет уже невозможно.




Читать дальше →