public function initLogo() { $collectionType = new CollectionType(); $collectionType->setName('My collection type'); $this->em->persist($collectionType); $collection = new Collection(); $collection->setType($collectionType); $this->em->persist($collection); $imageType = new MediaType(); $imageType->setName('image'); $imageType->setDescription('This is an image'); $this->em->persist($imageType); $file = new File(); $file->setVersion(1); $fileVersion = new FileVersion(); $fileVersion->setVersion(1); $fileVersion->setName('logo.jpeg'); $fileVersion->setMimeType('image/jpg'); $fileVersion->setFile($file); $fileVersion->setSize(1124214); $fileVersion->setDownloadCounter(2); $fileVersion->setChanged(new \DateTime('1937-04-20')); $fileVersion->setCreated(new \DateTime('1937-04-20')); $file->addFileVersion($fileVersion); $this->em->persist($fileVersion); $this->logo = new Media(); $this->logo->setType($imageType); $this->logo->setCollection($collection); $this->logo->addFile($file); $file->setMedia($this->logo); $this->em->persist($this->logo); $this->em->persist($file); }
protected function createMedia($name) { $media = new Media(); $media->setType($this->imageType); // create file $file = new File(); $file->setVersion(1); $file->setMedia($media); // create file version $fileVersion = new FileVersion(); $fileVersion->setVersion(1); $fileVersion->setName($name . '.jpeg'); $fileVersion->setMimeType('image/jpg'); $fileVersion->setFile($file); $fileVersion->setSize(1124214); $fileVersion->setDownloadCounter(2); $fileVersion->setChanged(new \DateTime('1937-04-20')); $fileVersion->setCreated(new \DateTime('1937-04-20')); $fileVersion->setStorageOptions('{"segment":"1","fileName":"' . $name . '.jpeg"}'); if (!file_exists(__DIR__ . '/../../uploads/media/1')) { mkdir(__DIR__ . '/../../uploads/media/1', 0777, true); } copy($this->getImagePath(), __DIR__ . '/../../uploads/media/1/' . $name . '.jpeg'); // create meta $fileVersionMeta = new FileVersionMeta(); $fileVersionMeta->setLocale('en-gb'); $fileVersionMeta->setTitle($name); $fileVersionMeta->setDescription($this->mediaDefaultDescription); $fileVersionMeta->setFileVersion($fileVersion); $fileVersion->addMeta($fileVersionMeta); $fileVersion->setDefaultMeta($fileVersionMeta); $file->addFileVersion($fileVersion); $media->addFile($file); $media->setCollection($this->collection); $this->em->persist($media); $this->em->persist($file); $this->em->persist($fileVersionMeta); $this->em->persist($fileVersion); $this->em->flush(); return $media; }