Beispiel #1
0
 protected function _addColumnFilterToCollection($column)
 {
     if ($this->getCollection()) {
         $field = $column->getFilterIndex() ? $column->getFilterIndex() : $column->getIndex();
         if ($column->getFilterConditionCallback()) {
             call_user_func($column->getFilterConditionCallback(), $this->getCollection(), $column);
         } else {
             $cond = $column->getFilter()->getCondition();
             if ($field && isset($cond)) {
                 if (strpos($field, 'am_attribute_') !== FALSE) {
                     $attribute = str_replace('am_attribute_', '', $field);
                     $this->getCollection()->addAttributeToFilter($attribute, $cond);
                 } else {
                     if ($field == "low_stock") {
                         $this->getCollection()->addFilter("if(stock_item.item_id IS NULL, 0 , 1)", $cond);
                     } else {
                         parent::_addColumnFilterToCollection($column);
                     }
                 }
             }
         }
     }
     return $this;
 }