registerTranslations(); $this->registerConfig(); $this->registerViews(); } /** * Register the service provider. * * @return void */ public function register() { $registrator = $this->app->make('registerSettingsExtension'); $registrator->register('contactForm', 'contactform::module.name', 'contactform::admin.settings.form'); } /** * Register config. * * @return void */ protected function registerConfig() { $this->publishes([__DIR__ . '/../Config/config.php' => config_path('contactform.php')]); $this->mergeConfigFrom(__DIR__ . '/../Config/config.php', 'contactform'); } /** * Register views. * * @return void */ public function registerViews() { $viewPath = base_path('resources/views/modules/contactform'); $sourcePath = __DIR__ . '/../Resources/views'; $this->publishes([$sourcePath => $viewPath], 'module-views'); $this->loadViewsFrom(array_merge(array_map(function ($path) { return $path . '/modules/contactform'; }, \Config::get('view.paths')), [$sourcePath]), 'contactform'); /** * @var $registrator TemplateRegistrator */ $registrator = $this->app->make('registerTemplateDir'); try { // setup some global variables $registrator->setBaseDirectory('resources/views/modules/contactform/visitor'); $registrator->setNamespace('contactform'); $registrator->setModuleId(call_user_func([config('contactform.handler'), 'getModuleId'])); // register path with current template name $registrator->register(config('app.theme'), 'contactform::admin/adminMenu.templatePath'); } catch (InvalidArgumentException $e) { // ignore this exception } } /** * Register translations. * * @return void */ public function registerTranslations() { $this->loadTranslationsFrom(__DIR__ . '/../Resources/lang', 'contactform'); } /** * Get the services provided by the provider. * * @return array */ public function provides() { return array (); } }