getRating()>=Config::Get('acl.create.blog.rating')) { return true; } return false; } /** * Проверяет может ли пользователь создавать топики в определенном блоге * * @param Entity_User $oUser * @param Entity_Blog $oBlog * @return bool */ public function CanAddTopic(UserEntity_User $oUser, BlogEntity_Blog $oBlog) { /** * Если юзер является создателем блога то разрешаем ему постить */ if ($oUser->getId()==$oBlog->getOwnerId()) { return true; } /** * Если рейтинг юзера больше либо равен порогу постинга в блоге то разрешаем постинг */ if ($oUser->getRating()>=$oBlog->getLimitRatingTopic()) { return true; } return false; } /** * Проверяет может ли пользователь создавать комментарии * * @param Entity_User $oUser * @return bool */ public function CanPostComment(UserEntity_User $oUser) { if ($oUser->getRating()>=Config::Get('acl.create.comment.rating')) { return true; } return false; } /** * Проверяет может ли пользователь создавать комментарии по времени(например ограничение максимум 1 коммент в 5 минут) * * @param Entity_User $oUser * @return bool */ public function CanPostCommentTime(UserEntity_User $oUser) { if (Config::Get('acl.create.comment.limit_time')>0 and $oUser->getDateCommentLast()) { $sDateCommentLast=strtotime($oUser->getDateCommentLast()); if ($oUser->getRating()getRating()>=Config::Get('acl.vote.comment.rating')) { return true; } return false; } /** * Проверяет может ли пользователь голосовать за конкретный блог * * @param Entity_User $oUser * @param Entity_Blog $oBlog * @return bool */ public function CanVoteBlog(UserEntity_User $oUser, BlogEntity_Blog $oBlog) { if ($oUser->getRating()>=Config::Get('acl.vote.blog.rating')) { return true; } return false; } /** * Проверяет может ли пользователь голосовать за конкретный топик * * @param Entity_User $oUser * @param Entity_Topic $oTopic * @return bool */ public function CanVoteTopic(UserEntity_User $oUser, TopicEntity_Topic $oTopic) { if ($oUser->getRating()>=Config::Get('acl.vote.topic.rating')) { return true; } return false; } /** * Проверяет может ли пользователь голосовать за конкретного пользователя * * @param Entity_User $oUser * @param Entity_User $oUserTarget * @return bool */ public function CanVoteUser(UserEntity_User $oUser, UserEntity_User $oUserTarget) { if ($oUser->getRating()>=Config::Get('acl.vote.user.rating')) { return true; } return false; } /** * Проверяет можно ли юзеру слать инвайты * * @param UserEntity_User $oUser * @return unknown */ public function CanSendInvite(UserEntity_User $oUser) { if ($this->User_GetCountInviteAvailable($oUser)==0) { return false; } return true; } } ?>