public function infoAction() { if (!Mage::getStoreConfig('shippingtracking/general/enabled')) { $this->_forward('noRoute'); return; } $_request = $this->getRequest(); $_session = Mage::getSingleton('customer/session'); $orderId = $_request->getParam('order'); $info = $_request->getParam('info'); if (empty($info) || empty($orderId)) { $_session->addError($this->__('Make sure that you have entered the Order Number and phone number (or email address) correctly.')); $this->_redirect('*/*/'); return; } else { $order = Mage::getModel('sales/order')->load($orderId, 'increment_id'); if ($order->getId()) { $bAddress = $order->getBillingAddress(); $sAddress = $order->getShippingAddress(); if ($bAddress->getEmail() == $info || $bAddress->getTelephone() == $info || $sAddress && ($sAddress->getEmail() == $info || $sAddress->getTelephone() == $info)) { $trackingInfo = $this->_getTrackingInfoByOrder($order); $shippingInfoModel = new Varien_Object(); $shippingInfoModel->setTrackingInfo($trackingInfo)->setOrderId($order->getId()); Mage::register('current_shipping_info', $shippingInfoModel); if (count($trackingInfo) == 1) { foreach ($trackingInfo as $shipid => $_result) { if (count($_result) == 1) { foreach ($_result as $key => $track) { $carrier = $track->getCarrier(); if (Mage::getStoreConfig('shippingtracking/' . $carrier . '_api/enabled')) { $this->_redirect('*/*/' . $carrier, array('number' => $track->getTracking())); return; } } } } } Mage::register('current_order', $order); $this->loadLayout(); if ($head = $this->getLayout()->getBlock('head')) { $head->setTitle($this->__('Order Status')); } $this->_initLayoutMessages('customer/session'); $this->renderLayout(); return; } } } $_session->addError($this->__('Make sure that you have entered the Order Number and phone number (or email address) correctly.')); $this->_redirect('*/*/index', array('order' => $orderId, 'info' => $info)); }