Exemplo n.º 1
0
 /**
  * Get file name of label image for shipment tracking
  *
  * @todo make flexible enough for EPL
  * @param Mage_Sales_Model_Order_Shipment_Track $track
  * @return string
  */
 public function getTrackLabelFileName($track)
 {
     $shipment = $track->getShipment();
     return Mage::getConfig()->getVarDir('label') . DS . $track->getNumber() . '.png';
 }
Exemplo n.º 2
0
 /**
  * @param Mage_Sales_Model_Order_Shipment_Track $magento_track
  * @return mixed
  */
 private function _saveTrack(Mage_Sales_Model_Order_Shipment_Track $magento_track)
 {
     $magento_track_data = $magento_track->getData();
     $magento_order_data = $magento_track->getShipment()->getOrder()->getData();
     $magento_shipping_address_data = $magento_track->getShipment()->getOrder()->getShippingAddress()->getData();
     $track = Mage::getModel('track/track');
     $track->setTrackingNumber($this->_getTrackNo($magento_track));
     $track->setShipCompCode($magento_track_data['carrier_code']);
     $track->setTitle($magento_order_data['increment_id']);
     $track->setOrderId($magento_order_data['increment_id']);
     if ($magento_order_data['customer_email'] && $magento_order_data['customer_email'] != '') {
         $track->setEmail($magento_order_data['customer_email']);
     }
     if ($magento_shipping_address_data['telephone'] && $magento_shipping_address_data['telephone'] != '') {
         $track->setTelephone($magento_shipping_address_data['telephone']);
     }
     $config = $this->_getWebsiteConfig($magento_track->getShipment()->getOrder());
     if ($config->status) {
         $track->setPosted(self::POSTED_NOT_YET);
     } else {
         // mark it as disabled so that cron will not touch it
         $track->setPosted(self::POSTED_DISABLED);
     }
     $track->save();
     return $track;
 }
Exemplo n.º 3
0
 public function getMagentoOrderEntityIdForTrackingObject(Mage_Sales_Model_Order_Shipment_Track $shipmentTrackingObject)
 {
     $magento_order_id = $shipmentTrackingObject->getOrderId();
     if (!empty($magento_order_id)) {
         // This should always be set for a tracking object which has been persisted to the database
         return $magento_order_id;
     }
     // Handle cases where the order_id is not set
     $shipmentObject = $shipmentTrackingObject->getShipment();
     if (is_object($shipmentObject) && $shipmentObject->getId()) {
         return $shipmentObject->getOrderId();
     }
     return null;
 }