本文整理汇总了PHP中Mage_Adminhtml_Block_Widget_Grid_Column::getFilter方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Adminhtml_Block_Widget_Grid_Column::getFilter方法的具体用法?PHP Mage_Adminhtml_Block_Widget_Grid_Column::getFilter怎么用?PHP Mage_Adminhtml_Block_Widget_Grid_Column::getFilter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Adminhtml_Block_Widget_Grid_Column
的用法示例。
在下文中一共展示了Mage_Adminhtml_Block_Widget_Grid_Column::getFilter方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _addColumnFilterToCollection
/**
* Filter number of customers column
*
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
* @return Enterprise_CustomerSegment_Block_Adminhtml_Report_Customer_Segment_Grid
*/
protected function _addColumnFilterToCollection($column)
{
if ($column->getId() == 'customer_count') {
if ($column->getFilter()->getValue() !== null) {
$this->getCollection()->addCustomerCountFilter($column->getFilter()->getValue());
}
} else {
parent::_addColumnFilterToCollection($column);
}
return $this;
}
示例2: _filterStoreCondition
/**
* Helper function to add store filter condition
*
* @param Mage_Core_Model_Mysql4_Collection_Abstract $collection Data collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column Column information to be filtered
*/
protected function _filterStoreCondition($collection, $column)
{
if (!($value = $column->getFilter()->getValue())) {
return;
}
$this->getCollection()->addStoreFilter($value);
}
示例3: _filterPrice
/**
* Callback method for applying price filter.
* @param Mage_Catalog_Model_Resource_Product_Collection $_collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $_column
*/
public function _filterPrice($_collection, $_column)
{
$_field = $_column->getFilterIndex() ? $_column->getFilterIndex() : $_column->getIndex();
$_condition = $_column->getFilter()->getCondition();
if (!$_field || !is_array($_condition)) {
return;
}
if (!array_key_exists('type', $_condition) || !is_numeric($_condition['type'])) {
$_collection->addFieldToFilter($_field, $_condition);
} else {
$_storeId = (int) $this->getRequest()->getParam('store', 0);
$_store = Mage::app()->getStore($_storeId);
$_joinCondition = array('`e`.`entity_id` = `at_reservation_price`.`entity_id`', '`at_reservation_price`.`store_id` = ' . $_store->getId(), '`at_reservation_price`.`ptype` = ' . $_condition['type']);
if (array_key_exists('from', $_condition)) {
$_joinCondition[] = '`at_reservation_price`.`price` >= ' . $_condition['from'];
}
if (array_key_exists('to', $_condition)) {
$_joinCondition[] = '`at_reservation_price`.`price` <= ' . $_condition['to'];
}
$_joinCondition[] = '`at_reservation_price`.`date_from` = \'0000-00-00 00:00:00\' OR DATE(`at_reservation_price`.`date_from`) <= DATE(\'' . date('Y-m-d H:i:s', Mage::getModel('core/date')->gmtTimestamp(time())) . '\')';
$_joinCondition[] = '`at_reservation_price`.`date_to` = \'0000-00-00 00:00:00\' OR DATE(`at_reservation_price`.`date_to`) >= DATE(\'' . date('Y-m-d H:i:s', Mage::getModel('core/date')->gmtTimestamp(time())) . '\')';
$_collection->getSelect()->joinInner(array('at_reservation_price' => $_collection->getTable('payperrentals/reservationprices')), '(' . implode(') AND (', $_joinCondition) . ')', array('price_type' => 'at_reservation_price.ptype', 'reservation_price' => 'at_reservation_price.price', 'reservation_number' => 'at_reservation_price.numberof'));
/** TODO Check collection count calculation with group. I think need change join for use distinct */
$_collection->getSelect()->group('e.entity_id');
}
}
示例4: _filterManifesto
/**
*
* @param Mage_Sales_Model_Resource_Order_Shipment_Grid_Collection $collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
*
* @return \Zitec_Dpd_Block_Adminhtml_Sales_Shipment_Grid
*/
protected function _filterManifesto($collection, $column)
{
$manifestRef = $column->getFilter()->getCondition();
if ($manifestRef) {
$resource = Mage::getSingleton('core/resource');
/* @var $resource Mage_Core_Model_Resource */
$whereClause = $resource->getConnection("core_read")->quoteInto("manifest.manifest_ref like ? ", $manifestRef);
$collection->getSelect()->where($whereClause);
$debug = (string) $collection->getSelect();
}
return $this;
}
示例5: _filterInSetsCondition
/**
* @param Varien_Data_Collection $collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
*/
protected function _filterInSetsCondition($collection, $column)
{
$selected = $this->_getSelectedAttributeSets();
if (empty($selected)) {
$selected = '0';
}
$value = $column->getFilter()->getValue();
if ($value) {
$collection->addFieldToFilter('main_table.attribute_set_id', array('in' => $selected));
} else {
$collection->addFieldToFilter('main_table.attribute_set_id', array('nin' => $selected));
}
}
示例6: _addColumnFilterToCollection
/**
* Add column filter to collection
*
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
* @return Enterprise_Reward_Block_Adminhtml_Customer_Edit_Tab_Reward_History_Grid
*/
protected function _addColumnFilterToCollection($column)
{
if ($this->getCollection()) {
$field = $column->getFilterIndex() ? $column->getFilterIndex() : $column->getIndex();
if ($field == 'website_id' || $field == 'points_balance') {
$cond = $column->getFilter()->getCondition();
if ($field && isset($cond)) {
$this->getCollection()->addFieldToFilter('main_table.' . $field, $cond);
}
} else {
parent::_addColumnFilterToCollection($column);
}
}
return $this;
}
示例7: _addColumnFilterToCollection
/**
* Add custom column filter to collection
*
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
* @return Mage_Api2_Block_Adminhtml_Permissions_User_Edit_Tab_Roles
*/
protected function _addColumnFilterToCollection($column)
{
if ($column->getId() == 'assigned_user_role') {
$userRoles = $this->_getSelectedRoles();
if ($column->getFilter()->getValue()) {
$this->getCollection()->addFieldToFilter('entity_id', array('in' => $userRoles));
} elseif (!empty($userRoles)) {
$this->getCollection()->addFieldToFilter('entity_id', array('nin' => $userRoles));
} else {
$this->getCollection();
}
} else {
parent::_addColumnFilterToCollection($column);
}
return $this;
}
示例8: apply
/**
* Apply the condition to the given collection by way of the resource specified on instantiation
*
* @param \Cm_Mongo_Model_Resource_Collection_Abstract $collection
* @param \Mage_Adminhtml_Block_Widget_Grid_Column $column
*/
public function apply(Cm_Mongo_Model_Resource_Collection_Abstract $collection, Mage_Adminhtml_Block_Widget_Grid_Column $column)
{
if (is_string($this->_resource)) {
$filterCollection = Mage::getResourceModel($this->_resource);
} else {
$filterCollection = $this->_resource;
}
var_dump($filterCollection);
if ($this->_filters) {
$filterCollection->addFieldToFilter($this->_filters);
}
$field = $column->getFilterIndex() ? $column->getFilterIndex() : $column->getIndex();
$cond = $column->getFilter()->getCondition();
if ($field && isset($cond)) {
$filterCollection->addFieldToFilter($field, $cond);
}
$collection->addFieldToFilter($this->_field, '$in', $filterCollection->getAllIds(TRUE));
}
示例9: addStatusFilter
public function addStatusFilter(Mage_Eav_Model_Entity_Collection_Abstract $collection, Mage_Adminhtml_Block_Widget_Grid_Column $column)
{
// echo $column->getFilter()->getValue();die;
$collection->addFieldToFilter('main_table.status', array('eq' => $column->getFilter()->getValue()));
// echo $collection->getSelect();die;
}
示例10: addIsUsedFilterCallback
/**
* Callback function that filters collection by field "Used" from grid
*
* @param Mage_Core_Model_Resource_Db_Collection_Abstract $collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
*/
public function addIsUsedFilterCallback($collection, $column)
{
$filterValue = $column->getFilter()->getCondition();
$fieldExpression = $this->getConnection()->getCheckSql('main_table.times_used > 0', 1, 0);
$resultCondition = $this->_getConditionSql($fieldExpression, array('eq' => $filterValue));
$collection->getSelect()->where($resultCondition);
}
示例11: _addColumnFilterToCollection
/**
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
* @return Mage_Api2_Block_Adminhtml_Roles_Tab_Users
*/
protected function _addColumnFilterToCollection($column)
{
if ($column->getId() == 'filter_in_role_users') {
$inRoleIds = $this->getUsers();
if (empty($inRoleIds)) {
$inRoleIds = 0;
}
if ($column->getFilter()->getValue()) {
$this->getCollection()->addFieldToFilter('user_id', array('in' => $inRoleIds));
} else {
if ($inRoleIds) {
$this->getCollection()->addFieldToFilter('user_id', array('nin' => $inRoleIds));
}
}
} else {
parent::_addColumnFilterToCollection($column);
}
return $this;
}
示例12: _addColumnFilterToCollection
/**
* Add column filter to collection
*
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
* @return Mage_Adminhtml_Block_Customer_Edit_Tab_Wishlist
*/
protected function _addColumnFilterToCollection($column)
{
/* @var $collection Mage_Wishlist_Model_Mysql4_Item_Collection */
$collection = $this->getCollection();
$value = $column->getFilter()->getValue();
if ($collection && $value) {
switch ($column->getId()) {
case 'product_name':
$collection->addProductNameFilter($value);
break;
case 'store':
$collection->addStoreFilter($value);
break;
case 'days':
$collection->addDaysFilter($value);
break;
default:
$collection->addFieldToFilter($column->getIndex(), $column->getFilter()->getCondition());
break;
}
}
return $this;
}
示例13: _filterStoreCondition
/**
* Filter store column
*
* @param Esendex_Sms_Model_Resource_Trigger_Collection $collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
* @return self
*/
protected function _filterStoreCondition(Esendex_Sms_Model_Resource_Trigger_Collection $collection, Mage_Adminhtml_Block_Widget_Grid_Column $column)
{
if (!($value = $column->getFilter()->getValue())) {
return;
}
$collection->addStoreFilter($value);
return $this;
}
示例14: _eventFilter
/**
* Filter event collection
*
* @param Varien_Data_Collection $collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
*/
protected function _eventFilter($collection, $column)
{
if (!($value = $column->getFilter()->getValue())) {
return $this;
}
$collection = $this->getCollection();
foreach ($collection as $itemKey => $item) {
if (strpos($item->getEvent(), $value) === false) {
$collection->removeItemByKey($itemKey);
}
}
return $this;
}
示例15: _filterStoreCondition
/**
* filter store column
*
* @access protected
* @param Iou_UltimatePopUp_Model_Resource_Popup_Comment_Collection $collection
* @param Mage_Adminhtml_Block_Widget_Grid_Column $column
* @return Iou_UltimatePopUp_Block_Adminhtml_Popup_Comment_Grid
* @author Ultimate Module Creator
*/
protected function _filterStoreCondition($collection, $column)
{
if (!($value = $column->getFilter()->getValue())) {
return;
}
$collection->setStoreFilter($value);
return $this;
}