protected function _addColumnFilterToCollection($column) { if ($this->getCollection()) { if ($column->getId() == 'shipping_telephone') { $cond = $column->getFilter()->getCondition(); $field = 't4.telephone'; $this->getCollection()->addFieldToFilter($field, $cond); return $this; } else { if ($column->getId() == 'shipping_city') { $cond = $column->getFilter()->getCondition(); $field = 't4.city'; $this->getCollection()->addFieldToFilter($field, $cond); return $this; } else { if ($column->getId() == 'shipping_region') { $cond = $column->getFilter()->getCondition(); $field = 't4.region'; $this->getCollection()->addFieldToFilter($field, $cond); return $this; } else { if ($column->getId() == 'shipping_postcode') { $cond = $column->getFilter()->getCondition(); $field = 't4.post'; $this->getCollection()->addFieldToFilter($field, $cond); return $this; } else { if ($column->getId() == 'product_count') { $cond = $column->getFilter()->getCondition(); $field = $column->getFilterIndex() ? $column->getFilterIndex() : $column->getIndex(); $this->getCollection()->getSelect()->having($this->getCollection()->getResource()->getReadConnection()->prepareSqlCondition($field, $cond)); return $this; } else { if ($column->getId() == 'skus') { $cond = $column->getFilter()->getCondition(); $field = 't6.sku'; $this->getCollection()->joinSkus(); $this->getCollection()->addFieldToFilter($field, $cond); return $this; } else { return parent::_addColumnFilterToCollection($column); } } } } } } } }