2013-09-08 6 views
2

Привет, я пытаюсь получить 2 расширения для работы в сетке заказа клиента, действиях массового заказа Амасти и Orders2CSV.Magento - 2 Расширения с использованием заказа на продажу Gri

Как указано 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 имеет после чего я верю, вместо того, чтобы перезаписать Orignal блок, он добавляет к нему:

<?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?

Любая помощь будет принята с благодарностью

Энди

ответ

0

Было бы полезно, если бы вы могли бы также добавить config.xml.

Если оба модуля определенно переписывают (переписывают-XML-тег в config.xml), вы должны изменить одно из расширений, чтобы переписать другой, так что у вас есть какие-то скопированные перезаписи. Вы можете сделать это в локальной области, чтобы не перезаписывать файлы в папке сообщества.

0

Как вы видите, нет никаких конфликтов, поскольку один расширение переписывает Mage_Adminhtml_Block_Sales_Order_Grid класс и второй один переписывает

Mage_Adminhtml_Block_Widget_Grid_Massaction класс.

Возможно, все, что вам нужно, это включить действия в настройках модуля.