コード例 #1
0
 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()));
     }
 }
コード例 #2
0
ファイル: Image.php プロジェクト: wieloming/PictureGallery
 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;
 }