2014-09-03 4 views
0

Я борюсь со специальной проблемой, связанной с перенаправлением какого-либо наблюдателя Magento.Magento OPC Observer redirect

Я написал расширение и поместил наблюдателя в событие checkout_submit_all_after, которое работает нормально. Мое небольшое расширение автоматически создает счет-фактуру и устанавливает статус заказа на обработку, как только метод оплаты «Счет-фактура». К сожалению, перенаправление после отправки заказа в одной странице проверки больше не работает. Он всегда перенаправляется на «checkout/cart» вместо «checkout/onepage/success».

Кто-нибудь знает, что я делаю неправильно?

Вот мой код:

class Shostra_AutoInvoice_Model_Order_Observer 
{ 
    public function __construct() 
{ 

} 


public function auto_create_invoice($observer) 
{ 

    $order = $observer->getEvent()->getOrder(); 

    if (!$order->hasInvoices()) { 
     $payment = $order->getPayment()->getMethodInstance()->getTitle(); 
     Mage::log("payment method: " . $payment); 

     if($payment=="Rechnung"){ 
      Mage::log("autocreating invoice"); 
      $invoice = $order->prepareInvoice(); 
      $invoice->register(); 
      $invoice->pay(); 
      $invoice->save(); 
      $order->setState(Mage_Sales_Model_Order::STATE_PROCESSING, true)->save(); 
      Mage::log("invoice created and saved"); 
     } 
     $this->addComment('Order automatically set to paid.'); 
    } else { 
     $this->addComment('no invoices found.'); 
    } 

    $response = $observer->getResponse(); 
    $response->setRedirect(Mage::getUrl('checkout/onepage/success')); 
    Mage::getSingleton('checkout/session')->setNoCartRedirect(true); 
} 
} 

Спасибо большое!

ответ

1

Почему бы вам не попробовать sales_order_save_after событие и попытаться сохранить его, так что никаких проблем с перенаправлением вручную как Magento будет принимать свой собственный курс,

вы можете обратиться к этой ссылке для более подробного объяснения

http://inchoo.net/magento/magento-orders/automatically-invoice-ship-complete-order-in-magento/ 
+0

Благодаря! Оно работает. :) – SoenkeM

+0

Нужно ли ... – huzefam

Смежные вопросы