12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Braintree\Observer;
- use Magento\Framework\Event\Observer;
- use Magento\Payment\Observer\AbstractDataAssignObserver;
- use Magento\Quote\Api\Data\PaymentInterface;
- /**
- * Class DataAssignObserver
- */
- class DataAssignObserver extends AbstractDataAssignObserver
- {
- const PAYMENT_METHOD_NONCE = 'payment_method_nonce';
- const DEVICE_DATA = 'device_data';
- /**
- * @var array
- */
- protected $additionalInformationList = [
- self::PAYMENT_METHOD_NONCE,
- self::DEVICE_DATA
- ];
- /**
- * @param Observer $observer
- * @return void
- */
- public function execute(Observer $observer)
- {
- $data = $this->readDataArgument($observer);
- $additionalData = $data->getData(PaymentInterface::KEY_ADDITIONAL_DATA);
- if (!is_array($additionalData)) {
- return;
- }
- $paymentInfo = $this->readPaymentModelArgument($observer);
- foreach ($this->additionalInformationList as $additionalInformationKey) {
- if (isset($additionalData[$additionalInformationKey])) {
- $paymentInfo->setAdditionalInformation(
- $additionalInformationKey,
- $additionalData[$additionalInformationKey]
- );
- }
- }
- }
- }
|