Привет, пытаемся заставить 2 расширения работать в сетке заказов на продажу, действиях массового заказа Amasty и Orders2CSV.
В настоящее время Orders2CSV находится в списке и отлично работает. Он имеет следующий код для перезаписи Sales_Order_Grid:
<?php
/**
* Ext4mage Orders2csv Module
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to Henrik Kier <[email protected]> so we can send you a copy immediately.
*
* @category Ext4mage
* @package Ext4mage_Orders2csv
* @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* @author Henrik Kier <[email protected]>
* */ class Ext4mage_Orders2csv_Block_Sales_Order_Grid extends Mage_Adminhtml_Block_Sales_Order_Grid { const XPATH_CONFIG_SETTINGS_IS_ACTIVE = 'orders2csv/settings/is_active';
protected function _prepareMassaction() {
parent::_prepareMassaction();
if (Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_IS_ACTIVE)) {
$this->getMassactionBlock()->addItem('orders2csv', array(
'label'=> Mage::helper('sales')->__('Orders2CSV'),
'url' => $this->getUrl('*/sales_order_orders2csv/makecsv'),
));
} } } ?>
Однако у MassActions есть следующее, что я считаю вместо того, чтобы перезаписывать исходный блок, который он добавляет к нему:
<?php
/**
* @author Amasty Team
* @copyright Copyright (c) 2010-2011 Amasty (http://www.amasty.com)
* @package Amasty_Oaction
*/
class Amasty_Oaction_Block_Adminhtml_Widget_Grid_Massaction extends Mage_Adminhtml_Block_Widget_Grid_Massaction
{
public function isAvailable()
{
Mage::dispatchEvent('am_grid_massaction_actions', array(
'block' => $this,
'page' => $this->getRequest()->getControllerName(),
));
return parent::isAvailable();
}
public function getJavaScript()
{
$result = new Varien_Object(array(
'js' => parent::getJavaScript(),
'page' => $this->getRequest()->getControllerName(),
));
Mage::dispatchEvent('am_grid_massaction_js', array('result' => $result));
return $result->getJs();
}
}
Есть идеи, как добавить код MassAction в код Orders2CSV?
Любая помощь будет принята с благодарностью
Энди