private function migrateFrom130(Customweb_Subscription_Model_Subscription $subscription) { if ($subscription->getStatus() == 'captured') { $subscription->setStatus('paid'); } if (!in_array($subscription->getStatus(), array('canceled', 'expired')) && $subscription->getCancelRequest()) { $cancelDate = Mage::helper('customweb_subscription')->toDateObject($subscription->getCancelDate()); $count = 0; while ($cancelDate->compareDate(Zend_Date::now()) > 0) { $subscription->getPlan()->previousDueDate($cancelDate); $count++; } $subscription->setCancelCount($subscription->getCancelPeriod() - $count); } $this->scheduleNextJobs($subscription); }
/** * Update the subscription after processing this payment method. * * @param Mage_Sales_Model_Order $order * @param array $parameters */ public function afterProcess(Mage_Sales_Model_Order $order, array $parameters) { if ($this->isSupportingRecurring()) { $this->_subscription->setPaymentId($order->getPayment()->getId()); } $transaction = $this->getHelper()->loadTransactionByOrder($order->getId()); if ($transaction->getTransactionObject()->isAuthorized()) { if ($transaction->getTransactionObject()->isCaptured()) { $this->_subscription->setStatus(Customweb_Subscription_Model_Subscription::STATUS_PAID); } else { $this->_subscription->setStatus(Customweb_Subscription_Model_Subscription::STATUS_AUTHORIZED); } } else { $this->_subscription->setStatus(Customweb_Subscription_Model_Subscription::STATUS_PENDING); } $this->_subscription->save(); }