Seditio Source
Root |
./othercms/xenForo 2.2.8/src/XF/Job/PostEmbedMetadata.php
<?php

namespace XF\Job;

use
XF\Mvc\Entity\Entity;

class
PostEmbedMetadata extends AbstractEmbedMetadataJob
{
    protected function
getIdsToRebuild(array $types)
    {
        return
$this->getIdsBug153298Workaround('post');

       
$db = $this->app->db();

       
// Note: only attachments are supported currently, so we filter based on attach count for efficiency.
        // If other types become available, this condition will need to change.
//        return $db->fetchAllColumn($db->limit(
//            "
//                SELECT post_id
//                FROM xf_post
//                WHERE post_id > ?
//                    AND attach_count > 0
//                ORDER BY post_id
//            ", $this->data['batch']
//        ), $this->data['start']);
   
}

    protected function
getRecordToRebuild($id)
    {
        return
$this->app->em()->find('XF:Post', $id);
    }

    protected function
getPreparerContext()
    {
        return
'post';
    }

    protected function
getMessageContent(Entity $record)
    {
        return
$record->message;
    }

    protected function
rebuildAttachments(Entity $record, \XF\Service\Message\Preparer $preparer, array &$embedMetadata)
    {
       
$embedMetadata['attachments'] = $preparer->getEmbeddedAttachments();
    }

    protected function
getActionDescription()
    {
       
$rebuildPhrase = \XF::phrase('rebuilding');
       
$type = \XF::phrase('posts');
        return
sprintf('%s... %s', $rebuildPhrase, $type);
    }
}