/** * {@inheritdoc} */ public function prePersist(MediaInterface $media) { if ($media->getFile() === null) { return; } $file = $media->getFile(); $filename = $this->createUniqueFileName($file); if (!$media->getName()) { $media->setName($filename); } $media->setReference($filename)->setContentType($media->getFile()->getClientMimeType())->setFilesize($media->getFile()->getSize())->setMetadata('metadata'); }
/** * Save the thumbnail. * * @param MediaInterface $media The Youtube Object * @param string $url * * @return MediaInterface The newly created image */ public function saveThumbnail(MediaInterface $media, $url) { $thumb = $this->mediaManager->createMedia(); $thumb->setStatus(Media::STATUS_HASPARENT)->setName($media->getName() . '_thumb')->setProvider('image'); $filename = '/tmp/' . basename($url); $filesystem = new Filesystem(); $filesystem->dumpFile($filename, file_get_contents($url)); $thumb->temp = $filename; $thumb->setFile(new UploadedFile($filename, basename($url))); $this->mediaManager->save($thumb); return $thumb; }