diff --git a/plugins/generic/browse/pages/BrowseHandler.inc.php b/plugins/generic/browse/pages/BrowseHandler.inc.php index 0dcc51265b5..43ae934c9f5 100644 --- a/plugins/generic/browse/pages/BrowseHandler.inc.php +++ b/plugins/generic/browse/pages/BrowseHandler.inc.php @@ -9,7 +9,7 @@ * @class BrowseHandler * @ingroup plugins_generic_browse * - * @brief Handle requests for additional browse functions. + * @brief Handle requests for additional browse functions. */ import('classes.handler.Handler'); @@ -22,7 +22,7 @@ class BrowseHandler extends Handler { */ function sections($args = array(), &$request) { $this->setupTemplate($request, true); - + $router =& $request->getRouter(); $journal =& $router->getContext($request); @@ -35,12 +35,12 @@ function sections($args = array(), &$request) { $section =& $sectionDao->getSection($sectionId); $publishedArticleDao = &DAORegistry::getDAO('PublishedArticleDAO'); $publishedArticleIds = $publishedArticleDao->getPublishedArticleIdsBySection($sectionId); - + $rangeInfo = Handler::getRangeInfo('search'); $totalResults = count($publishedArticleIds); $publishedArticleIds = array_slice($publishedArticleIds, $rangeInfo->getCount() * ($rangeInfo->getPage()-1), $rangeInfo->getCount()); $results = new VirtualArrayIterator(ArticleSearch::formatResults($publishedArticleIds), $totalResults, $rangeInfo->getPage(), $rangeInfo->getCount()); - + $templateMgr = &TemplateManager::getManager(); $templateMgr->assign_by_ref('results', $results); $templateMgr->assign('title', $section->getLocalizedTitle()); @@ -56,30 +56,30 @@ function sections($args = array(), &$request) { if (!in_array($section->getId(), $excludedSections)) { $sections[$section->getLocalizedTitle()] = $section->getId(); } - } + } ksort($sections); - + $rangeInfo = Handler::getRangeInfo('search'); $totalResults = count($sections); $sections = array_slice($sections, $rangeInfo->getCount() * ($rangeInfo->getPage()-1), $rangeInfo->getCount()); $results = new VirtualArrayIterator($sections, $totalResults, $rangeInfo->getPage(), $rangeInfo->getCount()); - + $templateMgr =& TemplateManager::getManager(); $templateMgr->assign_by_ref('results', $results); $templateMgr->assign('enableBrowseBySections', $enableBrowseBySections); - $templateMgr->display($browsePlugin->getTemplatePath() . 'searchIndex.tpl'); + $templateMgr->display($browsePlugin->getTemplatePath() . 'searchIndex.tpl'); } } else { $request->redirect(null, 'index'); } } - + /** * Show list of journal sections identify types. */ function identifyTypes($args = array(), &$request) { $this->setupTemplate($request, true); - + $router =& $request->getRouter(); $journal =& $router->getContext($request); @@ -102,12 +102,12 @@ function identifyTypes($args = array(), &$request) { $publishedArticleIdsBySection = $publishedArticleDao->getPublishedArticleIdsBySection($section->getId()); $publishedArticleIds = array_merge($publishedArticleIds, $publishedArticleIdsBySection); } - + $rangeInfo = Handler::getRangeInfo('search'); $totalResults = count($publishedArticleIds); $publishedArticleIds = array_slice($publishedArticleIds, $rangeInfo->getCount() * ($rangeInfo->getPage()-1), $rangeInfo->getCount()); $results = new VirtualArrayIterator(ArticleSearch::formatResults($publishedArticleIds), $totalResults, $rangeInfo->getPage(), $rangeInfo->getCount()); - + $templateMgr = &TemplateManager::getManager(); $templateMgr->assign_by_ref('results', $results); $templateMgr->assign('title', $identifyType); @@ -119,27 +119,27 @@ function identifyTypes($args = array(), &$request) { $sectionsIterator =& $sectionDao->getJournalSections($journal->getId()); $sectionidentifyTypes = array(); while (($section =& $sectionsIterator->next())) { - if (!in_array($section->getId(), $excludedIdentifyTypes) && !in_array($section->getLocalizedIdentifyType(), $sectionidentifyTypes)) { + if ($section->getLocalizedIdentifyType() && !in_array($section->getId(), $excludedIdentifyTypes) && !in_array($section->getLocalizedIdentifyType(), $sectionidentifyTypes)) { $sectionidentifyTypes[] =& $section->getLocalizedIdentifyType(); } - } + } sort($sectionidentifyTypes); - + $rangeInfo = Handler::getRangeInfo('search'); $totalResults = count($sectionidentifyTypes); $sectionidentifyTypes = array_slice($sectionidentifyTypes, $rangeInfo->getCount() * ($rangeInfo->getPage()-1), $rangeInfo->getCount()); $results = new VirtualArrayIterator($sectionidentifyTypes, $totalResults, $rangeInfo->getPage(), $rangeInfo->getCount()); - + $templateMgr =& TemplateManager::getManager(); $templateMgr->assign_by_ref('results', $results); $templateMgr->assign('enableBrowseByIdentifyTypes', $enableBrowseByIdentifyTypes); - $templateMgr->display($browsePlugin->getTemplatePath() . 'searchIndex.tpl'); + $templateMgr->display($browsePlugin->getTemplatePath() . 'searchIndex.tpl'); } } else { $request->redirect(null, 'index'); } } - + /** * Ensure that we have a journal and the plugin is enabled. */ @@ -147,8 +147,8 @@ function authorize(&$request, &$args, $roleAssignments) { $router =& $request->getRouter(); $journal =& $router->getContext($request); if (!isset($journal)) return false; - $browsePlugin =& PluginRegistry::getPlugin('generic', BROWSE_PLUGIN_NAME); - if (!isset($browsePlugin)) return false; + $browsePlugin =& PluginRegistry::getPlugin('generic', BROWSE_PLUGIN_NAME); + if (!isset($browsePlugin)) return false; if (!$browsePlugin->getEnabled()) return false; return parent::authorize($request, $args, $roleAssignments); } diff --git a/plugins/generic/browse/templates/searchIndex.tpl b/plugins/generic/browse/templates/searchIndex.tpl index d6fd7746247..354ba329f3b 100644 --- a/plugins/generic/browse/templates/searchIndex.tpl +++ b/plugins/generic/browse/templates/searchIndex.tpl @@ -28,6 +28,8 @@
{page_info iterator=$results}    {page_links anchor="results" iterator=$results name="search"} {else} +
+ {translate key="search.noResults"} {/if}