Пример #1
0
 /**
  * Manage status
  *
  * @param Mage_Payment_Model_Recurring_Profile $profile
  */
 public function updateRecurringProfileStatus(Mage_Payment_Model_Recurring_Profile $profile)
 {
     $api = $this->getApi();
     $action = null;
     switch ($profile->getNewState()) {
         case Mage_Sales_Model_Recurring_Profile::STATE_CANCELED:
             $action = 'cancel';
             break;
         case Mage_Sales_Model_Recurring_Profile::STATE_SUSPENDED:
             $action = 'suspend';
             break;
         case Mage_Sales_Model_Recurring_Profile::STATE_ACTIVE:
             $action = 'activate';
             break;
     }
     $state = $profile->getState();
     $api->setRecurringProfileId($profile->getReferenceId())->setIsAlreadyCanceled($state == Mage_Sales_Model_Recurring_Profile::STATE_CANCELED)->setIsAlreadySuspended($state == Mage_Sales_Model_Recurring_Profile::STATE_SUSPENDED)->setIsAlreadyActive($state == Mage_Sales_Model_Recurring_Profile::STATE_ACTIVE)->setAction($action)->callManageRecurringPaymentsProfileStatus();
 }