1: <?php
2: /**
3: * Magento
4: *
5: * NOTICE OF LICENSE
6: *
7: * This source file is subject to the Open Software License (OSL 3.0)
8: * that is bundled with this package in the file LICENSE.txt.
9: * It is also available through the world-wide-web at this URL:
10: * http://opensource.org/licenses/osl-3.0.php
11: * If you did not receive a copy of the license and are unable to
12: * obtain it through the world-wide-web, please send an email
13: * to license@magentocommerce.com so we can send you a copy immediately.
14: *
15: * DISCLAIMER
16: *
17: * Do not edit or add to this file if you wish to upgrade Magento to newer
18: * versions in the future. If you wish to customize Magento for your
19: * needs please refer to http://www.magentocommerce.com for more information.
20: *
21: * @category Mage
22: * @package Mage_Adminhtml
23: * @copyright Copyright (c) 2012 Magento Inc. (http://www.magentocommerce.com)
24: * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25: */
26:
27: /**
28: * Shipment tracking control form
29: *
30: * @category Mage
31: * @package Mage_Adminhtml
32: * @author Magento Core Team <core@magentocommerce.com>
33: */
34: class Mage_Adminhtml_Block_Sales_Order_Invoice_Create_Tracking extends Mage_Adminhtml_Block_Template
35: {
36: public function _construct()
37: {
38: $this->setTemplate('sales/order/invoice/create/tracking.phtml');
39: }
40:
41: /**
42: * Prepares layout of block
43: *
44: * @return Mage_Adminhtml_Block_Sales_Order_View_Giftmessage
45: */
46: protected function _prepareLayout()
47: {
48: $this->setChild('add_button',
49: $this->getLayout()->createBlock('adminhtml/widget_button')
50: ->setData(array(
51: 'label' => Mage::helper('sales')->__('Add Tracking Number'),
52: 'class' => '',
53: 'onclick' => 'trackingControl.add()'
54: ))
55: );
56: }
57:
58: /**
59: * Retrieve shipment model instance
60: *
61: * @return Mage_Sales_Model_Order_Shipment
62: */
63: public function getShipment()
64: {
65: return Mage::registry('current_shipment');
66: }
67:
68: /**
69: * Retrieve shipment model instance
70: *
71: * @return Mage_Sales_Model_Order_Shipment
72: */
73: public function getInvoice()
74: {
75: return Mage::registry('current_invoice');
76: }
77:
78: /**
79: * Retrieve
80: *
81: * @return unknown
82: */
83: public function getCarriers()
84: {
85:
86: $carriers = array();
87: $carrierInstances = Mage::getSingleton('shipping/config')->getAllCarriers(
88: $this->getInvoice()->getStoreId()
89: );
90: $carriers['custom'] = Mage::helper('sales')->__('Custom Value');
91: foreach ($carrierInstances as $code => $carrier) {
92: if ($carrier->isTrackingAvailable()) {
93: $carriers[$code] = $carrier->getConfigData('title');
94: }
95: }
96: return $carriers;
97: }
98: }
99: