1: <?php
2: /**
3: * Magento
4: *
5: * NOTICE OF LICENSE
6: *
7: * This source file is subject to the Open Software License (OSL 3.0)
8: * that is bundled with this package in the file LICENSE.txt.
9: * It is also available through the world-wide-web at this URL:
10: * http://opensource.org/licenses/osl-3.0.php
11: * If you did not receive a copy of the license and are unable to
12: * obtain it through the world-wide-web, please send an email
13: * to license@magentocommerce.com so we can send you a copy immediately.
14: *
15: * DISCLAIMER
16: *
17: * Do not edit or add to this file if you wish to upgrade Magento to newer
18: * versions in the future. If you wish to customize Magento for your
19: * needs please refer to http://www.magentocommerce.com for more information.
20: *
21: * @category Mage
22: * @package Mage_Adminhtml
23: * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24: * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25: */
26:
27: /**
28: * Adminhtml transaction details grid
29: *
30: * @category Mage
31: * @package Mage_Adminhtml
32: * @author Magento Core Team <core@magentocommerce.com>
33: */
34: class Mage_Adminhtml_Block_Sales_Transactions_Child_Grid extends Mage_Adminhtml_Block_Sales_Transactions_Grid
35: {
36: /**
37: * Columns, that should be removed from grid
38: *
39: * @var array
40: */
41: protected $_columnsToRemove = array('parent_id', 'parent_txn_id');
42:
43: /**
44: * Disable pager and filter
45: *
46: */
47: public function __construct()
48: {
49: parent::__construct();
50: $this->setId('transactionChildGrid');
51: $this->setDefaultSort('created_at');
52: $this->setPagerVisibility(false);
53: $this->setFilterVisibility(false);
54: }
55:
56: /**
57: * Add filter by parent transaction ID
58: *
59: * @return Mage_Adminhtml_Block_Widget_Grid
60: */
61: protected function _prepareCollection()
62: {
63: $collection = Mage::getResourceModel('sales/order_payment_transaction_collection');
64: $collection->addParentIdFilter(Mage::registry('current_transaction')->getId());
65: $this->setCollection($collection);
66: return parent::_prepareCollection();
67: }
68:
69: /**
70: * Remove some columns and make other not sortable
71: *
72: */
73: protected function _prepareColumns()
74: {
75: $result = parent::_prepareColumns();
76:
77: foreach ($this->_columns as $key => $value) {
78: if (in_array($key, $this->_columnsToRemove)) {
79: unset($this->_columns[$key]);
80: } else {
81: $this->_columns[$key]->setData('sortable', false);
82: }
83: }
84: return $result;
85: }
86: }
87: