Элионт
Проверенные
		- Сообщения
 - 36
 
- Реакции
 - 20
 
- Баллы
 - 1,705
 
Доброе время суток. Собрал учебный плагин согласно 
Попытался доработать чтобы указывалось кто "звезданул" (featured) тему / с какого форума она и столкнулся с проблемой что при создании треда просится указать необходимые параметры. Как их передать креатору?
	
	
		
			
	
	
	
		
		
	
thread_id креатор там уже видимо и так знает, дата имеет значение по умолчанию, а вот как выцепить передать юзера и ноду в этой системе?
В смысле откуда именно приходят данные в креатор чтобы добавить туда эти два.
	
	
		
			
	
	
	
		
		
	
				
			
	 У Вас недостаточно прав для просмотра ссылок.
		Вход или Регистрация
руководству.Попытался доработать чтобы указывалось кто "звезданул" (featured) тему / с какого форума она и столкнулся с проблемой что при создании треда просится указать необходимые параметры. Как их передать креатору?
		Код:
	
	class Creator extends XFCP_Creator
{
    protected $featureThread;
    public function setFeatureThread($featureThread)
    {
        $this->featureThread = $featureThread;
    }
    
    protected function _save()
    {
        $thread = parent::_save();
        if ($this->featureThread && $thread->discussion_state == 'visible')
        {
            /** @var \Demo\Portal\Entity\FeaturedThread $featuredThread */
            $featuredThread = $thread->getRelationOrDefault('FeaturedThread');
            $featuredThread->save();
            $thread->fastUpdate('demo_portal_featured', true);
        }     
        
        return $thread;
    }
}
	В смысле откуда именно приходят данные в креатор чтобы добавить туда эти два.
		Код:
	
	class FeaturedThread extends \XF\Mvc\Entity\Entity
{
    public static function getStructure(Structure $structure)
    {
        $structure->table = 'xf_demo_portal_featured_thread';
        $structure->shortName = 'XF:FeaturedThread';
        $structure->primaryKey = 'thread_id';
        $structure->columns = [
            'thread_id' => ['type' => self::UINT, 'required' => true],
            'user_id' => ['type' => self::UINT, 'required' => true],
            'node_id' => ['type' => self::UINT, 'required' => true],
            'featured_date' => ['type' => self::UINT, 'default' => time()]
        ];
        $structure->getters = [];
        $structure->relations = [
            'Thread' => [
                'entity' => 'XF:Thread',
                'type' => self::TO_ONE,
                'conditions' => 'thread_id',
                'primary' => true
            ],
        ];
        return $structure;
    }
}
	
				
						