Newscoop\Services\ThemesService::getThemePath PHP Метод

getThemePath() публичный Метод

{@inheritDoc}
public getThemePath ( )
    public function getThemePath()
    {
        $issue = $this->issueService->getIssue();
        if (!$issue) {
            return;
        }
        $languageId = $issue->getLanguageId();
        $publication = $this->publicationService->getPublication();
        $cacheKeyThemePath = $this->cacheService->getCacheKey(array('getThemePath', $languageId, $publication->getId(), $issue->getNumber()), 'issue');
        $themePath = null;
        if ($this->cacheService->contains($cacheKeyThemePath)) {
            $themePath = $this->cacheService->fetch($cacheKeyThemePath);
        } else {
            $webOutput = null;
            $outSetIssues = null;
            $cacheKeyWebOutput = $this->cacheService->getCacheKey(array('OutputService', 'Web'), 'outputservice');
            if ($this->cacheService->contains($cacheKeyWebOutput)) {
                $webOutput = $this->cacheService->fetch($cacheKeyWebOutput);
            } else {
                $webOutput = $this->findByName('Web');
                $this->cacheService->save($cacheKeyWebOutput, $webOutput);
            }
            $outSetIssues = $this->findByIssueAndOutput($issue->getId(), $webOutput);
            if (!is_null($outSetIssues)) {
                $themePath = $outSetIssues->getThemePath()->getPath();
            }
            $this->cacheService->save($cacheKeyThemePath, $themePath);
        }
        return $themePath;
    }