Search code examples
magentomagento-1.9adminhtml

Is there any way to modify this tracking.phtml on magento admin?


When we choose one of the option below, the field 'title' automatically filled with selected value from carrier options.

I want to do the same for 'number' field, it would be filled with something when I choose my custom carrier. Is there any way to modify this tracking form? If yes, how? tracking form

Thank's in advance


Solution

  • Add following observer in your module's config.xml

                 <events>
                    <adminhtml_block_html_before>
                        <observers>
                            <add_script_on_shipment>
                                <class>yourmodule/observer</class>
                                <method>addScript</method>
                            </add_script_on_shipment>
                        </observers>
                    </adminhtml_block_html_before>
                </events>
    

    Put following code in Observer.php

    public function addScript($observer) {
        $block = $observer->getEvent()->getBlock();
        if (($block instanceof Mage_Adminhtml_Block_Sales_Order_Shipment_View_Tracking) && $block->getType() != 'core/template' /*&& is your carrier active*/) {
            $shipment = $block->getShipment();
            $_child = clone $block;
            $_child->setType('core/template');
            $block->setChild('calling_block', $_child);
            $block->setTemplate('yourmodule/custom_script.phtml');
        }
    }
    

    add following code with required modifications in custom_script.phtml

    <?php echo $this->getChildHtml('calling_block');?>
    <script type="text/javascript">
         /*your custom javascript code to bind onchange event*/
    </script>