SearchHandler::similarDocuments PHP Method

similarDocuments() public method

Redirect to a search query that shows documents similar to the one identified by an article id in the request.
public similarDocuments ( $args, &$request )
$args array
$request Request
    function similarDocuments($args, &$request)
    {
        $this->validate(null, $request);
        // Retrieve the (mandatory) ID of the article that
        // we want similar documents for.
        $articleId = $request->getUserVar('articleId');
        if (!is_numeric($articleId)) {
            $request->redirect(null, 'search');
        }
        // Check whether a search plugin provides terms for a similarity search.
        $articleSearch = new ArticleSearch();
        $searchTerms = $articleSearch->getSimilarityTerms($articleId);
        // Redirect to a search query with the identified search terms (if any).
        if (empty($searchTerms)) {
            $searchParams = null;
        } else {
            $searchParams = array('query' => implode(' ', $searchTerms));
        }
        $request->redirect(null, 'search', 'search', null, $searchParams);
    }