Magento – How to override admin create order controller

controllersmagento-1.9overrides

I am trying to override adminhtml_sales_order_create controller. I have created a small module app/code/local/Akina/Sales/etc/config.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Akina_Sales>
            <version>0.1</version>
        </Akina_Sales>
    </modules>
    <admin>
        <routers>
            <adminhtml>
                <args>
                    <modules>
                        <sales before="Mage_Adminhtml">Akina_Sales_Adminhtml</sales> 
                    </modules>
               </args>
            </adminhtml>
        </routers>
    </admin>
</config>

and created controller file as

app/code/local/Akina/Sales/controllers/Adminhtml/Sales/order/CreateorderController.php

<?php
require_once 'Mage/Adminhtml/controllers/Sales/Order/CreateController.php';
class Akina_Sales_Adminhtml_sales_Order_CreateorderController extends Mage_Adminhtml_Sales_Order_CreateController
{
    public function saveAction()
    {
        echo "test";die;
    }
}

My module declaration file

<?xml version="1.0"?>
<config>
    <modules>
        <Akina_Sales>
            <active>true</active>
            <codePool>local</codePool>
        </Akina_Sales>
    </modules>
</config>

I am unable to override this controller, where did I go wrong?

Best Answer

you need to add this in the module declaration file

<depends>
    <Mage_Adminhtml />
</depends>

right below <codePool>local</codePool>.

place your new controller in app/code/local/Akina/Sales/controllers/Adminhtml/Sales/Order/CreateController.php
and name the controller class Akina_Sales_Adminhtml_Sales_Order_CreateController.
be careful at uppercase letters.

Related Topic