/** * @param $filePath string The full filepath of the asset you want to upload. The filetype will be automatically detected. * @param $folderId integer For now you still have to manually pass the correct folder ID. * * @return Media */ public function createFile($filePath, $folderId) { $fileHandler = $this->container->get('kunstmaan_media.media_handlers.file'); // Get file from FilePath. $data = new File($filePath, true); /** @var $media Media */ $media = $fileHandler->createNew($data); /** @var $folder Folder */ $folder = $this->folderRepository->getFolder($folderId); $media->setFolder($folder); $fileHandler->prepareMedia($media); $fileHandler->updateMedia($media); $fileHandler->saveMedia($media); $this->em->persist($media); $this->em->flush(); return $media; }
/** * @param Folder $folder * * @return Folder */ public function getRootFolderFor(Folder $folder) { $parentIds = $this->getParentIds($folder); return $this->repository->getFolder($parentIds[0]); }