Sulu\Bundle\MediaBundle\Search\Subscriber\StructureMediaSearchSubscriber::handlePreIndex PHP Method

handlePreIndex() public method

Adds the image to the search document.
public handlePreIndex ( Massive\Bundle\SearchBundle\Search\Event\PreIndexEvent $e )
$e Massive\Bundle\SearchBundle\Search\Event\PreIndexEvent
    public function handlePreIndex(PreIndexEvent $e)
    {
        $metadata = $e->getMetadata();
        $document = $e->getDocument();
        $subject = $e->getSubject();
        $evaluator = $e->getFieldEvaluator();
        if (false === $metadata->getClassMetadata()->reflection->isSubclassOf(StructureBehavior::class)) {
            return;
        }
        if (!($imageUrlField = $metadata->getImageUrlField())) {
            return;
        }
        $data = $evaluator->getValue($subject, $imageUrlField);
        $locale = $subject->getLocale();
        if (!$data) {
            $document->setImageUrl(null);
            return;
        }
        $imageUrl = $this->getImageUrl($data, $locale);
        $document->setImageUrl($imageUrl);
    }