Shippit_Shippit - Version 4.3.18

Version Notes

Shippit Magento Integration module, using the Shippit v3 API.

Allows for retrieving shipping quotes during checkout and sending orders to Shippit.

Also adds Australian States and Territories to the available region options and Authority to Leave and Delivery Comments to the checkout process.

Download this release

Release Info

Developer Matthew Muscat
Extension Shippit_Shippit
Version 4.3.18
Comparing to
See all releases


Code changes from version 4.3.14 to 4.3.18

app/code/community/Shippit/Shippit/Model/Request/Sync/Order.php CHANGED
@@ -174,11 +174,15 @@ class Shippit_Shippit_Model_Request_Sync_Order extends Varien_Object
174
  return $rootItem;
175
  }
176
  else {
177
- return $item->getChildrenItems()[0];
 
 
178
  }
179
  }
180
  else {
181
- return $item->getChildrenItems()[0];
 
 
182
  }
183
  }
184
  else {
174
  return $rootItem;
175
  }
176
  else {
177
+ $items = $item->getChildrenItems();
178
+
179
+ return reset($items);
180
  }
181
  }
182
  else {
183
+ $items = $item->getChildrenItems();
184
+
185
+ return reset($items);
186
  }
187
  }
188
  else {
app/code/community/Shippit/Shippit/controllers/OrderController.php CHANGED
@@ -39,31 +39,107 @@ class Shippit_Shippit_OrderController extends Mage_Core_Controller_Front_Action
39
 
40
  public function updateAction()
41
  {
42
- if (!$this->helper->isActive()) {
43
- $this->logger->log('Shipping Sync is not active');
44
- $response = $this->_prepareResponse(false, self::ERROR_SYNC_DISABLED);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
 
46
  return $this->getResponse()->setBody($response);
47
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
 
 
 
49
  $apiKey = $this->getRequest()->getParam('api_key');
50
 
51
  if (empty($apiKey)) {
52
- $response = $this->_prepareResponse(false, self::ERROR_API_KEY_MISSING);
53
- $this->logger->log('Shipment Sync Error - ' . self::ERROR_API_KEY_MISSING, Zend_Log::WARN);
 
 
 
54
 
55
- return $this->getResponse()->setBody($response);
 
 
56
  }
57
 
58
- if (!$this->_checkApiKey($apiKey)) {
59
- $response = $this->_prepareResponse(false, self::ERROR_API_KEY_MISMATCH);
60
- $this->logger->log('Shipment Sync Error - ' . self::ERROR_API_KEY_MISMATCH, Zend_Log::WARN);
 
 
 
 
 
 
 
61
 
62
- return $this->getResponse()->setBody($response);
63
  }
64
 
65
- $request = json_decode(file_get_contents('php://input'), true);
 
66
 
 
 
67
  $metaData = array(
68
  'api_request' => array(
69
  'request_body' => $request
@@ -72,74 +148,115 @@ class Shippit_Shippit_OrderController extends Mage_Core_Controller_Front_Action
72
 
73
  $this->logger->setMetaData($metaData);
74
  $this->logger->log('Shipment Sync Request Recieved');
 
75
 
76
- $orderIncrementId = $request['retailer_order_number'];
77
- $orderShipmentState = $request['current_state'];
 
 
 
 
 
 
78
 
79
- $courierName = $request['courier_name'];
80
- $trackingNumber = $request['tracking_number'];
81
 
82
- if (isset($request['products'])) {
83
- $products = $request['products'];
84
- }
85
- else {
86
- $products = array();
87
  }
88
 
89
- if (empty($request)) {
90
- $response = $this->_prepareResponse(false, self::ERROR_BAD_REQUEST);
91
- $this->logger->log('Shipment Sync Error - ' . self::ERROR_BAD_REQUEST, Zend_Log::WARN);
 
 
 
 
92
 
93
- return $this->getResponse()->setBody($response);
94
  }
95
 
96
- if (empty($orderShipmentState) || $orderShipmentState != 'ready_for_pickup') {
97
- $response = $this->_prepareResponse(true, self::NOTICE_SHIPMENT_STATUS);
98
- $this->logger->log('Shipment Sync Error - ' . self::NOTICE_SHIPMENT_STATUS);
 
 
 
 
99
 
100
- return $this->getResponse()->setBody($response);
101
  }
102
 
103
- // attempt to get the order using the reference provided
104
- $order = $this->_getOrder($orderIncrementId);
105
 
 
 
106
  if (!$order->getId()) {
107
- $response = $this->_prepareResponse(false, self::ERROR_ORDER_MISSING);
 
 
 
 
 
108
 
109
- return $this->getResponse()->setBody($response);
110
  }
111
 
112
  if (!$order->canShip()) {
113
- $response = $this->_prepareResponse(false, self::ERROR_ORDER_STATUS);
 
 
 
114
 
115
- return $this->getResponse()->setBody($response);
 
 
116
  }
117
 
118
- try {
119
- $shipmentRequest = Mage::getModel('shippit/request_api_shipment')
120
- ->setOrder($order)
121
- ->processItems($products);
122
 
123
- // create the shipment
124
- $response = $this->_createShipment(
125
- $shipmentRequest->getOrder(),
126
- $shipmentRequest->getItems(),
127
- $courierName,
128
- $trackingNumber
129
- );
130
 
131
- return $this->getResponse()->setBody($response);
 
 
 
 
 
 
132
  }
133
- catch (Exception $e)
134
- {
135
- $response = $this->_prepareResponse(false, $e->getMessage());
136
- $this->logger->logException($e);
137
 
138
- return $this->getResponse()->setBody($response);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
139
  }
140
  }
141
 
142
- private function _prepareResponse($success, $message)
143
  {
144
  $response = array(
145
  'success' => $success,
@@ -153,28 +270,20 @@ class Shippit_Shippit_OrderController extends Mage_Core_Controller_Front_Action
153
  )
154
  );
155
 
 
 
 
 
 
 
 
156
  $this->logger->setMetaData($metaData);
 
157
 
158
  return Mage::helper('core')->jsonEncode($response);
159
  }
160
 
161
- private function _checkApiKey($apiKey)
162
- {
163
- $configuredApiKey = Mage::helper('shippit')->getApiKey();
164
-
165
- if ($configuredApiKey != $apiKey) {
166
- return false;
167
- }
168
-
169
- return true;
170
- }
171
-
172
- private function _getOrder($orderIncrementId)
173
- {
174
- return Mage::getModel('sales/order')->load($orderIncrementId, 'increment_id');
175
- }
176
-
177
- private function _createShipment($order, $items, $courierName, $trackingNumber)
178
  {
179
  $shipment = $order->prepareShipment($items);
180
 
@@ -187,7 +296,7 @@ class Shippit_Shippit_OrderController extends Mage_Core_Controller_Front_Action
187
  $track = Mage::getModel('sales/order_shipment_track')
188
  ->setNumber($trackingNumber)
189
  ->setCarrierCode(Shippit_Shippit_Helper_Data::CARRIER_CODE)
190
- ->setTitle('Shippit - ' . $courierName);
191
 
192
  $shipment->addTrack($track)
193
  ->register()
@@ -205,18 +314,21 @@ class Shippit_Shippit_OrderController extends Mage_Core_Controller_Front_Action
205
  $shipment->sendEmail(true, $comment);
206
  }
207
  catch (Mage_Core_Exception $e) {
208
- $this->logger->log('Shipment Sync Error - ' . self::ERROR_SHIPMENT_FAILED);
209
-
210
- return $this->_prepareResponse(false, self::ERROR_SHIPMENT_FAILED);
 
211
  }
212
 
213
- $this->logger->log('Shipment Sync Successful - ' . self::SUCCESS_SHIPMENT_CREATED);
214
-
215
- return $this->_prepareResponse(true, self::SUCCESS_SHIPMENT_CREATED);
 
216
  }
217
 
218
- $this->logger->log('Shipment Sync Error - ' . self::ERROR_SHIPMENT_FAILED);
219
-
220
- return $this->_prepareResponse(false, self::ERROR_SHIPMENT_FAILED);
 
221
  }
222
- }
39
 
40
  public function updateAction()
41
  {
42
+ if (!$this->_checkIsActive()) {
43
+ return;
44
+ }
45
+
46
+ if (!$this->_checkApiKey()) {
47
+ return;
48
+ }
49
+
50
+ $request = json_decode(file_get_contents('php://input'), true);
51
+
52
+ $this->_logRequest($request);
53
+
54
+ if (!$this->_checkRequest($request)) {
55
+ return;
56
+ }
57
+
58
+ // attempt to retrieve request data values for the shipment
59
+ $order = $this->_getOrder($request);
60
+ $products = $this->_getProducts($request);
61
+ $courierName = $this->_getCourierName($request);
62
+ $trackingNumber = $this->_getTrackingNumber($request);
63
+
64
+ if (!$this->_checkOrder($order)) {
65
+ return;
66
+ }
67
+
68
+ try {
69
+ $shipmentRequest = Mage::getModel('shippit/request_api_shipment')
70
+ ->setOrder($order)
71
+ ->processItems($products);
72
+
73
+ // create the shipment
74
+ $response = $this->_createShipment(
75
+ $shipmentRequest->getOrder(),
76
+ $shipmentRequest->getItems(),
77
+ $courierName,
78
+ $trackingNumber
79
+ );
80
+
81
+ return $this->getResponse()->setBody($response);
82
+ }
83
+ catch (Exception $e)
84
+ {
85
+ $response = $this->_prepareResponse(false, $e->getMessage());
86
+ $this->logger->logException($e);
87
 
88
  return $this->getResponse()->setBody($response);
89
  }
90
+ }
91
+
92
+ protected function _checkIsActive()
93
+ {
94
+ if (!$this->helper->isActive()) {
95
+ $response = $this->_prepareResponse(
96
+ false,
97
+ self::ERROR_SYNC_DISABLED
98
+ );
99
+
100
+ $this->getResponse()->setBody($response);
101
+
102
+ return false;
103
+ }
104
+
105
+ return true;
106
+ }
107
 
108
+ protected function _checkApiKey()
109
+ {
110
  $apiKey = $this->getRequest()->getParam('api_key');
111
 
112
  if (empty($apiKey)) {
113
+ $response = $this->_prepareResponse(
114
+ false,
115
+ self::ERROR_API_KEY_MISSING,
116
+ Zend_Log::WARN
117
+ );
118
 
119
+ $this->getResponse()->setBody($response);
120
+
121
+ return false;
122
  }
123
 
124
+ $configuredApiKey = Mage::helper('shippit')->getApiKey();
125
+
126
+ if ($configuredApiKey != $apiKey) {
127
+ $response = $this->_prepareResponse(
128
+ false,
129
+ self::ERROR_API_KEY_MISMATCH,
130
+ Zend_Log::WARN
131
+ );
132
+
133
+ $this->getResponse()->setBody($response);
134
 
135
+ return false;
136
  }
137
 
138
+ return true;
139
+ }
140
 
141
+ protected function _logRequest($request = array())
142
+ {
143
  $metaData = array(
144
  'api_request' => array(
145
  'request_body' => $request
148
 
149
  $this->logger->setMetaData($metaData);
150
  $this->logger->log('Shipment Sync Request Recieved');
151
+ }
152
 
153
+ protected function _checkRequest($request = array())
154
+ {
155
+ if (empty($request)) {
156
+ $response = $this->_prepareResponse(
157
+ false,
158
+ self::ERROR_BAD_REQUEST,
159
+ Zend_Log::WARN
160
+ );
161
 
162
+ $this->getResponse()->setBody($response);
 
163
 
164
+ return false;
 
 
 
 
165
  }
166
 
167
+ if (!isset($request['current_state']) || empty($request['current_state']) || $request['current_state'] != 'ready_for_pickup') {
168
+ $response = $this->_prepareResponse(
169
+ true,
170
+ self::NOTICE_SHIPMENT_STATUS
171
+ );
172
+
173
+ $this->getResponse()->setBody($response);
174
 
175
+ return false;
176
  }
177
 
178
+ if (!isset($request['retailer_order_number']) || empty($request['retailer_order_number'])) {
179
+ $response = $this->_prepareResponse(
180
+ false,
181
+ self::ERROR_ORDER_MISSING
182
+ );
183
+
184
+ $this->getResponse()->setBody($response);
185
 
186
+ return false;
187
  }
188
 
189
+ return true;
190
+ }
191
 
192
+ protected function _checkOrder($order)
193
+ {
194
  if (!$order->getId()) {
195
+ $response = $this->_prepareResponse(
196
+ false,
197
+ self::ERROR_ORDER_MISSING
198
+ );
199
+
200
+ $this->getResponse()->setBody($response);
201
 
202
+ return false;
203
  }
204
 
205
  if (!$order->canShip()) {
206
+ $response = $this->_prepareResponse(
207
+ false,
208
+ self::ERROR_ORDER_STATUS
209
+ );
210
 
211
+ $this->getResponse()->setBody($response);
212
+
213
+ return false;
214
  }
215
 
216
+ return true;
217
+ }
 
 
218
 
219
+ protected function _getOrder($request = array())
220
+ {
221
+ if (!isset($request['retailer_order_number'])) {
222
+ return false;
223
+ }
224
+
225
+ $orderIncrementId = $request['retailer_order_number'];
226
 
227
+ return Mage::getModel('sales/order')->load($orderIncrementId, 'increment_id');
228
+ }
229
+
230
+ protected function _getProducts($request = array())
231
+ {
232
+ if (isset($request['products'])) {
233
+ return $request['products'];
234
  }
 
 
 
 
235
 
236
+ return array();
237
+ }
238
+
239
+ protected function _getCourierName($request = array())
240
+ {
241
+ if (isset($request['courier_name'])) {
242
+ return 'Shippit - ' . $request['courier_name'];
243
+ }
244
+ else {
245
+ return 'Shippit';
246
+ }
247
+ }
248
+
249
+ protected function _getTrackingNumber($request = array())
250
+ {
251
+ if (isset($request['tracking_number'])) {
252
+ return $request['tracking_number'];
253
+ }
254
+ else {
255
+ return 'N/A';
256
  }
257
  }
258
 
259
+ protected function _prepareResponse($success, $message, $logLevel = Zend_Log::DEBUG)
260
  {
261
  $response = array(
262
  'success' => $success,
270
  )
271
  );
272
 
273
+ if ($success) {
274
+ $messageType = 'Shipment Sync Success';
275
+ }
276
+ else {
277
+ $messageType = 'Shipment Sync Error';
278
+ }
279
+
280
  $this->logger->setMetaData($metaData);
281
+ $this->logger->log($messageType, $message, $logLevel);
282
 
283
  return Mage::helper('core')->jsonEncode($response);
284
  }
285
 
286
+ protected function _createShipment($order, $items, $courierName, $trackingNumber)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
287
  {
288
  $shipment = $order->prepareShipment($items);
289
 
296
  $track = Mage::getModel('sales/order_shipment_track')
297
  ->setNumber($trackingNumber)
298
  ->setCarrierCode(Shippit_Shippit_Helper_Data::CARRIER_CODE)
299
+ ->setTitle($courierName);
300
 
301
  $shipment->addTrack($track)
302
  ->register()
314
  $shipment->sendEmail(true, $comment);
315
  }
316
  catch (Mage_Core_Exception $e) {
317
+ return $this->_prepareResponse(
318
+ false,
319
+ self::ERROR_SHIPMENT_FAILED
320
+ );
321
  }
322
 
323
+ return $this->_prepareResponse(
324
+ true,
325
+ self::SUCCESS_SHIPMENT_CREATED
326
+ );
327
  }
328
 
329
+ return $this->_prepareResponse(
330
+ false,
331
+ self::ERROR_SHIPMENT_FAILED
332
+ );
333
  }
334
+ }
app/code/community/Shippit/Shippit/etc/config.xml CHANGED
@@ -18,7 +18,7 @@
18
  <config>
19
  <modules>
20
  <Shippit_Shippit>
21
- <version>4.3.14</version>
22
  </Shippit_Shippit>
23
  </modules>
24
 
18
  <config>
19
  <modules>
20
  <Shippit_Shippit>
21
+ <version>4.3.18</version>
22
  </Shippit_Shippit>
23
  </modules>
24
 
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Shippit_Shippit</name>
4
- <version>4.3.14</version>
5
  <stability>stable</stability>
6
  <license>Open Software Licence</license>
7
  <channel>community</channel>
@@ -18,9 +18,9 @@ Allows for retrieving shipping quotes during checkout and sending orders to Ship
18
  &#xD;
19
  Also adds Australian States and Territories to the available region options and Authority to Leave and Delivery Comments to the checkout process.</notes>
20
  <authors><author><name>Matthew Muscat</name><user>matthewmuscat</user><email>matthew@mamis.com.au</email></author><author><name>William On</name><user>williamon</user><email>will@shippit.com</email></author></authors>
21
- <date>2016-09-26</date>
22
- <time>00:54:11</time>
23
- <contents><target name="magelib"><dir name="shippit-bugsnag"><file name="Autoload.php" hash="55266ba5e2f5b3d9e9331c6eaa0945d5"/><file name="Client.php" hash="e58b339776f7d039a7486c4381e31134"/><file name="Configuration.php" hash="d303821a0ee820f2191540f8b3df4379"/><file name="Diagnostics.php" hash="fe944e2c0e3cfd06931bf251da18d544"/><file name="Error.php" hash="a23e6f17acc4d295bec537c4ee4897e8"/><file name="ErrorTypes.php" hash="e273be2371c9251dbfdd89d4490280dd"/><file name="Notification.php" hash="77f1f6352d82f69408499c5e5487ea42"/><file name="Request.php" hash="4b5e27bb029d1423ed823ad2b327189d"/><file name="Stacktrace.php" hash="6a0ca0f67fcdf4058b150f7dd602c803"/></dir></target><target name="magecommunity"><dir name="Shippit"><dir name="Shippit"><dir name="Block"><dir name="Adminhtml"><dir name="Sales"><dir name="Order"><file name="Grid.php" hash="9208ed6e0b222590610f6a3e2a3ac254"/><file name="Items.php" hash="275116a2c42700de7a65fc9e0a6568c6"/></dir><file name="Order.php" hash="665a08b5f3f6432ba49327ad0d320572"/></dir><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><dir name="Renderer"><dir name="Shipping"><file name="Methods.php" hash="26428642657de1a0f0d22140fd84174d"/></dir><dir name="Shippit"><file name="ServiceClass.php" hash="7573d99e768fa6e2c4dc136a54f0d9fd"/></dir></dir><dir name="Sync"><dir name="Order"><file name="ShippingMethodMapping.php" hash="7296f3ac577b89c36c68693ab1a84a32"/></dir></dir></dir><dir name="Fieldset"><file name="Version.php" hash="6cbff78c307a14e3eed4219f180901b1"/></dir></dir></dir></dir></dir><dir name="Checkout"><dir name="Cart"><file name="Shipping.php" hash="dd5dc61d665da4746e5c2a4fc6df089f"/></dir><dir name="Shipping"><file name="AuthorityToLeave.php" hash="241ff5d226c8f848b9895b767883dc30"/><file name="DeliveryInstructions.php" hash="77b5fb807d9dfdd8b5b6bfab6f8df9a6"/></dir></dir></dir><file name="Exception.php" hash="909594393898823a108bab9c6a2e77ed"/><dir name="Helper"><file name="Api.php" hash="17386e28d75bc9ec3cc38e0e91d597cc"/><file name="Bugsnag.php" hash="c3a0355601dbf82cf9d5880ad4190b67"/><file name="Carrier.php" hash="f7d031b67b5c9beec38214236ff30b5a"/><file name="Checkout.php" hash="004418f9ee0de6ba090faa32e540d8a3"/><file name="Data.php" hash="df6ea2d54c389f91721dc28c72b1dea1"/><dir name="Sync"><dir name="Order"><file name="Items.php" hash="c2031228b78726051a4096054a80363b"/></dir><file name="Order.php" hash="cbdb9511638e9854de82d67017008739"/><file name="Shipping.php" hash="c19889222cffbddf178a6236f78ae41c"/></dir></dir><dir name="Model"><dir name="Api"><file name="Order.php" hash="8163a93c23b9b90b0dc7ab942bd36f57"/></dir><file name="Logger.php" hash="64ed33a2d7554a9da58a080e3462504e"/><dir name="Observer"><dir name="Adminhtml"><dir name="Sales"><file name="Order.php" hash="44393a4d02ea135f68d74ca8ec37394a"/></dir></dir><dir name="Order"><file name="Sync.php" hash="a4f15047fb0fd2681c950498992d7aac"/></dir><dir name="Quote"><file name="AuthorityToLeave.php" hash="c675772dcb25d6a35372f46060b3a8e4"/><file name="DeliveryInstructions.php" hash="8cf1353e6406710208a5312c9cd68c7d"/></dir><dir name="Shipping"><file name="Tracking.php" hash="988cffc30e8d606ba6a2754ba4b2d3a3"/></dir><file name="Shippit.php" hash="3625385600a8e3f0c64492bfaac9c681"/><dir name="System"><file name="Config.php" hash="e5515b7d0cccde3ad7bb70fbe33a3f0b"/></dir></dir><dir name="Request"><dir name="Api"><file name="Order.php" hash="0421d706b753475696d9574d4630505e"/><file name="Shipment.php" hash="af1b78ce51f1d8b89a9c1e9bc6b81ed5"/></dir><dir name="Sync"><file name="Order.php" hash="ab9a2ba4247d6afb6c75044e60ac5bf6"/></dir></dir><dir name="Resource"><file name="Setup.php" hash="8eb28f6cf5f637597d5f0ad668b64269"/><dir name="Sync"><dir name="Order"><file name="Collection.php" hash="b6fc680edfd57d6cbf810290799dad2c"/><dir name="Item"><file name="Collection.php" hash="935dd5847558e6629ea671b91ad9a1df"/></dir><file name="Item.php" hash="1ba227660a2d1ad09283c312e7e88a98"/></dir><file name="Order.php" hash="4808f4501b760ac09af24fba0df7494d"/></dir></dir><dir name="Shipping"><dir name="Carrier"><file name="Shippit.php" hash="1fe37e4368561831576e737aca28afe2"/></dir></dir><file name="Shippit.php" hash="d48601c7f37bf3328b2e863d41d5fe13"/><dir name="Sync"><dir name="Order"><file name="Config.php" hash="f52faaf68213e313746abde13781350e"/><file name="Item.php" hash="dee4de2286845cdaed924f81dfeeab51"/></dir><file name="Order.php" hash="460b020cd0a44d8f956e415fbccae620"/></dir><dir name="System"><dir name="Config"><dir name="Source"><dir name="Catalog"><dir name="Attributes"><file name="Location.php" hash="b2fcaaabfa58d290d731e3b09b0afb5d"/></dir><file name="Attributes.php" hash="1f051ddfcea5034c3b0f299ed35d2c7c"/><file name="Products.php" hash="6e78a631987441e8228ee410fe5addd2"/><dir name="Unit"><file name="Weight.php" hash="9d15b42826be4e39c3f2a105826cf6be"/></dir></dir><dir name="Order"><dir name="Status"><file name="Processing.php" hash="1cd4481df806b98b5b20afefe8c16e38"/></dir></dir><dir name="Shipping"><file name="Methods.php" hash="683dd6c9d412d52be6941ec1aec0e1eb"/></dir><dir name="Shippit"><file name="Environment.php" hash="a71561807ce05052a678a5d8d0656695"/><file name="MaxTimeslots.php" hash="a87f36fb06a9e9b79c1ffdc5ff1c42c0"/><file name="Methods.php" hash="41675a89d439dfb0e6ba17d1f323febd"/><dir name="Order"><file name="Status.php" hash="fcd986d9d3634cf257d58c212ae650c8"/></dir><dir name="Sync"><file name="Mode.php" hash="64ff642d93ad9505f160f48b5061efae"/><file name="SendAllOrders.php" hash="99fc5b1dcb2d49768025194cd02aba0e"/></dir></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Shippit"><dir name="Order"><file name="SyncController.php" hash="d5a22ab5fe1346e68d7967e9cad20402"/></dir><file name="OrderController.php" hash="7d4e2c615b524c211d75b4b7c4edc0e7"/></dir></dir><file name="OrderController.php" hash="34b6ab46d4f1f0d52d52c5cb561f76db"/></dir><dir name="data"><dir name="shippit_setup"><file name="data-install-4.0.0.php" hash="fcc2ad84912ffaf9dc07b866f5fd7460"/><file name="data-upgrade-4.1.0-4.1.1.php" hash="aebc8c802bf8af45219500526da944fa"/><file name="data-upgrade-4.1.6-4.1.7.php" hash="2b2fe61d97645521516728a329cba9ad"/><file name="data-upgrade-4.2.3-4.2.4.php" hash="bd3ed5e70b9349d830fa789e0b394d83"/><file name="data-upgrade-4.3.2-4.3.3.php" hash="3699a8b74b0898f48ec1b9daeb3fcfcc"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="fb2576b73bea6a323cfd157e95c25e90"/><file name="config.xml" hash="98e3815f28039d948154662490b15ca8"/><file name="system.xml" hash="f6ea042a7657ed35ee931663068b2908"/></dir><dir name="sql"><dir name="shippit_setup"><file name="install-4.0.0.php" hash="19a0a09b6a10c89b73edc7f0a744fe5a"/><file name="upgrade-4.0.9-4.1.0.php" hash="35e56aeea2b78bba82e845d4c4c16fc1"/><file name="upgrade-4.1.0-4.1.1.php" hash="5c675c05272472cdd7c585aa6db750d9"/><file name="upgrade-4.2.5-4.2.6.php" hash="15dd734c1f7797d8cd0ff5b91a2dda55"/><file name="upgrade-4.2.6-4.3.0.php" hash="635d87318271636ed348a41834c70081"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="shippit.xml" hash="18fa39b7eae780fe993e5140270ffefe"/></dir><dir name="template"><dir name="shippit"><dir name="checkout"><dir name="onepage"><dir name="shipping_method"><file name="authoritytoleave.phtml" hash="7a138531233734c55f97de3cb1641a18"/><file name="deliveryinstructions.phtml" hash="cc64f104584b7be4de3e5de3f2c047c0"/></dir><file name="shipping_method.phtml" hash="c7d804a639749b3c7b21e5e228463f88"/></dir></dir><dir name="email"><dir name="order"><dir name="shipment"><file name="track.phtml" hash="c1450ff14e566880d421799852df4014"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="shippit.xml" hash="c0ae616038936a98b9e87124fb1c3127"/></dir><dir name="template"><dir name="shippit"><dir name="system"><dir name="config"><dir name="form"><dir name="field"><file name="array.phtml" hash="46d02a4a01af0e14cb2d0d91665ca03e"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Shippit_Shippit.xml" hash="401f33d7db491808587c51209d8d6a8b"/></dir></target></contents>
24
  <compatible/>
25
  <dependencies><required><php><min>5.2.0</min><max>8.0.0</max></php></required></dependencies>
26
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Shippit_Shippit</name>
4
+ <version>4.3.18</version>
5
  <stability>stable</stability>
6
  <license>Open Software Licence</license>
7
  <channel>community</channel>
18
  &#xD;
19
  Also adds Australian States and Territories to the available region options and Authority to Leave and Delivery Comments to the checkout process.</notes>
20
  <authors><author><name>Matthew Muscat</name><user>matthewmuscat</user><email>matthew@mamis.com.au</email></author><author><name>William On</name><user>williamon</user><email>will@shippit.com</email></author></authors>
21
+ <date>2016-10-10</date>
22
+ <time>01:43:14</time>
23
+ <contents><target name="magelib"><dir name="shippit-bugsnag"><file name="Autoload.php" hash="55266ba5e2f5b3d9e9331c6eaa0945d5"/><file name="Client.php" hash="e58b339776f7d039a7486c4381e31134"/><file name="Configuration.php" hash="d303821a0ee820f2191540f8b3df4379"/><file name="Diagnostics.php" hash="fe944e2c0e3cfd06931bf251da18d544"/><file name="Error.php" hash="a23e6f17acc4d295bec537c4ee4897e8"/><file name="ErrorTypes.php" hash="e273be2371c9251dbfdd89d4490280dd"/><file name="Notification.php" hash="77f1f6352d82f69408499c5e5487ea42"/><file name="Request.php" hash="4b5e27bb029d1423ed823ad2b327189d"/><file name="Stacktrace.php" hash="6a0ca0f67fcdf4058b150f7dd602c803"/></dir></target><target name="magecommunity"><dir name="Shippit"><dir name="Shippit"><dir name="Block"><dir name="Adminhtml"><dir name="Sales"><dir name="Order"><file name="Grid.php" hash="9208ed6e0b222590610f6a3e2a3ac254"/><file name="Items.php" hash="275116a2c42700de7a65fc9e0a6568c6"/></dir><file name="Order.php" hash="665a08b5f3f6432ba49327ad0d320572"/></dir><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><dir name="Renderer"><dir name="Shipping"><file name="Methods.php" hash="26428642657de1a0f0d22140fd84174d"/></dir><dir name="Shippit"><file name="ServiceClass.php" hash="7573d99e768fa6e2c4dc136a54f0d9fd"/></dir></dir><dir name="Sync"><dir name="Order"><file name="ShippingMethodMapping.php" hash="7296f3ac577b89c36c68693ab1a84a32"/></dir></dir></dir><dir name="Fieldset"><file name="Version.php" hash="6cbff78c307a14e3eed4219f180901b1"/></dir></dir></dir></dir></dir><dir name="Checkout"><dir name="Cart"><file name="Shipping.php" hash="dd5dc61d665da4746e5c2a4fc6df089f"/></dir><dir name="Shipping"><file name="AuthorityToLeave.php" hash="241ff5d226c8f848b9895b767883dc30"/><file name="DeliveryInstructions.php" hash="77b5fb807d9dfdd8b5b6bfab6f8df9a6"/></dir></dir></dir><file name="Exception.php" hash="909594393898823a108bab9c6a2e77ed"/><dir name="Helper"><file name="Api.php" hash="17386e28d75bc9ec3cc38e0e91d597cc"/><file name="Bugsnag.php" hash="c3a0355601dbf82cf9d5880ad4190b67"/><file name="Carrier.php" hash="f7d031b67b5c9beec38214236ff30b5a"/><file name="Checkout.php" hash="004418f9ee0de6ba090faa32e540d8a3"/><file name="Data.php" hash="df6ea2d54c389f91721dc28c72b1dea1"/><dir name="Sync"><dir name="Order"><file name="Items.php" hash="c2031228b78726051a4096054a80363b"/></dir><file name="Order.php" hash="cbdb9511638e9854de82d67017008739"/><file name="Shipping.php" hash="c19889222cffbddf178a6236f78ae41c"/></dir></dir><dir name="Model"><dir name="Api"><file name="Order.php" hash="8163a93c23b9b90b0dc7ab942bd36f57"/></dir><file name="Logger.php" hash="64ed33a2d7554a9da58a080e3462504e"/><dir name="Observer"><dir name="Adminhtml"><dir name="Sales"><file name="Order.php" hash="44393a4d02ea135f68d74ca8ec37394a"/></dir></dir><dir name="Order"><file name="Sync.php" hash="a4f15047fb0fd2681c950498992d7aac"/></dir><dir name="Quote"><file name="AuthorityToLeave.php" hash="c675772dcb25d6a35372f46060b3a8e4"/><file name="DeliveryInstructions.php" hash="8cf1353e6406710208a5312c9cd68c7d"/></dir><dir name="Shipping"><file name="Tracking.php" hash="988cffc30e8d606ba6a2754ba4b2d3a3"/></dir><file name="Shippit.php" hash="3625385600a8e3f0c64492bfaac9c681"/><dir name="System"><file name="Config.php" hash="e5515b7d0cccde3ad7bb70fbe33a3f0b"/></dir></dir><dir name="Request"><dir name="Api"><file name="Order.php" hash="0421d706b753475696d9574d4630505e"/><file name="Shipment.php" hash="af1b78ce51f1d8b89a9c1e9bc6b81ed5"/></dir><dir name="Sync"><file name="Order.php" hash="bcdddbfc3d519bd1fc4a030075a20533"/></dir></dir><dir name="Resource"><file name="Setup.php" hash="8eb28f6cf5f637597d5f0ad668b64269"/><dir name="Sync"><dir name="Order"><file name="Collection.php" hash="b6fc680edfd57d6cbf810290799dad2c"/><dir name="Item"><file name="Collection.php" hash="935dd5847558e6629ea671b91ad9a1df"/></dir><file name="Item.php" hash="1ba227660a2d1ad09283c312e7e88a98"/></dir><file name="Order.php" hash="4808f4501b760ac09af24fba0df7494d"/></dir></dir><dir name="Shipping"><dir name="Carrier"><file name="Shippit.php" hash="1fe37e4368561831576e737aca28afe2"/></dir></dir><file name="Shippit.php" hash="d48601c7f37bf3328b2e863d41d5fe13"/><dir name="Sync"><dir name="Order"><file name="Config.php" hash="f52faaf68213e313746abde13781350e"/><file name="Item.php" hash="dee4de2286845cdaed924f81dfeeab51"/></dir><file name="Order.php" hash="460b020cd0a44d8f956e415fbccae620"/></dir><dir name="System"><dir name="Config"><dir name="Source"><dir name="Catalog"><dir name="Attributes"><file name="Location.php" hash="b2fcaaabfa58d290d731e3b09b0afb5d"/></dir><file name="Attributes.php" hash="1f051ddfcea5034c3b0f299ed35d2c7c"/><file name="Products.php" hash="6e78a631987441e8228ee410fe5addd2"/><dir name="Unit"><file name="Weight.php" hash="9d15b42826be4e39c3f2a105826cf6be"/></dir></dir><dir name="Order"><dir name="Status"><file name="Processing.php" hash="1cd4481df806b98b5b20afefe8c16e38"/></dir></dir><dir name="Shipping"><file name="Methods.php" hash="683dd6c9d412d52be6941ec1aec0e1eb"/></dir><dir name="Shippit"><file name="Environment.php" hash="a71561807ce05052a678a5d8d0656695"/><file name="MaxTimeslots.php" hash="a87f36fb06a9e9b79c1ffdc5ff1c42c0"/><file name="Methods.php" hash="41675a89d439dfb0e6ba17d1f323febd"/><dir name="Order"><file name="Status.php" hash="fcd986d9d3634cf257d58c212ae650c8"/></dir><dir name="Sync"><file name="Mode.php" hash="64ff642d93ad9505f160f48b5061efae"/><file name="SendAllOrders.php" hash="99fc5b1dcb2d49768025194cd02aba0e"/></dir></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Shippit"><dir name="Order"><file name="SyncController.php" hash="d5a22ab5fe1346e68d7967e9cad20402"/></dir><file name="OrderController.php" hash="7d4e2c615b524c211d75b4b7c4edc0e7"/></dir></dir><file name="OrderController.php" hash="bc3564790aa754a851131ca02635e810"/></dir><dir name="data"><dir name="shippit_setup"><file name="data-install-4.0.0.php" hash="fcc2ad84912ffaf9dc07b866f5fd7460"/><file name="data-upgrade-4.1.0-4.1.1.php" hash="aebc8c802bf8af45219500526da944fa"/><file name="data-upgrade-4.1.6-4.1.7.php" hash="2b2fe61d97645521516728a329cba9ad"/><file name="data-upgrade-4.2.3-4.2.4.php" hash="bd3ed5e70b9349d830fa789e0b394d83"/><file name="data-upgrade-4.3.2-4.3.3.php" hash="3699a8b74b0898f48ec1b9daeb3fcfcc"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="fb2576b73bea6a323cfd157e95c25e90"/><file name="config.xml" hash="1ed178fa9a342e804d40dd5ac24d64ac"/><file name="system.xml" hash="f6ea042a7657ed35ee931663068b2908"/></dir><dir name="sql"><dir name="shippit_setup"><file name="install-4.0.0.php" hash="19a0a09b6a10c89b73edc7f0a744fe5a"/><file name="upgrade-4.0.9-4.1.0.php" hash="35e56aeea2b78bba82e845d4c4c16fc1"/><file name="upgrade-4.1.0-4.1.1.php" hash="5c675c05272472cdd7c585aa6db750d9"/><file name="upgrade-4.2.5-4.2.6.php" hash="15dd734c1f7797d8cd0ff5b91a2dda55"/><file name="upgrade-4.2.6-4.3.0.php" hash="635d87318271636ed348a41834c70081"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="shippit.xml" hash="18fa39b7eae780fe993e5140270ffefe"/></dir><dir name="template"><dir name="shippit"><dir name="checkout"><dir name="onepage"><dir name="shipping_method"><file name="authoritytoleave.phtml" hash="7a138531233734c55f97de3cb1641a18"/><file name="deliveryinstructions.phtml" hash="cc64f104584b7be4de3e5de3f2c047c0"/></dir><file name="shipping_method.phtml" hash="c7d804a639749b3c7b21e5e228463f88"/></dir></dir><dir name="email"><dir name="order"><dir name="shipment"><file name="track.phtml" hash="c1450ff14e566880d421799852df4014"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="shippit.xml" hash="c0ae616038936a98b9e87124fb1c3127"/></dir><dir name="template"><dir name="shippit"><dir name="system"><dir name="config"><dir name="form"><dir name="field"><file name="array.phtml" hash="46d02a4a01af0e14cb2d0d91665ca03e"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Shippit_Shippit.xml" hash="401f33d7db491808587c51209d8d6a8b"/></dir></target></contents>
24
  <compatible/>
25
  <dependencies><required><php><min>5.2.0</min><max>8.0.0</max></php></required></dependencies>
26
  </package>