Exemple #1
0
 public function testGetAvailableSortByOptions()
 {
     $options = $this->_model->getAvailableSortByOptions();
     $this->assertContains('price', array_keys($options));
     $this->assertContains('position', array_keys($options));
     $this->assertContains('name', array_keys($options));
 }
Exemple #2
0
 /**
  * Prepare Sort By fields from Category Data
  *
  * @param Mage_Catalog_Model_Category $category
  * @return Mage_Catalog_Block_Product_List
  */
 public function prepareSortableFieldsByCategory($category)
 {
     if (!$this->getAvailableOrders()) {
         $this->setAvailableOrders($category->getAvailableSortByOptions());
     }
     $availableOrders = $this->getAvailableOrders();
     if (!$this->getSortBy()) {
         if ($categorySortBy = $category->getDefaultSortBy()) {
             if (!$availableOrders) {
                 $availableOrders = $this->_getConfig()->getAttributeUsedForSortByArray();
             }
             if (isset($availableOrders[$categorySortBy])) {
                 $this->setSortBy($categorySortBy);
             }
         }
     }
     return $this;
 }
Exemple #3
0
 /**
  * Prepare Sort By fields from Category Data
  *
  * @param Mage_Catalog_Model_Category $category
  * @return Mage_Catalog_Block_Product_List
  */
 public function prepareSortableFieldsByCategory($category)
 {
     if (!$this->getAvailableOrders()) {
         $this->setAvailableOrders($category->getAvailableSortByOptions());
     }
     $availableOrders = $this->getAvailableOrders();
     /*if (!$this->getSortBy()) {
           if ($categorySortBy = $category->getDefaultSortBy()) {
               if (!$availableOrders) {
                   $availableOrders = $this->_getConfig()->getAttributeUsedForSortByArray();
               }
               if (isset($availableOrders[$categorySortBy])) {
                   $this->setSortBy($categorySortBy);
               }
           }
       } */
     //$this->setSortBy('relevance');
     unset($availableOrders['position']);
     $availableOrders = array_merge(array('relevance' => $this->__('Relevance')), $availableOrders);
     $this->setAvailableOrders($availableOrders)->setDefaultDirection('desc')->setSortBy('relevance');
     return $this;
 }