Вход Регистрация
Файл: system/vendor/intervention/image/src/Intervention/Image/ImageServiceProviderLaravelRecent.php
Строк: 95
<?php

namespace InterventionImage;

use 
IlluminateSupportServiceProvider;

class 
ImageServiceProviderLaravelRecent extends ServiceProvider
{
    
/**
     * Determines if Intervention Imagecache is installed
     *
     * @return boolean
     */
    
private function cacheIsInstalled()
    {
        return 
class_exists('Intervention\Image\ImageCache');
    }

    
/**
     * Bootstrap the application events.
     *
     * @return void
     */
    
public function boot()
    {
        
$this->publishes([
            
__DIR__.'/../../config/config.php' => config_path('image.php')
        ]);

        
// setup intervention/imagecache if package is installed
        
$this->cacheIsInstalled() ? $this->bootstrapImageCache() : null;
    }

    
/**
     * Register the service provider.
     *
     * @return void
     */
    
public function register()
    {
        
$app $this->app;

        
// merge default config
        
$this->mergeConfigFrom(
            
__DIR__.'/../../config/config.php',
            
'image'
        
);

        
// create image
        
$app->singleton('image', function ($app) {
            return new 
ImageManager($this->getImageConfig($app));
        });

        
$app->alias('image''InterventionImageImageManager');
    }

    
/**
     * Bootstrap imagecache
     *
     * @return void
     */
    
protected function bootstrapImageCache()
    {
        
$app $this->app;
        
$config __DIR__.'/../../../../imagecache/src/config/config.php';

        
$this->publishes([
            
$config => config_path('imagecache.php')
        ]);

        
// merge default config
        
$this->mergeConfigFrom(
            
$config,
            
'imagecache'
        
);

        
// imagecache route
        
if (is_string(config('imagecache.route'))) {

            
$filename_pattern '[ w\.\/\-\@()]+';

            
// route to access template applied image file
            
$app['router']->get(config('imagecache.route').'/{template}/{filename}', [
                
'uses' => 'InterventionImageImageCacheController@getResponse',
                
'as' => 'imagecache'
            
])->where(['filename' => $filename_pattern]);
        }
    }

    
/**
     * Return image configuration as array
     *
     * @param  Application $app
     * @return array
     */
    
private function getImageConfig($app)
    {
        
$config $app['config']->get('image');

        if (
is_null($config)) {
            return [];
        }

        return 
$config;
    }
}
Онлайн: 1
Реклама