/** * Setup default view finder and view paths. * * @param Container $app */ public function __construct(Container $app) { // Default themes path $this->basePath = config('theme.path'); // Config view finder $paths = $app['config']['view.paths']; $this->view = $app->make('view'); $this->view->setFinder(new ThemeViewFinder($app['files'], (array) $paths)); // Scan themes $this->scanThemes(); }
/** * Set the view finder instance. * * @param \Illuminate\View\ViewFinderInterface $finder * @return void * @static */ public static function setFinder($finder) { \Illuminate\View\Factory::setFinder($finder); }
/** * Registers the view paths by creating a new array and injecting a new FileViewFinder * * @param Factory $view * @param FileViewFinder $finder * @param TenantParticipant $tenant * * @return array */ protected function registerPathsInFinder(Factory $view, FileViewFinder $finder, TenantParticipant $tenant) { $paths = []; $this->addPathToViewPaths($paths, $tenant->getDomain()); $this->addPathToViewPaths($paths, $tenant->getTenantOwner()->getDomain()); $paths = array_merge($paths, $finder->getPaths()); $finder = $this->createViewFinder($finder, $paths); // replace ViewFinder in ViewManager with new instance with ordered paths $view->setFinder($finder); return $paths; }