/** * Trigerred when a file is uploaded * @param UploadEvent $event */ public function onUpload(UploadEvent $event) { //TODO look into resizing images $media = $event->getMedia(); $metaData = new MetaData(); $fileSize = filesize($media->getResource()->getAbsolutePath()); //TODO generate md5 hash and check if other images with same size have the same hash in order to avoid duplicates $metaData->setTimeUploaded(new \DateTime('now')); $em = $this->doctrine->getManager(); //Transcode the different types and populate the metadata for the proper type $this->logger->info("Uploaded an image media"); $imageSize = getimagesize($media->getResource()->getAbsolutePath()); $metaData->setWidth($imageSize[0]); $metaData->setHeight($imageSize[1]); $metaData->setSize($fileSize); $em->persist($metaData); $media->setMetaData($metaData); $em->flush(); }
public static function getMetaDataObject(MetaData $metaData) { return array('timeUploaded' => $metaData->getTimeUploaded(), 'width' => $metaData->getWidth(), 'height' => $metaData->getHeight(), 'size' => $metaData->getSize(), 'id' => $metaData->getId()); }