text: <?php
  /**
   * Magento
   *
   * NOTICE OF LICENSE
   *
   * This source file is subject to the Open Software License (OSL 3.0)
   * that is bundled with this package in the file LICENSE.txt.
   * It is also available through the world-wide-web at this URL:
   * http://opensource.org/licenses/osl-3.0.php
   * If you did not receive a copy of the license and are unable to
   * obtain it through the world-wide-web, please send an email
   * to license@magento.com so we can send you a copy immediately.
   *
   * DISCLAIMER
   *
   * Do not edit or add to this file if you wish to upgrade Magento to newer
   * versions in the future. If you wish to customize Magento for your
   * needs please refer to http://www.magento.com for more information.
   *
   * @category    Mage
   * @package     Mage_Adminhtml
   * @copyright  Copyright (c) 2006-2020 Magento, Inc. (http://www.magento.com)
   * @license    http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
   */
  
  /**
   * Adminhtml dashboard last search keywords block
   *
   * @category   Mage
   * @package    Mage_Adminhtml
   * @author      Magento Core Team <core@magentocommerce.com>
   */
  
  class Mage_Adminhtml_Block_Dashboard_Searches_Top extends Mage_Adminhtml_Block_Dashboard_Grid
  {
      protected $_collection;
  
      public function __construct()
      {
          parent::__construct();
          $this->setId('topSearchGrid');
      }
  
      protected function _prepareCollection()
      {
          if (!Mage::helper('core')->isModuleEnabled('Mage_CatalogSearch')) {
              return parent::_prepareCollection();
          }
          $this->_collection = Mage::getModel('catalogsearch/query')
              ->getResourceCollection();
  
          if ($this->getRequest()->getParam('store')) {
              $storeIds = $this->getRequest()->getParam('store');
          } else if ($this->getRequest()->getParam('website')){
              $storeIds = Mage::app()->getWebsite($this->getRequest()->getParam('website'))->getStoreIds();
          } else if ($this->getRequest()->getParam('group')){
              $storeIds = Mage::app()->getGroup($this->getRequest()->getParam('group'))->getStoreIds();
          } else {
              $storeIds = '';
          }
  
          $this->_collection
              ->setPopularQueryFilter($storeIds);
  
          $this->setCollection($this->_collection);
  
          return parent::_prepareCollection();
      }
  
      protected function _prepareColumns()
      {
          $this->addColumn('search_query', array(
              'header'    => $this->__('Search Term'),
              'sortable'  => false,
              'index'     => 'name',
              'renderer'  => 'adminhtml/dashboard_searches_renderer_searchquery',
          ));
  
          $this->addColumn('num_results', array(
              'header'    => $this->__('Results'),
              'sortable'  => false,
              'index'     => 'num_results',
              'type'      => 'number'
          ));
  
          $this->addColumn('popularity', array(
              'header'    => $this->__('Number of Uses'),
              'sortable'  => false,
              'index'     => 'popularity',
              'type'      => 'number'
          ));
  
          $this->setFilterVisibility(false);
          $this->setPagerVisibility(false);
  
          return parent::_prepareColumns();
      }
  
      public function getRowUrl($row)
      {
          return $this->getUrl('*/catalog_search/edit', array('id'=>$row->getId()));
      }
  }
  