public function uploadAction() { /** @var $request Request */ $request = $this->get('request'); /** @var $user \Vendor\GalleryBundle\Entity\User */ $user = $this->get('security.context')->getToken()->getUser(); $userName = $user->getUsername(); $data = $request->request->all(); if (!$request->isMethod("post")) { return $this->renderUploadTemplate(new Img()); } if (!$data['title']) { return $this->renderUploadTemplate(new Img(), array('info' => 'Uzupełnij tytuł użytkowniku ' . $userName)); } $file = $request->files->get('file0'); if (!$file->getClientOriginalName()) { $img = new Img(); $img->setTitle($data['title']); return $this->renderUploadTemplate($img, array('info' => 'Uzupełnij zdjęcie użytkowniku ' . $userName)); } try { $this->getImageService()->uploadAndCreateThumbnail($request); return $this->redirect($this->generateUrl('vendor_gallery_homepage')); } catch (FileUploadException $e) { return $this->renderUploadTemplate(new Img(), array('errors' => $e->getMessage())); } }
public function uploadAndCreateThumbnail(Request $request) { /** @var $file \Symfony\Component\HttpFoundation\File\UploadedFile */ $file = $request->files->get('file0'); $img = new Img(); $img->setTitle($request->request->get('title')); $path = $this->uploadPictureAndReturnUrl($file); $img->setPath($path); $img->setFileName($file->getClientOriginalName()); $thumbNail = $this->createThumbnail($img, 200, 200); $img->setThumbnails(array($thumbNail)); $this->objectManager->persist($img); $this->objectManager->flush(); return $img; }