]> BookStack Code Mirror - bookstack/blobdiff - app/Providers/AppServiceProvider.php
Updated 'Spanish Argentina' translation.
[bookstack] / app / Providers / AppServiceProvider.php
index 51e205b79e58c44b01350a33528ca37616356db5..b06b2f3a25b992322b8172e110f0ecd3ef447cab 100644 (file)
@@ -1,8 +1,9 @@
-<?php
-
-namespace Oxbow\Providers;
+<?php namespace BookStack\Providers;
 
+use BookStack\Services\SettingService;
+use BookStack\Setting;
 use Illuminate\Support\ServiceProvider;
+use Validator;
 
 class AppServiceProvider extends ServiceProvider
 {
@@ -13,7 +14,18 @@ class AppServiceProvider extends ServiceProvider
      */
     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); ?>";
+        });
+
+        // Allow longer string lengths after upgrade to utf8mb4
+        \Schema::defaultStringLength(191);
     }
 
     /**
@@ -23,6 +35,8 @@ class AppServiceProvider extends ServiceProvider
      */
     public function register()
     {
-        //
+        $this->app->singleton(SettingService::class, function ($app) {
+            return new SettingService($app->make(Setting::class), $app->make('Illuminate\Contracts\Cache\Repository'));
+        });
     }
 }