Seditio Source
Root |
./othercms/xenForo 2.2.8/src/XF/ApprovalQueue/Thread.php
<?php

namespace XF\ApprovalQueue;

use
XF\Mvc\Entity\Entity;

class
Thread extends AbstractHandler
{
    protected function
canActionContent(Entity $content, &$error = null)
    {
       
/** @var $content \XF\Entity\Thread */
       
return $content->canApproveUnapprove($error);
    }

    public function
getEntityWith()
    {
       
$visitor = \XF::visitor();

        return [
'Forum', 'Forum.Node.Permissions|' . $visitor->permission_combination_id, 'FirstPost', 'User'];
    }

    public function
actionApprove(\XF\Entity\Thread $thread)
    {
       
/** @var \XF\Service\Thread\Approver $approver */
       
$approver = \XF::service('XF:Thread\Approver', $thread);
       
$approver->setNotifyRunTime(1); // may be a lot happening
       
$approver->approve();
    }

    public function
actionDelete(\XF\Entity\Thread $thread)
    {
       
$this->quickUpdate($thread, 'discussion_state', 'deleted');
    }

    public function
actionSpamClean(\XF\Entity\Thread $thread)
    {
        if (!
$thread->User)
        {
            return;
        }

       
$this->_spamCleanInternal($thread->User);
    }
}