39 lines
1.1 KiB
PHP
39 lines
1.1 KiB
PHP
<?php namespace BookStack\Providers;
|
|
|
|
use BookStack\Services\SettingService;
|
|
use BookStack\Setting;
|
|
use Illuminate\Support\ServiceProvider;
|
|
use Validator;
|
|
|
|
class AppServiceProvider extends ServiceProvider
|
|
{
|
|
/**
|
|
* Bootstrap any application services.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function boot()
|
|
{
|
|
// Custom validation methods
|
|
Validator::extend('is_image', function($attribute, $value, $parameters, $validator) {
|
|
$imageMimes = ['image/png', 'image/bmp', 'image/gif', 'image/jpeg', 'image/jpg', 'image/tiff', 'image/webp'];
|
|
return in_array($value->getMimeType(), $imageMimes);
|
|
});
|
|
|
|
\Blade::directive('icon', function($expression) {
|
|
return "<?php echo icon($expression); ?>";
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Register any application services.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function register()
|
|
{
|
|
$this->app->singleton(SettingService::class, function($app) {
|
|
return new SettingService($app->make(Setting::class), $app->make('Illuminate\Contracts\Cache\Repository'));
|
|
});
|
|
}
|
|
}
|