ModuleUserfeed

Package modules.userfeed
Inheritance class ModuleUserfeed » Module » LsObject
Since 1.0
Source Code /classes/modules/userfeed/Userfeed.class.php
Модуль пользовательских лент контента (топиков)

Protected Properties

Hide inherited properties

PropertyTypeDescriptionDefined By
bIsInit bool Указывает на то, была ли проведенна инициализация модуля Module
oEngine Engine Объект ядра Module
oMapper ModuleUserfeed_MapperUserfeed|null Объект маппера ModuleUserfeed

Public Methods

Hide inherited methods

MethodDescriptionDefined By
Init() Инициализация модуля ModuleUserfeed
SetInit() Помечает модуль как инициализированный Module
Shutdown() Метод срабатывает при завершении работы ядра Module
__call() Ставим хук на вызов неизвестного метода и считаем что хотели вызвать метод какого либо модуля Module
__construct() При создании модуля передаем объект ядра Module
getUserSubscribes() Получить список подписок пользователя ModuleUserfeed
isInit() Возвращает значение флага инициализации модуля Module
read() Получить ленту топиков по подписке ModuleUserfeed
subscribeUser() Подписать пользователя ModuleUserfeed
unsubscribeUser() Отписать пользователя ModuleUserfeed

Protected Methods

Hide inherited methods

MethodDescriptionDefined By
__clone() Блокируем копирование/клонирование объекта Module

Property Details

oMapper property
protected ModuleUserfeed_MapperUserfeed|null $oMapper;

Объект маппера

Method Details

Init() method
public void Init()
Source Code: /classes/modules/userfeed/Userfeed.class.php#43 (show)
public function Init() {
    
$this->oMapper=Engine::GetMapper(__CLASS__);
}

Инициализация модуля

getUserSubscribes() method
public array getUserSubscribes(int $iUserId)
$iUserId int ID пользователя, для которого загружаются подписки
{return} array
Source Code: /classes/modules/userfeed/Userfeed.class.php#88 (show)
public function getUserSubscribes($iUserId) {
    
$aUserSubscribes $this->oMapper->getUserSubscribes($iUserId);
    
$aResult = array('blogs' => array(), 'users' => array());
    if (
count($aUserSubscribes['blogs'])) {
        
$aBlogs $this->Blog_getBlogsByArrayId($aUserSubscribes['blogs']);
        foreach (
$aBlogs as $oBlog) {
            
$aResult['blogs'][$oBlog->getId()] = $oBlog;
        }
    }
    if (
count($aUserSubscribes['users'])) {
        
$aUsers $this->User_getUsersByArrayId($aUserSubscribes['users']);
        foreach (
$aUsers as $oUser) {
            
$aResult['users'][$oUser->getId()] = $oUser;
        }
    }

    return 
$aResult;
}

Получить список подписок пользователя

read() method
public array read(int $iUserId, int $iCount=NULL, int $iFromId=NULL)
$iUserId int ID пользователя, для которого получаем ленту
$iCount int Число получаемых записей (если null, из конфига)
$iFromId int Получить записи, начиная с указанной
{return} array
Source Code: /classes/modules/userfeed/Userfeed.class.php#76 (show)
public function read($iUserId$iCount null$iFromId null) {
    if (!
$iCount$iCount Config::Get('module.userfeed.count_default');
    
$aUserSubscribes $this->oMapper->getUserSubscribes($iUserId);
    
$aTopicsIds $this->oMapper->readFeed($aUserSubscribes$iCount$iFromId);
    return 
$this->Topic_getTopicsAdditionalData($aTopicsIds);
}

Получить ленту топиков по подписке

subscribeUser() method
public bool subscribeUser(int $iUserId, int $iSubscribeType, int $iTargetId)
$iUserId int ID подписываемого пользователя
$iSubscribeType int Тип подписки (см. константы класса)
$iTargetId int ID цели подписки
{return} bool
Source Code: /classes/modules/userfeed/Userfeed.class.php#54 (show)
public function subscribeUser($iUserId$iSubscribeType$iTargetId) {
    return 
$this->oMapper->subscribeUser($iUserId$iSubscribeType$iTargetId);
}

Подписать пользователя

unsubscribeUser() method
public bool unsubscribeUser(int $iUserId, int $iSubscribeType, int $iTargetId)
$iUserId int ID подписываемого пользователя
$iSubscribeType int Тип подписки (см. константы класса)
$iTargetId int ID цели подписки
{return} bool
Source Code: /classes/modules/userfeed/Userfeed.class.php#65 (show)
public function unsubscribeUser($iUserId$iSubscribeType$iTargetId) {
    return 
$this->oMapper->unsubscribeUser($iUserId$iSubscribeType$iTargetId);
}

Отписать пользователя