/** * Get the Glide server instance that powers the image API */ public static function server() { if (!isset(static::$_server)) { $api = new Glide\Api\Api(\CMF\Image::manager(), array(new Glide\Manipulators\Orientation(), new \CMF\Glide\Manipulators\Crop(), new Glide\Manipulators\Size(2000 * 2000), new Glide\Manipulators\Brightness(), new Glide\Manipulators\Contrast(), new Glide\Manipulators\Gamma(), new Glide\Manipulators\Sharpen(), new Glide\Manipulators\Filter(), new Glide\Manipulators\Blur(), new Glide\Manipulators\Pixelate(), new Glide\Manipulators\Watermark(\CMF\Storage::adapter()), new Glide\Manipulators\Background(), new Glide\Manipulators\Border(), new Glide\Manipulators\Encode())); static::$_server = new Glide\Server(\CMF\Storage::adapter(), \CMF\Storage::adapter(APPPATH . 'cache/image'), $api); } return static::$_server; }
protected function outputImage($path, $params) { try { // Output the image using glide server ob_clean(); \CMF\Image::server()->outputImage($path, $this->getImageParams($params)); } catch (\Exception $e) { // Output a placeholder - exception could mean file doesn't exist, or some other environment issue if (!\CMF\Image::server()->getSource()->has('assets/images/placeholder.png')) { \CMF\Image::server()->setSource(\CMF\Storage::adapter(CMFPATH . 'modules/image/public')); } \CMF\Image::server()->outputImage('assets/images/placeholder.png', array('w' => intval($params['w']), 'h' => intval($params['h']), 'bg' => 'efefef', 'fit' => 'fill')); } }