添加用户名以评论历史记录Magento 1.9

时间:2017-11-13 03:25:44

标签: magento magento-1.9

我想在评论记录中添加一个首字母。就像用户名会自动显示在评论中一样,这样人就不必手动键入。它只会显示自己的用户名。

我在这个问题上找到了两个指南。但是,它只适用于Magento 1.4和Magento 1.7。在我更改了指南中的文件后,它仍然无法正常工作。

有没有办法让它成为现实?

enter image description here

我添加到代码中的内容:

{{1}}

1 个答案:

答案 0 :(得分:0)

您需要创建简单的模块并在代码下面编写

app/code/local/Modulenamespace/Modulename/etc/config.xml

<adminhtml>
        <events>
            <controller_action_predispatch_adminhtml_sales_order_addComment>
                <observers>
                    <modulenamespace_modulename_unique_node>
                        <class>Your_Module_Model_Observer</class>
                        <method>controllerActionPredispatchAdminhtmlSalesOrderAddComment</method>
                    </modulenamespace_modulename_unique_node>
                </observers>
            </controller_action_predispatch_adminhtml_sales_order_addComment>
            <controller_action_predispatch_adminhtml_sales_order_creditmemo_save>
                <observers>
                    <modulenamespace_modulename_unique_node>
                        <class>Your_Module_Model_Observer</class>
                        <method>controllerActionPredispatchAdminhtmlSalesOrderCreditmemoSave</method>
                    </modulenamespace_modulename_unique_node>
                </observers>
            </controller_action_predispatch_adminhtml_sales_order_creditmemo_save>
            <controller_action_predispatch_adminhtml_sales_order_creditmemo_addComment>
                <observers>
                    <modulenamespace_modulename_unique_node>
                        <class>SSD_Authorizenetcim_Model_Observer</class>
                        <method>controllerActionPredispatchAdminhtmlSalesOrderCreditmemoAddComment</method>
                    </modulenamespace_modulename_unique_node>
                </observers>
            </controller_action_predispatch_adminhtml_sales_order_creditmemo_addComment>
        </events>
    </adminhtml>

/app/code/local/Modulenamespace/Modulename/Model/Observer.php

function controllerActionPredispatchAdminhtmlSalesOrderAddComment($observer)
{
    $history = Mage::app()->getRequest()->getPost('history');
    if ($history && isset($history['comment'])) {
        $history['comment'] .= $this->_getAppend();
        Mage::app()->getRequest()->setPost('history', $history);
    }
}
function controllerActionPredispatchAdminhtmlSalesOrderCreditmemoSave($observer)
{
    $post = Mage::app()->getRequest()->getPost('creditmemo');
    if ($post && isset($post['comment_text'])) {
        $post['comment_text'] .= $this->_getAppend();
        Mage::app()->getRequest()->setPost('creditmemo', $post);
    }
}
function controllerActionPredispatchAdminhtmlSalesOrderCreditmemoAddComment($observer)
{
    $post = Mage::app()->getRequest()->getPost('comment');
    if ($post && isset($post['comment'])) {
        $post['comment'] .= $this->_getAppend();
        Mage::app()->getRequest()->setPost('comment', $post);
    }
}
protected function _getAppend()
{
    $user     = Mage::getSingleton('admin/session');
    $username = $user->getUser()->getUsername();
    return "<br/><br/> Posted by: " . $username;
}