コード例 #1
0
ファイル: ImageController.php プロジェクト: gitiki/gitiki
 public function imageAction(Gitiki $gitiki, Request $request, $path, $_format)
 {
     $image = new Image($gitiki['wiki_path'], $path . '.' . $_format);
     if (false === $image->isFile() || false === $image->isReadable()) {
         $gitiki->abort(404, sprintf('The image "%s" was not found.', $image->getRelativePath()));
     }
     if ($request->query->has('details')) {
         return $gitiki['twig']->render('image.html.twig', ['page' => $image]);
     }
     $response = $gitiki->sendFile($image)->setMaxAge(0);
     if (!$response->isNotModified($request) && null !== ($size = $request->query->get('size'))) {
         try {
             $response->setFile($gitiki['image']->resize($image, $size), null, false, false)->deleteFileAfterSend(true);
         } catch (InvalidSizeException $e) {
         }
     }
     return $response;
 }