Rvtech_Starshipit - Version 1.4.0.0

Version Notes

Added supported carriers to the carrier list as well as tracking URLs for them all.

Also added quote lookups for CourierPost, DHL, with Australia Post to be added in the next few days.

Download this release

Release Info

Developer George Plummer
Extension Rvtech_Starshipit
Version 1.4.0.0
Comparing to
See all releases


Code changes from version 1.3.2.0 to 1.4.0.0

app/code/community/Rvtech/Starshipit/Block/Sales/Order/View.php CHANGED
@@ -34,7 +34,7 @@
34
  class Rvtech_Starshipit_Block_Sales_Order_View extends Mage_Adminhtml_Block_Widget_Form_Container
35
  {
36
 
37
- const STARSHIP_BASE = 'http://app.starshipit.com/Members/Search.aspx';
38
 
39
  public function __construct()
40
  {
34
  class Rvtech_Starshipit_Block_Sales_Order_View extends Mage_Adminhtml_Block_Widget_Form_Container
35
  {
36
 
37
+ const STARSHIP_BASE = 'https://app1.starshipit.com/Members/Search.aspx';
38
 
39
  public function __construct()
40
  {
app/code/community/Rvtech/Starshipit/Helper/Starship.php CHANGED
@@ -3,7 +3,7 @@ class Rvtech_Starshipit_Helper_Starship extends Mage_Core_Helper_Abstract
3
  {
4
 
5
 
6
- public $_wsdl = 'http://app.starshipit.com/OrdersService.svc?singleWsdl';
7
 
8
  public $_syncMsg = '';
9
 
3
  {
4
 
5
 
6
+ public $_wsdl = 'https://app1.starshipit.com/OrdersService.svc?singleWsdl';
7
 
8
  public $_syncMsg = '';
9
 
app/code/community/Rvtech/Starshipit/Helper/Starship.php_ORG DELETED
@@ -1,137 +0,0 @@
1
- <?php
2
- class Rvtech_Starshipit_Helper_Starship extends Mage_Core_Helper_Abstract
3
- {
4
-
5
-
6
- public $_wsdl = 'http://dhl.starshipit.com/OrdersService.svc?singleWsdl';
7
-
8
- public $_syncMsg = '';
9
-
10
- /**
11
- *
12
- * @return php soap client object
13
- */
14
-
15
- protected function _soapClient() {
16
-
17
- $wsdl = $this->_wsdl;
18
- return new SoapClient($wsdl, array('trace' => 1));
19
- }
20
-
21
-
22
- protected function _getAuthDetails(){
23
-
24
- return Mage::getModel('starshipit/orders')->getAuthDetails();
25
- }
26
-
27
- /**
28
- * Call to Validate method of Soap
29
- * @return string
30
- */
31
-
32
- public function validateUser() {
33
-
34
- $soap = $this->_soapClient();
35
- $authTo = $this->_getAuthDetails();
36
- $validate = $soap->__soapCall('Validate',array(
37
- 'Validate' => $authTo,
38
- ));
39
-
40
- $result = $validate->ValidateResult;
41
-
42
- return $result;
43
- }
44
-
45
- /**
46
- * Prepare an array in Magento acceptable form
47
- * from the existing orders returned via Starship
48
- * @return array
49
- */
50
-
51
- public function finalOrderArrOverStarShip($orders) {
52
-
53
- $finOrderArr = array();
54
- $ordersArr = (array) $orders;
55
- if(isset($ordersArr[0])){
56
- foreach ($ordersArr as $order) {
57
- $finOrderArr[$order->Id] = date("Y-m-d H:i:s", strtotime($order->LastUpdate));
58
- }
59
- }
60
- else{
61
- $finOrderArr[$ordersArr['Id']] = date("Y-m-d H:i:s", strtotime($ordersArr['LastUpdate']));
62
- }
63
-
64
- return $finOrderArr;
65
-
66
- }
67
-
68
- /**
69
- * Call to GetExisting method of soap-server.
70
- * Check the existing orders at Starship
71
- * @return object
72
- */
73
- public function getExistingOrders($order = array()) {
74
-
75
- $soap = $this->_soapClient();
76
- $orders = $soap->__soapCall('GetExisting',array(
77
- 'GetExisting' => array('existing' => $order),
78
- ));
79
-
80
- return $orders;
81
- }
82
-
83
- /**
84
- * Call to soap method AddShipment.
85
- * For adding/sync oredrs to the StarShip
86
- * @return string
87
- */
88
-
89
- public function addShipment($order = array()){
90
-
91
- $soap = $this->_soapClient();
92
- $orders = $soap->__soapCall('AddShipment',array(
93
- 'AddShipment' => array('orders' => $order),
94
- ));
95
-
96
- return $orders;
97
-
98
- }
99
-
100
- /**
101
- * Check condition for Writing Tracking info and
102
- * creating shippment in Magento
103
- * @return boolean
104
- */
105
-
106
- public function checkCondForMagentoWritebacks($response) {
107
-
108
- $success = $response->AddShipmentResult;
109
- $update = Mage::getModel('starshipit/orders')->needToUpdateOredrsInMage();
110
-
111
- if($success === 'Success' && ($update)) {
112
- return true;
113
- }
114
-
115
- return false;
116
-
117
- }
118
-
119
- /**
120
- * Call to GetMagentoWritebacks method of Soap service
121
- * call only if "Update orders to complete once shipped" is set to Yes
122
- * Return the Tracking info ONLY ONECE
123
- * @return object
124
- */
125
-
126
- public function getMagentoWritebacks(){
127
- $soap = $this->_soapClient();
128
- $authTo = $this->_getAuthDetails();
129
- $orders = $soap->__soapCall('GetMagentoWritebacks',array(
130
- 'GetMagentoWritebacks' => $authTo
131
- ));
132
-
133
- return $orders;
134
-
135
- }
136
-
137
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/community/Starshipit/Ship/Block/Ship.php ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ <?php
2
+ class Starshipit_Ship_Block_Ship extends Mage_Core_Block_Template
3
+ {
4
+
5
+ }
app/code/community/Starshipit/Ship/Helper/Data.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Starshipit_Ship_Helper_Data extends Mage_Core_Helper_Abstract
4
+ {
5
+
6
+ }
app/code/community/Starshipit/Ship/Model/Carrier/Auspost.php ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Starshipit_Ship_Model_Carrier_Auspost extends Mage_Shipping_Model_Carrier_Abstract
3
+ implements Mage_Shipping_Model_Carrier_Interface {
4
+ protected $_code = 'auspost';
5
+
6
+ public function collectRates(Mage_Shipping_Model_Rate_Request $request)
7
+ {
8
+ if (!Mage::getStoreConfig('carriers/'.$this->_code.'/active')) {
9
+ return false;
10
+ }
11
+
12
+ $price = 0;
13
+ $doCalulate = $this->getConfigData('calculate');
14
+ if ($doCalulate==0)
15
+ {
16
+ $price = $this->getConfigData('price');
17
+ }
18
+ else{
19
+ $apiKey = $this->getConfigData('apiKey');
20
+ $destCountryId = $request->getDestCountryId();
21
+ $destCountry = $request->getDestCountry();
22
+ $destRegion = $request->getDestRegionId();
23
+ $destRegionCode = $request->getDestRegionCode();
24
+ $destStreet = $request->getDestStreet();
25
+ $destCity = $request->getDestCity();
26
+ $destPostcode = $request->getDestPostcode();
27
+ $packageWeight = $request->getPackageWeight();
28
+ $packageheight = $request->getPackageHeight();
29
+ $packagewidth = $request->getPackageWidth();
30
+ $packagedepth = $request->getPackageDepth();
31
+
32
+ $params = array(
33
+ "apiKey" => $apiKey,
34
+ "carrierid"=>10,
35
+ "street"=>$destStreet,
36
+ "suburb"=>"",
37
+ "city"=> $destCity,
38
+ "postcode"=>$destPostcode,
39
+ "state"=>$destRegion,
40
+ "country"=>$destCountry,
41
+ "countryId"=>$destCountryId,
42
+ "weight"=>$packageWeight,
43
+ "height"=>$packageheight,
44
+ "width"=>$packagewidth,
45
+ "depth"=>$packagedepth
46
+ );
47
+ try
48
+ {
49
+ // Call web service.
50
+ $wsdl = 'http://app1.starshipit.com/shipment.svc?WSDL';
51
+ $client = new SoapClient($wsdl, array(
52
+ 'cache_wsdl' => WSDL_CACHE_NONE,
53
+ 'cache_ttl' => 86400,
54
+ 'trace' => true,
55
+ 'exceptions' => true,
56
+ ));
57
+
58
+ $result = $client->__soapCall("GetQuote", array($params));
59
+ $quoteResponse = $result->GetQuoteResult;
60
+
61
+ $price = $quoteResponse->Price;
62
+ }
63
+ catch (Exception $e)
64
+ {
65
+ Mage::log($e->getMessage()), null, starshipit.log);
66
+ }
67
+ }
68
+
69
+ $handling = Mage::getStoreConfig('carriers/'.$this->_code.'/handling');
70
+ $result = Mage::getModel('shipping/rate_result');
71
+ $show = true;
72
+ if($show){
73
+
74
+ $method = Mage::getModel('shipping/rate_result_method');
75
+ $method->setCarrier($this->_code);
76
+ $method->setMethod($this->_code);
77
+ $method->setCarrierTitle($this->getConfigData('title'));
78
+ $method->setMethodTitle($this->getConfigData('name'));
79
+ $method->setPrice($price);
80
+ $method->setCost($price);
81
+ $result->append($method);
82
+
83
+ }else{
84
+ $error = Mage::getModel('shipping/rate_result_error');
85
+ $error->setCarrier($this->_code);
86
+ $error->setCarrierTitle($this->getConfigData('name'));
87
+ $error->setErrorMessage($this->getConfigData('specificerrmsg'));
88
+ $result->append($error);
89
+ }
90
+ return $result;
91
+ }
92
+ public function getAllowedMethods()
93
+ {
94
+ return array('auspost'=>$this->getConfigData('name'));
95
+ }
96
+
97
+ public function isTrackingAvailable()
98
+ {
99
+ return true;
100
+ }
101
+
102
+ public function getTrackingInfo($tracking)
103
+ {
104
+ //Mage::log("Get Tracking", null, starshipit.log);
105
+ $status = Mage::getModel('shipping/tracking_result_status');
106
+ $status->setCarrier('ups');
107
+ $status->setCarrierTitle($this->getConfigData('title'));
108
+ $status->setTracking($tracking);
109
+ $status->setPopup(1);
110
+ $status->setUrl("http://auspost.com.au/track/track.html?id=".$tracking);
111
+ //Mage::log("Get Tracking asd", null, starshipit.log);
112
+ return $status;
113
+ }
114
+ }
app/code/community/Starshipit/Ship/Model/Carrier/Courierpost.php ADDED
@@ -0,0 +1,111 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Starshipit_Ship_Model_Carrier_CourierPost extends Mage_Shipping_Model_Carrier_Abstract
3
+ implements Mage_Shipping_Model_Carrier_Interface {
4
+ protected $_code = 'courierpost';
5
+
6
+ public function collectRates(Mage_Shipping_Model_Rate_Request $request)
7
+ {
8
+ if (!Mage::getStoreConfig('carriers/'.$this->_code.'/active')) {
9
+ return false;
10
+ }
11
+
12
+ $price = 0;
13
+ $doCalulate = $this->getConfigData('calculate');
14
+ if ($doCalulate==0)
15
+ {
16
+ $price = $this->getConfigData('price');
17
+ }
18
+ else{
19
+ $apiKey = $this->getConfigData('apiKey');
20
+ $destCountryId = $request->getDestCountryId();
21
+ $destCountry = $request->getDestCountry();
22
+ $destRegion = $request->getDestRegionId();
23
+ $destRegionCode = $request->getDestRegionCode();
24
+ $destStreet = $request->getDestStreet();
25
+ $destCity = $request->getDestCity();
26
+ $destPostcode = $request->getDestPostcode();
27
+ $packageWeight = $request->getPackageWeight();
28
+ $packageheight = $request->getPackageHeight();
29
+ $packagewidth = $request->getPackageWidth();
30
+ $packagedepth = $request->getPackageDepth();
31
+
32
+ $params = array(
33
+ "apiKey" => $apiKey,
34
+ "carrierid"=>0,
35
+ "street"=>$destStreet,
36
+ "suburb"=>"",
37
+ "city"=> $destCity,
38
+ "postcode"=>$destPostcode,
39
+ "state"=>$destRegion,
40
+ "country"=>$destCountry,
41
+ "countryId"=>$destCountryId,
42
+ "weight"=>$packageWeight,
43
+ "height"=>$packageheight,
44
+ "width"=>$packagewidth,
45
+ "depth"=>$packagedepth
46
+ );
47
+ try{
48
+ // Call web service.
49
+ $wsdl = 'http://app1.starshipit.com/shipment.svc?WSDL';
50
+ $client = new SoapClient($wsdl, array(
51
+ 'cache_wsdl' => WSDL_CACHE_NONE,
52
+ 'cache_ttl' => 86400,
53
+ 'trace' => true,
54
+ 'exceptions' => true,
55
+ ));
56
+
57
+ $result = $client->__soapCall("GetQuote", array($params));
58
+ $quoteResponse = $result->GetQuoteResult;
59
+ //Mage::log("Price web:".$quoteResponse->Price, null, starshipit.log);
60
+ $price = $quoteResponse->Price;
61
+ }
62
+ catch (Exception $e)
63
+ {
64
+ Mage::log($e->getMessage(), null, starshipit.log);
65
+ }
66
+ }
67
+
68
+ $handling = Mage::getStoreConfig('carriers/'.$this->_code.'/handling');
69
+ $result = Mage::getModel('shipping/rate_result');
70
+ $show = true;
71
+ if($show){
72
+
73
+ $method = Mage::getModel('shipping/rate_result_method');
74
+ $method->setCarrier($this->_code);
75
+ $method->setMethod($this->_code);
76
+ $method->setCarrierTitle($this->getConfigData('title'));
77
+ $method->setMethodTitle($this->getConfigData('name'));
78
+ $method->setPrice($price);
79
+ $method->setCost($price);
80
+ $result->append($method);
81
+
82
+ }else{
83
+ $error = Mage::getModel('shipping/rate_result_error');
84
+ $error->setCarrier($this->_code);
85
+ $error->setCarrierTitle($this->getConfigData('name'));
86
+ $error->setErrorMessage($this->getConfigData('specificerrmsg'));
87
+ $result->append($error);
88
+ }
89
+ return $result;
90
+ }
91
+ public function getAllowedMethods()
92
+ {
93
+ return array('courierpost'=>$this->getConfigData('name'));
94
+ }
95
+
96
+ public function isTrackingAvailable()
97
+ {
98
+ return true;
99
+ }
100
+
101
+ public function getTrackingInfo($tracking)
102
+ {
103
+ $status = Mage::getModel('shipping/tracking_result_status');
104
+ $status->setCarrier('ups');
105
+ $status->setCarrierTitle($this->getConfigData('title'));
106
+ $status->setTracking($tracking);
107
+ $status->setPopup(1);
108
+ $status->setUrl("http://trackandtrace.courierpost.co.nz/search/".$tracking);
109
+ return $status;
110
+ }
111
+ }
app/code/community/Starshipit/Ship/Model/Carrier/Dhlexpress.php ADDED
@@ -0,0 +1,106 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Starshipit_Ship_Model_Carrier_Dhlexpress extends Mage_Shipping_Model_Carrier_Abstract
3
+ implements Mage_Shipping_Model_Carrier_Interface {
4
+ protected $_code = 'dhlexpress';
5
+
6
+ public function collectRates(Mage_Shipping_Model_Rate_Request $request)
7
+ {
8
+ if (!Mage::getStoreConfig('carriers/'.$this->_code.'/active')) {
9
+ return false;
10
+ }
11
+
12
+ $price = 0;
13
+ $doCalulate = $this->getConfigData('calculate');
14
+ if ($doCalulate==0)
15
+ {
16
+ $price = $this->getConfigData('price');
17
+ }
18
+ else{
19
+ $apiKey = $this->getConfigData('apiKey');
20
+ $destCountryId = $request->getDestCountryId();
21
+ $destCountry = $request->getDestCountry();
22
+ $destRegion = $request->getDestRegionId();
23
+ $destRegionCode = $request->getDestRegionCode();
24
+ $destStreet = $request->getDestStreet();
25
+ $destCity = $request->getDestCity();
26
+ $destPostcode = $request->getDestPostcode();
27
+ $packageWeight = $request->getPackageWeight();
28
+ $packageheight = $request->getPackageHeight();
29
+ $packagewidth = $request->getPackageWidth();
30
+ $packagedepth = $request->getPackageDepth();
31
+
32
+ $params = array(
33
+ "apiKey" => $apiKey,
34
+ "carrierid"=>2,
35
+ "street"=>$destStreet,
36
+ "suburb"=>"",
37
+ "city"=> $destCity,
38
+ "postcode"=>$destPostcode,
39
+ "state"=>$destRegion,
40
+ "country"=>$destCountry,
41
+ "countryId"=>$destCountryId,
42
+ "weight"=>$packageWeight,
43
+ "height"=>$packageheight,
44
+ "width"=>$packagewidth,
45
+ "depth"=>$packagedepth
46
+ );
47
+
48
+ // Call web service.
49
+ $wsdl = 'https://app1.starshipit.com/shipment.svc?WSDL';
50
+ $client = new SoapClient($wsdl, array(
51
+ 'cache_wsdl' => WSDL_CACHE_NONE,
52
+ 'cache_ttl' => 86400,
53
+ 'trace' => true,
54
+ 'exceptions' => true,
55
+ ));
56
+
57
+ $result = $client->__soapCall("GetQuote", array($params));
58
+ $quoteResponse = $result->GetQuoteResult;
59
+ //Mage::log("Price web:".$quoteResponse->Price, null, starshipit.log);
60
+ $price = $quoteResponse->Price;
61
+ }
62
+
63
+ $handling = Mage::getStoreConfig('carriers/'.$this->_code.'/handling');
64
+ $result = Mage::getModel('shipping/rate_result');
65
+ $show = true;
66
+ if($show){
67
+
68
+ $method = Mage::getModel('shipping/rate_result_method');
69
+ $method->setCarrier($this->_code);
70
+ $method->setMethod($this->_code);
71
+ $method->setCarrierTitle($this->getConfigData('title'));
72
+ $method->setMethodTitle($this->getConfigData('name'));
73
+ $method->setPrice($price);
74
+ $method->setCost($price);
75
+ $result->append($method);
76
+
77
+ }else{
78
+ $error = Mage::getModel('shipping/rate_result_error');
79
+ $error->setCarrier($this->_code);
80
+ $error->setCarrierTitle($this->getConfigData('name'));
81
+ $error->setErrorMessage($this->getConfigData('specificerrmsg'));
82
+ $result->append($error);
83
+ }
84
+ return $result;
85
+ }
86
+ public function getAllowedMethods()
87
+ {
88
+ return array('dhlexpress'=>$this->getConfigData('name'));
89
+ }
90
+
91
+ public function isTrackingAvailable()
92
+ {
93
+ return true;
94
+ }
95
+
96
+ public function getTrackingInfo($tracking)
97
+ {
98
+ $status = Mage::getModel('shipping/tracking_result_status');
99
+ $status->setCarrier('ups');
100
+ $status->setCarrierTitle($this->getConfigData('title'));
101
+ $status->setTracking($tracking);
102
+ $status->setPopup(1);
103
+ $status->setUrl("http://www.dhl.com/cgi-bin/tracking.pl?AWB=".$tracking);
104
+ return $status;
105
+ }
106
+ }
app/code/community/Starshipit/Ship/Model/Carrier/Fastway.php ADDED
@@ -0,0 +1,106 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Starshipit_Ship_Model_Carrier_Fastway extends Mage_Shipping_Model_Carrier_Abstract
3
+ implements Mage_Shipping_Model_Carrier_Interface {
4
+ protected $_code = 'fastway';
5
+
6
+ public function collectRates(Mage_Shipping_Model_Rate_Request $request)
7
+ {
8
+ if (!Mage::getStoreConfig('carriers/'.$this->_code.'/active')) {
9
+ return false;
10
+ }
11
+
12
+ $price = 0;
13
+ $doCalulate = $this->getConfigData('calculate');
14
+ if ($doCalulate==0)
15
+ {
16
+ $price = $this->getConfigData('price');
17
+ }
18
+ else{
19
+ $apiKey = $this->getConfigData('apiKey');
20
+ $destCountryId = $request->getDestCountryId();
21
+ $destCountry = $request->getDestCountry();
22
+ $destRegion = $request->getDestRegionId();
23
+ $destRegionCode = $request->getDestRegionCode();
24
+ $destStreet = $request->getDestStreet();
25
+ $destCity = $request->getDestCity();
26
+ $destPostcode = $request->getDestPostcode();
27
+ $packageWeight = $request->getPackageWeight();
28
+ $packageheight = $request->getPackageHeight();
29
+ $packagewidth = $request->getPackageWidth();
30
+ $packagedepth = $request->getPackageDepth();
31
+
32
+ $params = array(
33
+ "apiKey" => $apiKey,
34
+ "carrierid"=>3,
35
+ "street"=>$destStreet,
36
+ "suburb"=>"",
37
+ "city"=> $destCity,
38
+ "postcode"=>$destPostcode,
39
+ "state"=>$destRegion,
40
+ "country"=>$destCountry,
41
+ "countryId"=>$destCountryId,
42
+ "weight"=>$packageWeight,
43
+ "height"=>$packageheight,
44
+ "width"=>$packagewidth,
45
+ "depth"=>$packagedepth
46
+ );
47
+
48
+ // Call web service.
49
+ $wsdl = 'https://app1.starshipit.com/shipment.svc?WSDL';
50
+ $client = new SoapClient($wsdl, array(
51
+ 'cache_wsdl' => WSDL_CACHE_NONE,
52
+ 'cache_ttl' => 86400,
53
+ 'trace' => true,
54
+ 'exceptions' => true,
55
+ ));
56
+
57
+ $result = $client->__soapCall("GetQuote", array($params));
58
+ $quoteResponse = $result->GetQuoteResult;
59
+ //Mage::log("Price web:".$quoteResponse->Price, null, starshipit.log);
60
+ $price = $quoteResponse->Price;
61
+ }
62
+
63
+ $handling = Mage::getStoreConfig('carriers/'.$this->_code.'/handling');
64
+ $result = Mage::getModel('shipping/rate_result');
65
+ $show = true;
66
+ if($show){
67
+
68
+ $method = Mage::getModel('shipping/rate_result_method');
69
+ $method->setCarrier($this->_code);
70
+ $method->setMethod($this->_code);
71
+ $method->setCarrierTitle($this->getConfigData('title'));
72
+ $method->setMethodTitle($this->getConfigData('name'));
73
+ $method->setPrice($price);
74
+ $method->setCost($price);
75
+ $result->append($method);
76
+
77
+ }else{
78
+ $error = Mage::getModel('shipping/rate_result_error');
79
+ $error->setCarrier($this->_code);
80
+ $error->setCarrierTitle($this->getConfigData('name'));
81
+ $error->setErrorMessage($this->getConfigData('specificerrmsg'));
82
+ $result->append($error);
83
+ }
84
+ return $result;
85
+ }
86
+ public function getAllowedMethods()
87
+ {
88
+ return array('fastway'=>$this->getConfigData('name'));
89
+ }
90
+
91
+ public function isTrackingAvailable()
92
+ {
93
+ return true;
94
+ }
95
+
96
+ public function getTrackingInfo($tracking)
97
+ {
98
+ $status = Mage::getModel('shipping/tracking_result_status');
99
+ $status->setCarrier('ups');
100
+ $status->setCarrierTitle($this->getConfigData('title'));
101
+ $status->setTracking($tracking);
102
+ $status->setPopup(1);
103
+ $status->setUrl("http://www.fastway.com.au/courier-services/track-your-parcel?l=".$tracking);
104
+ return $status;
105
+ }
106
+ }
app/code/community/Starshipit/Ship/Model/Carrier/Nzpost.php ADDED
@@ -0,0 +1,112 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Starshipit_Ship_Model_Carrier_Nzpost extends Mage_Shipping_Model_Carrier_Abstract
3
+ implements Mage_Shipping_Model_Carrier_Interface {
4
+ protected $_code = 'nzpost';
5
+
6
+ public function collectRates(Mage_Shipping_Model_Rate_Request $request)
7
+ {
8
+ if (!Mage::getStoreConfig('carriers/'.$this->_code.'/active')) {
9
+ return false;
10
+ }
11
+
12
+ $price = 0;
13
+ $doCalulate = $this->getConfigData('calculate');
14
+ if ($doCalulate==0)
15
+ {
16
+ $price = $this->getConfigData('price');
17
+ }
18
+ else{
19
+ $apiKey = $this->getConfigData('apiKey');
20
+ $destCountryId = $request->getDestCountryId();
21
+ $destCountry = $request->getDestCountry();
22
+ $destRegion = $request->getDestRegionId();
23
+ $destRegionCode = $request->getDestRegionCode();
24
+ $destStreet = $request->getDestStreet();
25
+ $destCity = $request->getDestCity();
26
+ $destPostcode = $request->getDestPostcode();
27
+ $packageWeight = $request->getPackageWeight();
28
+ $packageheight = $request->getPackageHeight();
29
+ $packagewidth = $request->getPackageWidth();
30
+ $packagedepth = $request->getPackageDepth();
31
+
32
+ $params = array(
33
+ "apiKey" => $apiKey,
34
+ "carrierid"=>1,
35
+ "street"=>$destStreet,
36
+ "suburb"=>"",
37
+ "city"=> $destCity,
38
+ "postcode"=>$destPostcode,
39
+ "state"=>$destRegion,
40
+ "country"=>$destCountry,
41
+ "countryId"=>$destCountryId,
42
+ "weight"=>$packageWeight,
43
+ "height"=>$packageheight,
44
+ "width"=>$packagewidth,
45
+ "depth"=>$packagedepth
46
+ );
47
+
48
+ try{
49
+ // Call web service.
50
+ $wsdl = 'https://app1.starshipit.com/shipment.svc?WSDL';
51
+ $client = new SoapClient($wsdl, array(
52
+ 'cache_wsdl' => WSDL_CACHE_NONE,
53
+ 'cache_ttl' => 86400,
54
+ 'trace' => true,
55
+ 'exceptions' => true,
56
+ ));
57
+
58
+ $result = $client->__soapCall("GetQuote", array($params));
59
+ $quoteResponse = $result->GetQuoteResult;
60
+ //Mage::log("Price web:".$quoteResponse->Price, null, starshipit.log);
61
+ $price = $quoteResponse->Price;
62
+ }
63
+ catch (Exception $e)
64
+ {
65
+ Mage::log($e->getMessage(), null, starshipit.log);
66
+ }
67
+ }
68
+
69
+ $handling = Mage::getStoreConfig('carriers/'.$this->_code.'/handling');
70
+ $result = Mage::getModel('shipping/rate_result');
71
+ $show = true;
72
+ if($show){
73
+
74
+ $method = Mage::getModel('shipping/rate_result_method');
75
+ $method->setCarrier($this->_code);
76
+ $method->setMethod($this->_code);
77
+ $method->setCarrierTitle($this->getConfigData('title'));
78
+ $method->setMethodTitle($this->getConfigData('name'));
79
+ $method->setPrice($price);
80
+ $method->setCost($price);
81
+ $result->append($method);
82
+
83
+ }else{
84
+ $error = Mage::getModel('shipping/rate_result_error');
85
+ $error->setCarrier($this->_code);
86
+ $error->setCarrierTitle($this->getConfigData('name'));
87
+ $error->setErrorMessage($this->getConfigData('specificerrmsg'));
88
+ $result->append($error);
89
+ }
90
+ return $result;
91
+ }
92
+ public function getAllowedMethods()
93
+ {
94
+ return array('nzpost'=>$this->getConfigData('name'));
95
+ }
96
+
97
+ public function isTrackingAvailable()
98
+ {
99
+ return true;
100
+ }
101
+
102
+ public function getTrackingInfo($tracking)
103
+ {
104
+ $status = Mage::getModel('shipping/tracking_result_status');
105
+ $status->setCarrier('ups');
106
+ $status->setCarrierTitle($this->getConfigData('title'));
107
+ $status->setTracking($tracking);
108
+ $status->setPopup(1);
109
+ $status->setUrl("http://www.nzpost.co.nz/tools/tracking-new?trackid=".$tracking);
110
+ return $status;
111
+ }
112
+ }
app/code/community/Starshipit/Ship/controllers/IndexController.php ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ <?php
2
+ class Starshipit_Ship_IndexController extends Mage_Core_Controller_Front_Action
3
+ {
4
+
5
+ }
app/code/community/Starshipit/Ship/etc/config.xml ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Starshipit_Ship>
5
+ <version>0.1.0</version>
6
+ </Starshipit_Ship>
7
+ </modules>
8
+ <frontend>
9
+ <routers>
10
+ <ship>
11
+ <use>standard</use>
12
+ <args>
13
+ <module>StarShipIt_Ship</module>
14
+ <frontName>ship</frontName>
15
+ </args>
16
+ </ship>
17
+ </routers>
18
+ <layout>
19
+ <updates>
20
+ <ship>
21
+ <file>ship.xml</file>
22
+ </ship>
23
+ </updates>
24
+ </layout>
25
+ </frontend>
26
+ <global>
27
+ <models>
28
+ <ship>
29
+ <class>Starshipit_Ship_Model</class>
30
+ <resourceModel>ship_mysql4</resourceModel>
31
+ </ship>
32
+ <ship_mysql4>
33
+ <class>Starshipit_Ship_Model_Mysql4</class>
34
+ <entities>
35
+ <ship>
36
+ <table>ship</table>
37
+ </ship>
38
+ </entities>
39
+ </ship_mysql4>
40
+ </models>
41
+ <resources>
42
+ <ship_setup>
43
+ <setup>
44
+ <module>Starshipit_Ship</module>
45
+ </setup>
46
+ <connection>
47
+ <use>core_setup</use>
48
+ </connection>
49
+ </ship_setup>
50
+ <ship_write>
51
+ <connection>
52
+ <use>core_write</use>
53
+ </connection>
54
+ </ship_write>
55
+ <ship_read>
56
+ <connection>
57
+ <use>core_read</use>
58
+ </connection>
59
+ </ship_read>
60
+ </resources>
61
+ <blocks>
62
+ <ship>
63
+ <class>Starshipit_Ship_Block</class>
64
+ </ship>
65
+ </blocks>
66
+ <helpers>
67
+ <ship>
68
+ <class>Starshipit_Ship_Helper</class>
69
+ </ship>
70
+ </helpers>
71
+ </global>
72
+ <default>
73
+ <carriers>
74
+ <courierpost>
75
+ <active>0</active>
76
+ <model>ship/carrier_courierpost</model>
77
+ <title>CourierPost</title>
78
+ <name>Online Parcel</name>
79
+ <price>0.00</price>
80
+ <specificerrmsg>This shipping method is currently unavailable. If you would like to ship using this shipping method, please contact us.</specificerrmsg>
81
+ </courierpost>
82
+ <auspost>
83
+ <active>0</active>
84
+ <model>ship/carrier_auspost</model>
85
+ <title>Australia Post</title>
86
+ <name>Standard</name>
87
+ <price>0.00</price>
88
+ <specificerrmsg>This shipping method is currently unavailable. If you would like to ship using this shipping method, please contact us.</specificerrmsg>
89
+ </auspost>
90
+ <fastway>
91
+ <active>0</active>
92
+ <model>ship/carrier_fastway</model>
93
+ <title>Fastway</title>
94
+ <name>Fastway Parcel</name>
95
+ <price>0.00</price>
96
+ <specificerrmsg>This shipping method is currently unavailable. If you would like to ship using this shipping method, please contact us.</specificerrmsg>
97
+ </fastway>
98
+ <nzpost>
99
+ <active>0</active>
100
+ <model>ship/carrier_nzpost</model>
101
+ <title>NZ Post</title>
102
+ <name>NZ Post</name>
103
+ <price>0.00</price>
104
+ <specificerrmsg>This shipping method is currently unavailable. If you would like to ship using this shipping method, please contact us.</specificerrmsg>
105
+ </nzpost>
106
+ <dhlexpress>
107
+ <active>0</active>
108
+ <model>ship/carrier_dhlexpress</model>
109
+ <title>DHL Express</title>
110
+ <name>Express</name>
111
+ <price>0.00</price>
112
+ <specificerrmsg>This shipping method is currently unavailable. If you would like to ship using this shipping method, please contact us.</specificerrmsg>
113
+ </dhlexpress>
114
+ </carriers>
115
+ </default>
116
+ </config>
app/code/community/Starshipit/Ship/etc/system.xml ADDED
@@ -0,0 +1,449 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <config>
3
+ <sections>
4
+ <carriers>
5
+ <groups>
6
+ <courierpost translate="label" module="ship">
7
+ <label>CourierPost</label>
8
+ <frontend_type>text</frontend_type>
9
+ <sort_order>99</sort_order>
10
+ <show_in_default>1</show_in_default>
11
+ <show_in_website>1</show_in_website>
12
+ <show_in_store>1</show_in_store>
13
+ <fields>
14
+ <active translate="label">
15
+ <label>Enabled</label>
16
+ <frontend_type>select</frontend_type>
17
+ <source_model>adminhtml/system_config_source_yesno</source_model>
18
+ <sort_order>1</sort_order>
19
+ <show_in_default>1</show_in_default>
20
+ <show_in_website>1</show_in_website>
21
+ <show_in_store>1</show_in_store>
22
+ </active>
23
+ <title translate="label">
24
+ <label>Title</label>
25
+ <frontend_type>text</frontend_type>
26
+ <sort_order>2</sort_order>
27
+ <show_in_default>1</show_in_default>
28
+ <show_in_website>1</show_in_website>
29
+ <show_in_store>1</show_in_store>
30
+ </title>
31
+ <name translate="label">
32
+ <label>Method Name</label>
33
+ <frontend_type>text</frontend_type>
34
+ <sort_order>2</sort_order>
35
+ <show_in_default>1</show_in_default>
36
+ <show_in_website>1</show_in_website>
37
+ <show_in_store>1</show_in_store>
38
+ </name>
39
+ <calculate translate="label">
40
+ <label>Calculate (otherwise flat rate below)</label>
41
+ <frontend_type>select</frontend_type>
42
+ <source_model>adminhtml/system_config_source_yesno</source_model>
43
+ <sort_order>3</sort_order>
44
+ <show_in_default>1</show_in_default>
45
+ <show_in_website>1</show_in_website>
46
+ <show_in_store>0</show_in_store>
47
+ </calculate>
48
+ <price translate="label">
49
+ <label>Flat Rate Price</label>
50
+ <frontend_type>text</frontend_type>
51
+ <sort_order>4</sort_order>
52
+ <show_in_default>1</show_in_default>
53
+ <show_in_website>1</show_in_website>
54
+ <show_in_store>1</show_in_store>
55
+ </price>
56
+ <apiKey translate="label">
57
+ <label>Api Key</label>
58
+ <frontend_type>text</frontend_type>
59
+ <sort_order>5</sort_order>
60
+ <show_in_default>1</show_in_default>
61
+ <show_in_website>1</show_in_website>
62
+ <show_in_store>1</show_in_store>
63
+ </apiKey>
64
+ <specificerrmsg translate="label">
65
+ <label>Displayed Error Message</label>
66
+ <frontend_type>textarea</frontend_type>
67
+ <sort_order>6</sort_order>
68
+ <show_in_default>1</show_in_default>
69
+ <show_in_website>1</show_in_website>
70
+ <show_in_store>1</show_in_store>
71
+ </specificerrmsg>
72
+ <sallowspecific translate="label">
73
+ <label>Ship to Applicable Countries</label>
74
+ <frontend_type>select</frontend_type>
75
+ <sort_order>90</sort_order>
76
+ <frontend_class>shipping-applicable-country</frontend_class>
77
+ <source_model>adminhtml/system_config_source_shipping_allspecificcountries</source_model>
78
+ <show_in_default>1</show_in_default>
79
+ <show_in_website>1</show_in_website>
80
+ <show_in_store>0</show_in_store>
81
+ </sallowspecific>
82
+ <specificcountry translate="label">
83
+ <label>Ship to Specific Countries</label>
84
+ <frontend_type>multiselect</frontend_type>
85
+ <sort_order>91</sort_order>
86
+ <source_model>adminhtml/system_config_source_country</source_model>
87
+ <show_in_default>1</show_in_default>
88
+ <show_in_website>1</show_in_website>
89
+ <show_in_store>0</show_in_store>
90
+ <can_be_empty>1</can_be_empty>
91
+ </specificcountry>
92
+ </fields>
93
+ </courierpost>
94
+ <auspost translate="label" module="ship">
95
+ <label>Australia Post</label>
96
+ <frontend_type>text</frontend_type>
97
+ <sort_order>99</sort_order>
98
+ <show_in_default>1</show_in_default>
99
+ <show_in_website>1</show_in_website>
100
+ <show_in_store>1</show_in_store>
101
+ <fields>
102
+ <active translate="label">
103
+ <label>Enabled</label>
104
+ <frontend_type>select</frontend_type>
105
+ <source_model>adminhtml/system_config_source_yesno</source_model>
106
+ <sort_order>1</sort_order>
107
+ <show_in_default>1</show_in_default>
108
+ <show_in_website>1</show_in_website>
109
+ <show_in_store>1</show_in_store>
110
+ </active>
111
+ <title translate="label">
112
+ <label>Title</label>
113
+ <frontend_type>text</frontend_type>
114
+ <sort_order>2</sort_order>
115
+ <show_in_default>1</show_in_default>
116
+ <show_in_website>1</show_in_website>
117
+ <show_in_store>1</show_in_store>
118
+ </title>
119
+ <name translate="label">
120
+ <label>Method Name</label>
121
+ <frontend_type>text</frontend_type>
122
+ <sort_order>2</sort_order>
123
+ <show_in_default>1</show_in_default>
124
+ <show_in_website>1</show_in_website>
125
+ <show_in_store>1</show_in_store>
126
+ </name>
127
+ <calculate translate="label">
128
+ <label>Calculate (otherwise flat rate below)</label>
129
+ <frontend_type>select</frontend_type>
130
+ <source_model>adminhtml/system_config_source_yesno</source_model>
131
+ <sort_order>3</sort_order>
132
+ <show_in_default>1</show_in_default>
133
+ <show_in_website>1</show_in_website>
134
+ <show_in_store>0</show_in_store>
135
+ </calculate>
136
+ <price translate="label">
137
+ <label>Flat Rate Price</label>
138
+ <frontend_type>text</frontend_type>
139
+ <sort_order>4</sort_order>
140
+ <show_in_default>1</show_in_default>
141
+ <show_in_website>1</show_in_website>
142
+ <show_in_store>1</show_in_store>
143
+ </price>
144
+ <apiKey translate="label">
145
+ <label>Api Key</label>
146
+ <frontend_type>text</frontend_type>
147
+ <sort_order>5</sort_order>
148
+ <show_in_default>1</show_in_default>
149
+ <show_in_website>1</show_in_website>
150
+ <show_in_store>1</show_in_store>
151
+ </apiKey>
152
+ <specificerrmsg translate="label">
153
+ <label>Displayed Error Message</label>
154
+ <frontend_type>textarea</frontend_type>
155
+ <sort_order>6</sort_order>
156
+ <show_in_default>1</show_in_default>
157
+ <show_in_website>1</show_in_website>
158
+ <show_in_store>1</show_in_store>
159
+ </specificerrmsg>
160
+ <sallowspecific translate="label">
161
+ <label>Ship to Applicable Countries</label>
162
+ <frontend_type>select</frontend_type>
163
+ <sort_order>90</sort_order>
164
+ <frontend_class>shipping-applicable-country</frontend_class>
165
+ <source_model>adminhtml/system_config_source_shipping_allspecificcountries</source_model>
166
+ <show_in_default>1</show_in_default>
167
+ <show_in_website>1</show_in_website>
168
+ <show_in_store>0</show_in_store>
169
+ </sallowspecific>
170
+ <specificcountry translate="label">
171
+ <label>Ship to Specific Countries</label>
172
+ <frontend_type>multiselect</frontend_type>
173
+ <sort_order>91</sort_order>
174
+ <source_model>adminhtml/system_config_source_country</source_model>
175
+ <show_in_default>1</show_in_default>
176
+ <show_in_website>1</show_in_website>
177
+ <show_in_store>0</show_in_store>
178
+ <can_be_empty>1</can_be_empty>
179
+ </specificcountry>
180
+ </fields>
181
+ </auspost>
182
+ <nzpost translate="label" module="ship">
183
+ <label>New Zealand Post</label>
184
+ <frontend_type>text</frontend_type>
185
+ <sort_order>99</sort_order>
186
+ <show_in_default>1</show_in_default>
187
+ <show_in_website>1</show_in_website>
188
+ <show_in_store>1</show_in_store>
189
+ <fields>
190
+ <active translate="label">
191
+ <label>Enabled</label>
192
+ <frontend_type>select</frontend_type>
193
+ <source_model>adminhtml/system_config_source_yesno</source_model>
194
+ <sort_order>1</sort_order>
195
+ <show_in_default>1</show_in_default>
196
+ <show_in_website>1</show_in_website>
197
+ <show_in_store>1</show_in_store>
198
+ </active>
199
+ <title translate="label">
200
+ <label>Title</label>
201
+ <frontend_type>text</frontend_type>
202
+ <sort_order>2</sort_order>
203
+ <show_in_default>1</show_in_default>
204
+ <show_in_website>1</show_in_website>
205
+ <show_in_store>1</show_in_store>
206
+ </title>
207
+ <name translate="label">
208
+ <label>Method Name</label>
209
+ <frontend_type>text</frontend_type>
210
+ <sort_order>2</sort_order>
211
+ <show_in_default>1</show_in_default>
212
+ <show_in_website>1</show_in_website>
213
+ <show_in_store>1</show_in_store>
214
+ </name>
215
+ <calculate translate="label">
216
+ <label>Calculate (otherwise flat rate below)</label>
217
+ <frontend_type>select</frontend_type>
218
+ <source_model>adminhtml/system_config_source_yesno</source_model>
219
+ <sort_order>3</sort_order>
220
+ <show_in_default>1</show_in_default>
221
+ <show_in_website>1</show_in_website>
222
+ <show_in_store>0</show_in_store>
223
+ </calculate>
224
+ <price translate="label">
225
+ <label>Flat Rate Price</label>
226
+ <frontend_type>text</frontend_type>
227
+ <sort_order>4</sort_order>
228
+ <show_in_default>1</show_in_default>
229
+ <show_in_website>1</show_in_website>
230
+ <show_in_store>1</show_in_store>
231
+ </price>
232
+ <apiKey translate="label">
233
+ <label>Api Key</label>
234
+ <frontend_type>text</frontend_type>
235
+ <sort_order>5</sort_order>
236
+ <show_in_default>1</show_in_default>
237
+ <show_in_website>1</show_in_website>
238
+ <show_in_store>1</show_in_store>
239
+ </apiKey>
240
+ <specificerrmsg translate="label">
241
+ <label>Displayed Error Message</label>
242
+ <frontend_type>textarea</frontend_type>
243
+ <sort_order>6</sort_order>
244
+ <show_in_default>1</show_in_default>
245
+ <show_in_website>1</show_in_website>
246
+ <show_in_store>1</show_in_store>
247
+ </specificerrmsg>
248
+ <sallowspecific translate="label">
249
+ <label>Ship to Applicable Countries</label>
250
+ <frontend_type>select</frontend_type>
251
+ <sort_order>90</sort_order>
252
+ <frontend_class>shipping-applicable-country</frontend_class>
253
+ <source_model>adminhtml/system_config_source_shipping_allspecificcountries</source_model>
254
+ <show_in_default>1</show_in_default>
255
+ <show_in_website>1</show_in_website>
256
+ <show_in_store>0</show_in_store>
257
+ </sallowspecific>
258
+ <specificcountry translate="label">
259
+ <label>Ship to Specific Countries</label>
260
+ <frontend_type>multiselect</frontend_type>
261
+ <sort_order>91</sort_order>
262
+ <source_model>adminhtml/system_config_source_country</source_model>
263
+ <show_in_default>1</show_in_default>
264
+ <show_in_website>1</show_in_website>
265
+ <show_in_store>0</show_in_store>
266
+ <can_be_empty>1</can_be_empty>
267
+ </specificcountry>
268
+ </fields>
269
+ </nzpost>
270
+ <fastway translate="label" module="ship">
271
+ <label>Fastway</label>
272
+ <frontend_type>text</frontend_type>
273
+ <sort_order>99</sort_order>
274
+ <show_in_default>1</show_in_default>
275
+ <show_in_website>1</show_in_website>
276
+ <show_in_store>1</show_in_store>
277
+ <fields>
278
+ <active translate="label">
279
+ <label>Enabled</label>
280
+ <frontend_type>select</frontend_type>
281
+ <source_model>adminhtml/system_config_source_yesno</source_model>
282
+ <sort_order>1</sort_order>
283
+ <show_in_default>1</show_in_default>
284
+ <show_in_website>1</show_in_website>
285
+ <show_in_store>1</show_in_store>
286
+ </active>
287
+ <title translate="label">
288
+ <label>Title</label>
289
+ <frontend_type>text</frontend_type>
290
+ <sort_order>2</sort_order>
291
+ <show_in_default>1</show_in_default>
292
+ <show_in_website>1</show_in_website>
293
+ <show_in_store>1</show_in_store>
294
+ </title>
295
+ <name translate="label">
296
+ <label>Method Name</label>
297
+ <frontend_type>text</frontend_type>
298
+ <sort_order>2</sort_order>
299
+ <show_in_default>1</show_in_default>
300
+ <show_in_website>1</show_in_website>
301
+ <show_in_store>1</show_in_store>
302
+ </name>
303
+ <calculate translate="label">
304
+ <label>Calculate (otherwise flat rate below)</label>
305
+ <frontend_type>select</frontend_type>
306
+ <source_model>adminhtml/system_config_source_yesno</source_model>
307
+ <sort_order>3</sort_order>
308
+ <show_in_default>1</show_in_default>
309
+ <show_in_website>1</show_in_website>
310
+ <show_in_store>0</show_in_store>
311
+ </calculate>
312
+ <price translate="label">
313
+ <label>Flat Rate Price</label>
314
+ <frontend_type>text</frontend_type>
315
+ <sort_order>4</sort_order>
316
+ <show_in_default>1</show_in_default>
317
+ <show_in_website>1</show_in_website>
318
+ <show_in_store>1</show_in_store>
319
+ </price>
320
+ <apiKey translate="label">
321
+ <label>Api Key</label>
322
+ <frontend_type>text</frontend_type>
323
+ <sort_order>5</sort_order>
324
+ <show_in_default>1</show_in_default>
325
+ <show_in_website>1</show_in_website>
326
+ <show_in_store>1</show_in_store>
327
+ </apiKey>
328
+ <specificerrmsg translate="label">
329
+ <label>Displayed Error Message</label>
330
+ <frontend_type>textarea</frontend_type>
331
+ <sort_order>6</sort_order>
332
+ <show_in_default>1</show_in_default>
333
+ <show_in_website>1</show_in_website>
334
+ <show_in_store>1</show_in_store>
335
+ </specificerrmsg>
336
+ <sallowspecific translate="label">
337
+ <label>Ship to Applicable Countries</label>
338
+ <frontend_type>select</frontend_type>
339
+ <sort_order>90</sort_order>
340
+ <frontend_class>shipping-applicable-country</frontend_class>
341
+ <source_model>adminhtml/system_config_source_shipping_allspecificcountries</source_model>
342
+ <show_in_default>1</show_in_default>
343
+ <show_in_website>1</show_in_website>
344
+ <show_in_store>0</show_in_store>
345
+ </sallowspecific>
346
+ <specificcountry translate="label">
347
+ <label>Ship to Specific Countries</label>
348
+ <frontend_type>multiselect</frontend_type>
349
+ <sort_order>91</sort_order>
350
+ <source_model>adminhtml/system_config_source_country</source_model>
351
+ <show_in_default>1</show_in_default>
352
+ <show_in_website>1</show_in_website>
353
+ <show_in_store>0</show_in_store>
354
+ <can_be_empty>1</can_be_empty>
355
+ </specificcountry>
356
+ </fields>
357
+ </fastway>
358
+ <dhlexpress translate="label" module="ship">
359
+ <label>DHL Express</label>
360
+ <frontend_type>text</frontend_type>
361
+ <sort_order>99</sort_order>
362
+ <show_in_default>1</show_in_default>
363
+ <show_in_website>1</show_in_website>
364
+ <show_in_store>1</show_in_store>
365
+ <fields>
366
+ <active translate="label">
367
+ <label>Enabled</label>
368
+ <frontend_type>select</frontend_type>
369
+ <source_model>adminhtml/system_config_source_yesno</source_model>
370
+ <sort_order>1</sort_order>
371
+ <show_in_default>1</show_in_default>
372
+ <show_in_website>1</show_in_website>
373
+ <show_in_store>1</show_in_store>
374
+ </active>
375
+ <title translate="label">
376
+ <label>Title</label>
377
+ <frontend_type>text</frontend_type>
378
+ <sort_order>2</sort_order>
379
+ <show_in_default>1</show_in_default>
380
+ <show_in_website>1</show_in_website>
381
+ <show_in_store>1</show_in_store>
382
+ </title>
383
+ <name translate="label">
384
+ <label>Method Name</label>
385
+ <frontend_type>text</frontend_type>
386
+ <sort_order>2</sort_order>
387
+ <show_in_default>1</show_in_default>
388
+ <show_in_website>1</show_in_website>
389
+ <show_in_store>1</show_in_store>
390
+ </name>
391
+ <calculate translate="label">
392
+ <label>Calculate (otherwise flat rate below)</label>
393
+ <frontend_type>select</frontend_type>
394
+ <source_model>adminhtml/system_config_source_yesno</source_model>
395
+ <sort_order>3</sort_order>
396
+ <show_in_default>1</show_in_default>
397
+ <show_in_website>1</show_in_website>
398
+ <show_in_store>1</show_in_store>
399
+ </calculate>
400
+ <price translate="label">
401
+ <label>Flat Rate Price</label>
402
+ <frontend_type>text</frontend_type>
403
+ <sort_order>4</sort_order>
404
+ <show_in_default>1</show_in_default>
405
+ <show_in_website>1</show_in_website>
406
+ <show_in_store>1</show_in_store>
407
+ </price>
408
+ <apiKey translate="label">
409
+ <label>Api Key</label>
410
+ <frontend_type>text</frontend_type>
411
+ <sort_order>5</sort_order>
412
+ <show_in_default>1</show_in_default>
413
+ <show_in_website>1</show_in_website>
414
+ <show_in_store>1</show_in_store>
415
+ </apiKey>
416
+ <specificerrmsg translate="label">
417
+ <label>Displayed Error Message</label>
418
+ <frontend_type>textarea</frontend_type>
419
+ <sort_order>6</sort_order>
420
+ <show_in_default>1</show_in_default>
421
+ <show_in_website>1</show_in_website>
422
+ <show_in_store>1</show_in_store>
423
+ </specificerrmsg>
424
+ <sallowspecific translate="label">
425
+ <label>Ship to Applicable Countries</label>
426
+ <frontend_type>select</frontend_type>
427
+ <sort_order>90</sort_order>
428
+ <frontend_class>shipping-applicable-country</frontend_class>
429
+ <source_model>adminhtml/system_config_source_shipping_allspecificcountries</source_model>
430
+ <show_in_default>1</show_in_default>
431
+ <show_in_website>1</show_in_website>
432
+ <show_in_store>0</show_in_store>
433
+ </sallowspecific>
434
+ <specificcountry translate="label">
435
+ <label>Ship to Specific Countries</label>
436
+ <frontend_type>multiselect</frontend_type>
437
+ <sort_order>91</sort_order>
438
+ <source_model>adminhtml/system_config_source_country</source_model>
439
+ <show_in_default>1</show_in_default>
440
+ <show_in_website>1</show_in_website>
441
+ <show_in_store>0</show_in_store>
442
+ <can_be_empty>1</can_be_empty>
443
+ </specificcountry>
444
+ </fields>
445
+ </dhlexpress>
446
+ </groups>
447
+ </carriers>
448
+ </sections>
449
+ </config>
app/etc/modules/Starshipit.xml ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Starshipit_Ship>
5
+ <active>true</active>
6
+ <codePool>community</codePool>
7
+ </Starshipit_Ship>
8
+ </modules>
9
+ </config>
package.xml CHANGED
@@ -1,23 +1,27 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Rvtech_Starshipit</name>
4
- <version>1.3.2.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
7
  <channel>community</channel>
8
  <extends/>
9
- <summary>Syncs Orders between Magento and StarShipIt to enable quotes, printing of shipping labels and track and trace for supported carries including DHL, Australia Post, Fastway and more.</summary>
 
 
10
  <description>The StarShipIt Magento Extension enables orders to be imported into StarShipIt DHL and writes back tracking information and updates order status in Magento.&#xD;
11
  &#xD;
12
  From StarShipIt shipping labels can be produced, tracking of orders is supported, quotes can be obtained and all custom and DHL documentation can be produced.&#xD;
13
  &#xD;
14
  DHL Express Worldwide is supported as well &#xD;
15
  Australia Post eParcel, CourierPost, Fastways, and more</description>
16
- <notes>Minor Update</notes>
 
 
17
  <authors><author><name>George Plummer</name><user>GeorgeSPlummer</user><email>george@starshipit.com</email></author></authors>
18
- <date>2014-05-21</date>
19
- <time>03:32:08</time>
20
- <contents><target name="magecommunity"><dir name="Rvtech"><dir name="Starshipit"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><file name="Button.php" hash="2b3b0143262abe0d3ba50c38fe10d932"/><file name="Syncbutton.php" hash="b53f7f430495c1e9466789b116ce6349"/></dir></dir></dir></dir><dir name="Sales"><dir name="Order"><file name="Grid.php" hash="52dc5c408d28810e8bc3a19dc65409a3"/><file name="View.php" hash="08cb2c65b7ec0decec579bfdbfe79c7d"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="0313223fc94e9ed45f4401119bd6f528"/><file name="Starship.php" hash="0d508c0919706880b86f9ef755cd5d34"/><file name="Starship.php_ORG" hash="d92f50594c70158dd94453ef7f147de9"/></dir><dir name="Model"><file name="Observer.php" hash="cac0751526ff06c8bdaa99d432a75865"/><file name="Orders.php" hash="d5e6fa78702b1a0bd60e8cb4b3f57521"/><file name="Orders.php_ORG" hash="cbadeab0c67303b653bed3549a9b73de"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="StarshipitController.php" hash="926e0e618d5732fa7fffc0b1b5028259"/><file name="StarshipitController.php_ORG" hash="b7c694e8252892da817eae072f6f8ad6"/></dir><file name="IndexController.php" hash="f74d6e40df4fc46a9be2e53b5da55727"/></dir><dir name="etc"><file name="adminhtml.xml" hash="02121bfdaabeb4aa30733462d532b211"/><file name="config.xml" hash="521d80ad07595a1d4017ac610dd1512c"/><file name="system.xml" hash="02c4074fdacdf4c48f78eb85409dcc77"/></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="starshipit"><dir name="system"><dir name="config"><file name="button.phtml" hash="064f053f67fc7b749d1aec40cd352ce1"/><file name="syncbutton.phtml" hash="3e67731254d4d0298891cd2598471dc9"/></dir></dir></dir></dir><dir name="layout"><file name="starshipit.xml" hash="e451df5a50a3c73bd53ba272ba43f2a4"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Rvtech_Startshipit.xml" hash="741fde1331d6a9b27ef2faa2bd8a843f"/></dir></target><target name="mageweb"><dir name="js"><dir name="mage"><dir name="adminhtml"><file name="starshipgrid.js" hash="df976a3e0a82fa6e8117ef687609b431"/></dir></dir></dir></target></contents>
21
  <compatible/>
22
  <dependencies><required><php><min>5.1.0</min><max>5.5.2</max></php></required></dependencies>
23
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Rvtech_Starshipit</name>
4
+ <version>1.4.0.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
7
  <channel>community</channel>
8
  <extends/>
9
+ <summary>This extension allows for rate quotes as well as automated shipping.&#xD;
10
+ &#xD;
11
+ Adds Australia and New Zealand supported carriers as well as a button to click through from the order details to enable automated shipping.</summary>
12
  <description>The StarShipIt Magento Extension enables orders to be imported into StarShipIt DHL and writes back tracking information and updates order status in Magento.&#xD;
13
  &#xD;
14
  From StarShipIt shipping labels can be produced, tracking of orders is supported, quotes can be obtained and all custom and DHL documentation can be produced.&#xD;
15
  &#xD;
16
  DHL Express Worldwide is supported as well &#xD;
17
  Australia Post eParcel, CourierPost, Fastways, and more</description>
18
+ <notes>Added supported carriers to the carrier list as well as tracking URLs for them all.&#xD;
19
+ &#xD;
20
+ Also added quote lookups for CourierPost, DHL, with Australia Post to be added in the next few days.</notes>
21
  <authors><author><name>George Plummer</name><user>GeorgeSPlummer</user><email>george@starshipit.com</email></author></authors>
22
+ <date>2014-05-27</date>
23
+ <time>05:24:34</time>
24
+ <contents><target name="magecommunity"><dir name="Rvtech"><dir name="Starshipit"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><file name="Button.php" hash="2b3b0143262abe0d3ba50c38fe10d932"/><file name="Syncbutton.php" hash="b53f7f430495c1e9466789b116ce6349"/></dir></dir></dir></dir><dir name="Sales"><dir name="Order"><file name="Grid.php" hash="52dc5c408d28810e8bc3a19dc65409a3"/><file name="View.php" hash="94a95a8a3bf368bd5b2579405be5564e"/></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="StarshipitController.php" hash="926e0e618d5732fa7fffc0b1b5028259"/><file name="StarshipitController.php_ORG" hash="b7c694e8252892da817eae072f6f8ad6"/></dir><file name="IndexController.php" hash="f74d6e40df4fc46a9be2e53b5da55727"/></dir><dir name="etc"><file name="adminhtml.xml" hash="02121bfdaabeb4aa30733462d532b211"/><file name="config.xml" hash="521d80ad07595a1d4017ac610dd1512c"/><file name="system.xml" hash="02c4074fdacdf4c48f78eb85409dcc77"/></dir><dir name="Helper"><file name="Data.php" hash="0313223fc94e9ed45f4401119bd6f528"/><file name="Starship.php" hash="8e67e9407ff4e1226c9ee83ba267b6d5"/></dir><dir name="Model"><file name="Observer.php" hash="cac0751526ff06c8bdaa99d432a75865"/><file name="Orders.php" hash="d5e6fa78702b1a0bd60e8cb4b3f57521"/><file name="Orders.php_ORG" hash="cbadeab0c67303b653bed3549a9b73de"/></dir></dir></dir><dir name="Starshipit"><dir name="Ship"><dir name="Block"><file name="Ship.php" hash="529d915d3293400dab088a1827406977"/></dir><dir name="controllers"><file name="IndexController.php" hash="87ed8f9f6923f532a1fab239c54596c5"/></dir><dir name="etc"><file name="config.xml" hash="d83e58ad297f4a06d5dea18883b141f5"/><file name="system.xml" hash="e2d23522fcc05684be45ab699d80b666"/></dir><dir name="Helper"><file name="Data.php" hash="601fe2fdf26bd83cc88ce7b9da7d6e23"/></dir><dir name="Model"><dir name="Carrier"><file name="Auspost.php" hash="ba9c66b6ad81d5b572572cc1cab29315"/><file name="Courierpost.php" hash="020b163a31753d59d4eb4acb30f9aa7e"/><file name="Dhlexpress.php" hash="ef0d41ba374e75028fd5ed2ecadc538a"/><file name="Fastway.php" hash="68e6be1e3bfcac41cdd68d13b5a06a0a"/><file name="Nzpost.php" hash="ddf5422acda67bc1b6ae10cb5e979248"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="starshipit"><dir name="system"><dir name="config"><file name="button.phtml" hash="064f053f67fc7b749d1aec40cd352ce1"/><file name="syncbutton.phtml" hash="3e67731254d4d0298891cd2598471dc9"/></dir></dir></dir></dir><dir name="layout"><file name="starshipit.xml" hash="e451df5a50a3c73bd53ba272ba43f2a4"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Rvtech_Startshipit.xml" hash="741fde1331d6a9b27ef2faa2bd8a843f"/><file name="Starshipit.xml" hash="af4dcd9278d8eb0d30dfb70de26682eb"/></dir></target><target name="mageweb"><dir name="js"><dir name="mage"><dir name="adminhtml"><file name="starshipgrid.js" hash="df976a3e0a82fa6e8117ef687609b431"/></dir></dir></dir></target></contents>
25
  <compatible/>
26
  <dependencies><required><php><min>5.1.0</min><max>5.5.2</max></php></required></dependencies>
27
  </package>