X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/349162ea139556b2d25e09e155cec84e21cc9227..refs/pull/2902/head:/app/Providers/AppServiceProvider.php diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index f41815399..145a7645b 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -1,19 +1,24 @@ -getClientOriginalExtension()), $validImageExtensions); - }); - - Validator::extend('no_double_extension', function ($attribute, $value, $parameters, $validator) { - $uploadName = $value->getClientOriginalName(); - return substr_count($uploadName, '.') < 2; - }); - - Validator::extend('safe_url', function ($attribute, $value, $parameters, $validator) { - $cleanLinkName = strtolower(trim($value)); - $isJs = strpos($cleanLinkName, 'javascript:') === 0; - $isData = strpos($cleanLinkName, 'data:') === 0; - return !$isJs && !$isData; - }); - // Custom blade view directives Blade::directive('icon', function ($expression) { return ""; }); - Blade::directive('exposeTranslations', function ($expression) { - return "startPush('translations'); ?>" . - "" . - '' . "\n" . - "" . - 'stopPush(); ?>'; - }); - // Allow longer string lengths after upgrade to utf8mb4 Schema::defaultStringLength(191); // Set morph-map due to namespace changes Relation::morphMap([ 'BookStack\\Bookshelf' => Bookshelf::class, - 'BookStack\\Book' => Book::class, - 'BookStack\\Chapter' => Chapter::class, - 'BookStack\\Page' => Page::class, + 'BookStack\\Book' => Book::class, + 'BookStack\\Chapter' => Chapter::class, + 'BookStack\\Page' => Page::class, ]); // View Composers - View::composer('partials.breadcrumbs', BreadcrumbsViewComposer::class); + View::composer('entities.breadcrumbs', BreadcrumbsViewComposer::class); } /** @@ -86,7 +65,11 @@ 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')); + return new SettingService($app->make(Setting::class), $app->make(Repository::class)); + }); + + $this->app->singleton(SocialAuthService::class, function ($app) { + return new SocialAuthService($app->make(SocialiteFactory::class), $app->make(LoginService::class)); }); } }