Ojs\CoreBundle\Service\Search\SearchManager::generateCitationUrl PHP Метод

generateCitationUrl() приватный Метод

private generateCitationUrl ( Result $citationObject ) : string
$citationObject Elastica\Result
Результат string
    private function generateCitationUrl(Result $citationObject)
    {
        $source = $citationObject->getSource();
        //check article count
        if (count($source['articles']) < 1) {
            return false;
        }
        //check article id is exists
        if (isset($source['articles'][0]['id'])) {
            $article = $source['articles'][0];
        } else {
            return false;
        }
        //check article issue is exists
        if (isset($article['issue']['id'])) {
            $issue = $article['issue'];
        } else {
            return false;
        }
        //check article journal is exists
        if (isset($article['journal'])) {
            $journal = $article['journal'];
        } else {
            return false;
        }
        return $this->router->generate('ojs_article_page', ['slug' => $journal['slug'], 'article_id' => $article['id'], 'issue_id' => $issue['id']], true);
    }