Рейтинг (видят все) и модерирование комментариев

Привет, всем!

Помогите пожалуйста разобраться с 2-мя моментами:
1. Рейтинг, сейчас рейтинг топиков видят только те кто голосовал, или видят все только уже после того как голосование за топик закончилось. Задача отобразить рейтинг топика всем, в том числе и не зарегистрированным пользователям, как?
Так сразу же выделяются привлекательные топики для гостей

Задачу решил следующим образом:
В самом шаблоне synio, в файле «topic_part_footer.tpl» заменил строку 135:
<i onclick="return ls.vote.vote({$oTopic->getId()},this,0,'topic');"></i>

Нв вот это:
{if $oTopic->getRating()>0}+{/if}{$oTopic->getRating()}

Дальше в css привел в нужный мне вид

2. Модерирование комментариев, сейчас у роли модератора только возможность корректировать сам топик, но нет прав на корректирование комментария, (реализовал плагином EditComment) или удаление комментария. Задача расширить права модератора не давая админских прав, как?
Так не нужно будет админу бегать самому удалять левые комменты.

Прошу сильно не ругать если уже есть ответы на это, но я честно старался искал…
Спасибо!

Сортировка топиков по количеству просмотров

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

Подскажите как запилить такую ссылочку, по которой будет выдавать нужный ТОП по количеству просмотров за день, за неделю, месяц и за все время

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

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

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

Вывод сообщения по значению рейтинга

Необходимо вывести какое то любое сообщение(текст) для пользователей LS по зависимости от их рейтинга к примеру:
Пользователь, рейтинг которого меньше 5 видит сообщение а пользователь, чей рейтинг больше 5 уже сообщение не видит(текст).
Что нужно в файл-шаблона вставить чтобы добиться такого результата?

Не работает рейтинг ограничение

$config['acl']['create']['topic']['limit_rating'] = 2; // порог рейтинга при котором юзер может создавать топики (учитываются любые блоги, включая персональные), как дополнительная защита от спама/троллинга
стоит сейчас так, зарегился уже не первый раз создаю топик, удачно все создается и ничего не блочится не могу использовать как раз в целях «как дополнительная защита от спама/троллинга»
подскажите в чем может быть ошибка?