/** * Finalize before deleting. */ protected function _beforeDelete() { /** * Delete from Authorize.Net if we have a valid record. */ if ($this->getProfileId() != '' && $this->getPaymentId() != '') { $gateway = $this->getMethodInstance()->gateway(); $gateway->setCard($this); $gateway->setParameter('customerProfileId', $this->getProfileId()); $gateway->setParameter('customerPaymentProfileId', $this->getPaymentId()); // Suppress any gateway errors that might occur, we don't care here. try { $gateway->deleteCustomerPaymentProfile(); } catch (Exception $e) { Mage::helper('tokenbase')->log($this->getMethod(), $e->getMessage()); } } return parent::_beforeDelete(); }
/** * Set the current payment card */ public function setCard(ParadoxLabs_TokenBase_Model_Card $card) { $this->_log(sprintf('setCard(%s)', $card->getId())); $this->_card = $card; $this->gateway()->setCard($card); $this->getInfoInstance()->setTokenbaseId($card->getId())->setCcType($card->getAdditional('cc_type'))->setCcLast4($card->getAdditional('cc_last4'))->setCcExpMonth($card->getAdditional('cc_exp_month'))->setCcExpYear($card->getAdditional('cc_exp_year')); return $this; }
/** * Magento-exposed actions */ public function setCard(ParadoxLabs_TokenBase_Model_Card $card) { $this->setParameter('email', $card->getCustomerEmail()); $this->setParameter('merchantCustomerId', $card->getCustomerId()); $this->setParameter('customerProfileId', $card->getProfileId()); $this->setParameter('customerPaymentProfileId', $card->getPaymentId()); $this->setParameter('customerIp', $card->getCustomerIp()); return parent::setCard($card); }