container)) { $component = $this->options->get('component'); $this->container = Container::getInstance($component); } $filesystem = $this->container->filesystem; if (is_null($this->fullPath) && !empty($this->layoutId)) { $parts = explode('.', $this->layoutId); $file = array_pop($parts); $filePath = implode('/', $parts); $suffixes = $this->container->platform->getTemplateSuffixes(); foreach ($suffixes as $suffix) { $files[] = $file . $suffix . '.php'; } $files[] = $file . '.php'; $platformDirs = $this->container->platform->getPlatformBaseDirs(); $prefix = $this->container->platform->isBackend() ? $platformDirs['admin'] : $platformDirs['root']; $possiblePaths = [ $prefix . '/templates/' . $this->container->platform->getTemplate() . '/html/layouts/' . $filePath, $this->basePath . '/' . $filePath, $platformDirs['root'] . '/layouts/' . $filePath, ]; reset($files); foreach ($files as $fileName) { if (!is_null($this->fullPath)) { break; } $this->fullPath = $filesystem->pathFind($possiblePaths, $fileName); } } return $this->fullPath; } }