public function getImage($image_id, $image_name) { if ($img = VIImage::getImage($image_id, 'with-logo')) { $request = Request::instance(); $response = Response::make($img['image'], 200, ['Content-Type' => 'image/jpeg']); $time = date('r', $img['time']); $expires = date('r', strtotime('+1 year', $img['time'])); $response->setLastModified(new DateTime($time)); $response->setExpires(new DateTime($expires)); $response->setPublic(); if ($response->isNotModified($request)) { return $response; } else { $response->prepare($request); return $response; } } //$file = $this->filesystem->read($image_name); /* $image = new Imagick(); $image->pingImageBlob($file); $mimeType = $image->getImageMimeType(); $response = Response::make($file, 200); $response->header('Content-Type', $mimeType); return $response; */ }
$app = app(); $controller = $app->make($controller); return $controller->callAction($method, $params); })->where(['controller' => '[^/]+', 'action' => '[^/]+', 'args' => '[^?$]+']); }); #===========================================# # FRONTEND # #===========================================# Route::get('/', ['as' => 'home', 'uses' => 'HomeController@index']); /* * ------------------------------------------- * Imagelink Routes * ------------------------------------------ */ Route::get('/pic/{type}/{slug}-{id}.jpg', function ($type, $slug, $id) { if ($img = VIImage::getImage($id, $type)) { $request = Request::instance(); $response = Response::make($img['image'], 200, ['Content-Type' => 'image/jpeg']); $time = date('r', $img['time']); $expires = date('r', strtotime('+1 year', $img['time'])); $response->setLastModified(new DateTime($time)); $response->setExpires(new DateTime($expires)); $response->setPublic(); if ($response->isNotModified($request)) { return $response; } else { $response->prepare($request); return $response; } } return App::abort(404);