Esempio n. 1
0
 /**
  * Render info item labels
  *
  * @param string $key
  */
 protected function _getLabel($key)
 {
     switch ($key) {
         case Mage_Sales_Model_Payment_Method_Billing_AgreementAbstract::PAYMENT_INFO_REFERENCE_ID:
             return Mage::helper('cls_paypal')->__('Billing Agreement Id');
     }
     return parent::_getLabel($key);
 }
Esempio n. 2
0
 /**
  * Map payment information from IPN to payment object
  * Returns true if there were changes in information
  *
  * @param Mage_Payment_Model_Info $payment
  * @return bool
  */
 protected function _importPaymentInformation()
 {
     $payment = $this->_order->getPayment();
     $was = $payment->getAdditionalInformation();
     // collect basic information
     $from = array();
     foreach (array(Mage_Paypal_Model_Info::PAYER_ID, 'payer_email' => Mage_Paypal_Model_Info::PAYER_EMAIL, Mage_Paypal_Model_Info::PAYER_STATUS, Mage_Paypal_Model_Info::ADDRESS_STATUS, Mage_Paypal_Model_Info::PROTECTION_EL, Mage_Paypal_Model_Info::PAYMENT_STATUS, Mage_Paypal_Model_Info::PENDING_REASON) as $privateKey => $publicKey) {
         if (is_int($privateKey)) {
             $privateKey = $publicKey;
         }
         $value = $this->getRequestData($privateKey);
         if ($value) {
             $from[$publicKey] = $value;
         }
     }
     if (isset($from['payment_status'])) {
         $from['payment_status'] = $this->_filterPaymentStatus($this->getRequestData('payment_status'));
     }
     // collect fraud filters
     $fraudFilters = array();
     for ($i = 1; $value = $this->getRequestData("fraud_management_pending_filters_{$i}"); $i++) {
         $fraudFilters[] = $value;
     }
     if ($fraudFilters) {
         $from[Mage_Paypal_Model_Info::FRAUD_FILTERS] = $fraudFilters;
     }
     $this->_info->importToPayment($from, $payment);
     /**
      * Detect pending payment, frauds
      * TODO: implement logic in one place
      * @see Mage_Paypal_Model_Pro::importPaymentInfo()
      */
     if ($this->_info->isPaymentReviewRequired($payment)) {
         $payment->setIsTransactionPending(true);
         if ($fraudFilters) {
             $payment->setIsFraudDetected(true);
         }
     }
     if ($this->_info->isPaymentSuccessful($payment)) {
         $payment->setIsTransactionApproved(true);
     } elseif ($this->_info->isPaymentFailed($payment)) {
         $payment->setIsTransactionDenied(true);
     }
     return $was != $payment->getAdditionalInformation();
 }
Esempio n. 3
0
 /**
  *
  * @param Mage_Sales_Model_Order_Payment $payment
  * @return bool
  */
 public function canReviewPayment(Mage_Payment_Model_Info $payment)
 {
     return Mage_Paypal_Model_Info::isPaymentReviewRequired($payment);
 }
Esempio n. 4
0
 /**
  *
  * @param Mage_Sales_Model_Order_Payment $payment
  * @return bool
  */
 public function canReviewPayment(Mage_Payment_Model_Info $payment)
 {
     return Mage_Paypal_Model_Info::isFraudReviewAllowed($payment);
 }