public function registerBladeEngine($resolver) { parent::registerBladeEngine($resolver); $this->app->singleton('blade.compiler', function ($app) { return $app->make(BladeCompiler::class); }); }
/** * Register any application services. * @return void */ public function register() { $this->app->singleton('theme', function () { $theme = new ThemeModel(); return $theme; }); return parent::register(); }
public function testCanCompileBladeTags() { // Bind ViewProvider $this->app['events'] = Mockery::mock('Illuminate\\Events\\Dispatcher'); $this->app['config']->set('view.paths', array('views')); $viewProvider = new ViewServiceProvider($this->app); $viewProvider->registerEngineResolver(); $viewProvider->registerViewFinder(); if (method_exists($viewProvider, 'registerEnvironment')) { $viewProvider->registerEnvironment(); } else { $viewProvider->registerFactory(); } // Register tags $this->app['flatten.templating']->registerTags(); $blade = $this->app['view']->getEngineResolver()->resolve('blade')->getCompiler(); $this->assertEquals("<?php echo Flatten\\Facades\\Flatten::section('section', 512, function() { ?>", $blade->compileString("@cache('section', 512)")); $this->assertEquals("<?php echo Flatten\\Facades\\Flatten::section('section', function() { ?>", $blade->compileString("@cache('section')")); $this->assertEquals("<?php }); ?>", $blade->compileString("@endcache")); }
/** * Override the parent's register function * to add our own functionality! * * @return void */ public function register() { $this->app->bind('themer', function ($app) { return new Themer($app); }); $this->app->bind('themer.metadata', function ($app) { return new MetaData(); }); $this->registerGenerateCommand(); parent::register(); // $this->registerThemeViewPaths(); $this->registered = true; }
/** * Register the service provider. * * @return void */ public function register() { // This is only for the template system. $templateIdString = ''; $templateIdsArray = $this->app['config']->get('template.templateIds'); if (is_array($templateIdsArray) && !empty($templateIdsArray) && !empty($_SERVER['HTTP_HOST'])) { $templateIdString = array_search($_SERVER['HTTP_HOST'], $templateIdsArray); $templateIdString .= '/'; } define('TEMPLATE_ID', $templateIdString); //$this->package('niterain/PhpTalView', 'PhpTalView', __DIR__.'/../../'); parent::register(); }
public function register() { parent::register(); $this->registerCommands(); }
<?php require __DIR__ . '/vendor/autoload.php'; use Illuminate\Container\Container; use Illuminate\Events\Dispatcher; use Illuminate\Filesystem\Filesystem; use Illuminate\Support\Facades\Facade; use Illuminate\Support\Facades\View; use Illuminate\Support\Fluent; use Illuminate\View\ViewServiceProvider; $app = new Container(); $app['events'] = new Dispatcher(); $app['config'] = new Fluent(); $app['files'] = new Filesystem(); $app['config']['view.paths'] = [__DIR__ . '/views/']; $app['config']['view.compiled'] = __DIR__ . '/compiled/'; $serviceProvider = new ViewServiceProvider($app); $serviceProvider->register(); $serviceProvider->boot(); Facade::setFacadeApplication($app); class_alias(View::class, 'View');
/** * Override the view finder used by Laravel to be our Theme view finder. * * @return void */ protected function overrideViewFinder() { $originalViewFinder = $this->app['view.finder']; $this->app['view.finder'] = $this->app->share(function ($app) use($originalViewFinder) { $paths = array_merge($app['config']['view.paths'], $originalViewFinder->getPaths()); $viewFinder = new IlluminateViewFinder($app['files'], $paths, $originalViewFinder->getExtensions()); $viewFinder->setThemeBag($app['themes']); foreach ($originalViewFinder->getPaths() as $location) { $viewFinder->addLocation($location); } foreach ($originalViewFinder->getHints() as $namespace => $hints) { $viewFinder->addNamespace($namespace, $hints); } return $viewFinder; }); // Now that we have overridden the "view.finder" IoC offest, we // need to re-register the factory as we cannot reset it // on the Factory at runtime, yet. $viewServiceProvider = new ViewServiceProvider($this->app); $viewServiceProvider->registerFactory(); }
/** @inheritdoc */ public function registerFactory() { parent::registerFactory(); return $this; }
public function register() { parent::register(); $this->registerEnvironment(); $this->registerBladeExtensions(); }