Skip to content

Commit 1701ee1

Browse files
committed
Release 2.0.5
1 parent ae22b1b commit 1701ee1

16 files changed

+85
-69
lines changed

Model/Service/Order/TransactionService.php

+9
Original file line numberDiff line numberDiff line change
@@ -291,6 +291,15 @@ protected function assembleTransactionDataFromOrder(AbstractTransactionPending $
291291
if ($transactionInfo !== null && $transactionInfo->isExternalPaymentUrl()) {
292292
$successUrl = $this->buildUrl($transactionInfo->getSuccessUrl(), $order, true);
293293
$failureUrl = $this->buildUrl($transactionInfo->getFailureUrl(), $order, true);
294+
295+
//force a particular payment method
296+
$transaction->setAllowedPaymentMethodConfigurations(
297+
[
298+
$order->getPayment()
299+
->getMethodInstance()
300+
->getPaymentMethodConfiguration()
301+
->getConfigurationId()
302+
]);
294303
}
295304
} catch (\Exception $e) {
296305
$this->logger->debug("ORDER-TRANSACTION-SERVICE::assembleTransactionDataFromOrder error: " . $e->getMessage());

Model/TransactionInfoManagement.php

+61-36
Original file line numberDiff line numberDiff line change
@@ -76,36 +76,13 @@ public function update(Transaction $transaction, Order $order)
7676
$info = $this->transactionInfoRepository->getByTransactionId($transaction->getLinkedSpaceId(),
7777
$transaction->getId());
7878

79-
if ($info->getOrderId() != $order->getId() && !$info->isExternalPaymentUrl()) {
80-
throw new \Exception('The PostFinance Checkout transaction info is already linked to a different order.');
79+
if ($info->getOrderId() != $order->getId() && !$info->isExternalPaymentUrl()) {
80+
throw new \Exception('The PostFinance Checkout transaction info is already linked to a different order.');
8181
}
8282
} catch (NoSuchEntityException $e) {
8383
$info = $this->transactionInfoFactory->create();
8484
}
85-
$info->setData(TransactionInfoInterface::TRANSACTION_ID, $transaction->getId());
86-
$info->setData(TransactionInfoInterface::AUTHORIZATION_AMOUNT, $transaction->getAuthorizationAmount());
87-
$info->setData(TransactionInfoInterface::ORDER_ID, $order->getId());
88-
$info->setData(TransactionInfoInterface::STATE, $transaction->getState());
89-
$info->setData(TransactionInfoInterface::SPACE_ID, $transaction->getLinkedSpaceId());
90-
$info->setData(TransactionInfoInterface::SPACE_VIEW_ID, $transaction->getSpaceViewId());
91-
$info->setData(TransactionInfoInterface::LANGUAGE, $transaction->getLanguage());
92-
$info->setData(TransactionInfoInterface::CURRENCY, $transaction->getCurrency());
93-
$info->setData(TransactionInfoInterface::CONNECTOR_ID,
94-
$transaction->getPaymentConnectorConfiguration() != null ? $transaction->getPaymentConnectorConfiguration()
95-
->getConnector() : null);
96-
$info->setData(TransactionInfoInterface::PAYMENT_METHOD_ID,
97-
$transaction->getPaymentConnectorConfiguration() != null &&
98-
$transaction->getPaymentConnectorConfiguration()
99-
->getPaymentMethodConfiguration() != null ? $transaction->getPaymentConnectorConfiguration()
100-
->getPaymentMethodConfiguration()
101-
->getPaymentMethod() : null);
102-
$info->setData(TransactionInfoInterface::IMAGE, $this->getPaymentMethodImage($transaction, $order));
103-
$info->setData(TransactionInfoInterface::LABELS, $this->getTransactionLabels($transaction));
104-
if ($transaction->getState() == TransactionState::FAILED || $transaction->getState() == TransactionState::DECLINE) {
105-
$info->setData(TransactionInfoInterface::FAILURE_REASON,
106-
$transaction->getFailureReason() instanceof FailureReason ? $transaction->getFailureReason()
107-
->getDescription() : null);
108-
}
85+
$info = $this->setTransactionData($transaction, $info, null, $order);
10986
$this->transactionInfoRepository->save($info);
11087
return $info;
11188
}
@@ -114,7 +91,7 @@ public function update(Transaction $transaction, Order $order)
11491
* Update the transaction info with the success and failure URL to redirect the customer after placing the order
11592
*
11693
* @param Transaction $transaction
117-
* @param int $orderId
94+
* @param int $orderId
11895
* @param string $successUrl
11996
* @param string $failureUrl
12097
* @return TransactionInfoInterface|TransactionInfo
@@ -131,19 +108,67 @@ public function setRedirectUrls(Transaction $transaction, $orderId, $successUrl,
131108
$info = $this->transactionInfoFactory->create();
132109
}
133110

134-
$info->setData(TransactionInfoInterface::TRANSACTION_ID, $transaction->getId());
135-
$info->setData(TransactionInfoInterface::SPACE_ID, $transaction->getLinkedSpaceId());
136-
$info->setData(TransactionInfoInterface::SPACE_VIEW_ID, $transaction->getSpaceViewId());
137-
$info->setData(TransactionInfoInterface::ORDER_ID, $orderId);
138-
$info->setData(TransactionInfoInterface::STATE, $transaction->getState());
139-
$info->setData(TransactionInfoInterface::LANGUAGE, $transaction->getLanguage());
140-
$info->setData(TransactionInfoInterface::CURRENCY, $transaction->getCurrency());
141-
$info->setData(TransactionInfoInterface::SUCCESS_URL, $successUrl);
142-
$info->setData(TransactionInfoInterface::FAILURE_URL, $failureUrl);
111+
$info = $this->setTransactionData($transaction, $info, $orderId, null, $successUrl, $failureUrl);
143112
$this->transactionInfoRepository->save($info);
144113
return $info;
145114
}
146115

116+
/**
117+
* Update the transaction info
118+
*
119+
* @param Transaction $transaction
120+
* @param TransactionInfo $transactionInfo,
121+
* @param int|null $orderId
122+
* @param Order|null $order
123+
* @param string|null $successUrl
124+
* @param string|null $failureUrl
125+
* @return TransactionInfoInterface|TransactionInfo
126+
*/
127+
private function setTransactionData(
128+
Transaction $transaction,
129+
TransactionInfo $transactionInfo,
130+
$orderId = null,
131+
Order $order = null,
132+
$successUrl = null,
133+
$failureUrl = null
134+
) {
135+
$transactionInfo->setData(TransactionInfoInterface::TRANSACTION_ID, $transaction->getId());
136+
$transactionInfo->setData(TransactionInfoInterface::AUTHORIZATION_AMOUNT, $transaction->getAuthorizationAmount());
137+
$transactionInfo->setData(TransactionInfoInterface::ORDER_ID, $order instanceof Order ? $order->getId() : $orderId);
138+
$transactionInfo->setData(TransactionInfoInterface::STATE, $transaction->getState());
139+
$transactionInfo->setData(TransactionInfoInterface::SPACE_ID, $transaction->getLinkedSpaceId());
140+
$transactionInfo->setData(TransactionInfoInterface::SPACE_VIEW_ID, $transaction->getSpaceViewId());
141+
$transactionInfo->setData(TransactionInfoInterface::LANGUAGE, $transaction->getLanguage());
142+
$transactionInfo->setData(TransactionInfoInterface::CURRENCY, $transaction->getCurrency());
143+
$transactionInfo->setData(TransactionInfoInterface::CONNECTOR_ID,
144+
$transaction->getPaymentConnectorConfiguration() != null
145+
? $transaction->getPaymentConnectorConfiguration()->getConnector() : null);
146+
$transactionInfo->setData(TransactionInfoInterface::PAYMENT_METHOD_ID,
147+
$transaction->getPaymentConnectorConfiguration() != null &&
148+
$transaction->getPaymentConnectorConfiguration()
149+
->getPaymentMethodConfiguration() != null ? $transaction->getPaymentConnectorConfiguration()
150+
->getPaymentMethodConfiguration()
151+
->getPaymentMethod() : null);
152+
$transactionInfo->setData(TransactionInfoInterface::LABELS, $this->getTransactionLabels($transaction));
153+
154+
if (!empty($order) && $order instanceof Order) {
155+
$transactionInfo->setData(TransactionInfoInterface::IMAGE, $this->getPaymentMethodImage($transaction, $order));
156+
}
157+
158+
if (!empty($successUrl) || !empty($failureUrl)) {
159+
$transactionInfo->setData(TransactionInfoInterface::SUCCESS_URL, $successUrl);
160+
$transactionInfo->setData(TransactionInfoInterface::FAILURE_URL, $failureUrl);
161+
}
162+
163+
if ($transaction->getState() == TransactionState::FAILED || $transaction->getState() == TransactionState::DECLINE) {
164+
$transactionInfo->setData(TransactionInfoInterface::FAILURE_REASON,
165+
$transaction->getFailureReason() instanceof FailureReason ? $transaction->getFailureReason()
166+
->getDescription() : null);
167+
}
168+
169+
return $transactionInfo;
170+
}
171+
147172
/**
148173
* Gets an array of the transaction's labels.
149174
*

README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ This repository contains the Magento 2 extension that enables to process payment
1212

1313
## Documentation
1414

15-
* [Documentation](https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html)
15+
* [Documentation](https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html)
1616

1717

1818
## Support
@@ -30,4 +30,4 @@ We do provide special integrations for the following one step checkouts:
3030

3131
## License
3232

33-
Please see the [license file](https://github.com/pfpayments/magento-2/blob/2.0.4/LICENSE) for more information.
33+
Please see the [license file](https://github.com/pfpayments/magento-2/blob/2.0.5/LICENSE) for more information.

Setup/Patch/Data/AddSetupData.php renamed to Setup/Patch/Data/AddSetupDataState.php

+1-10
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
* @package PostFinanceCheckout\Payment\Setup\Patch\Data
1212
*/
1313

14-
class AddSetupData implements DataPatchInterface, PatchVersionInterface
14+
class AddSetupDataState implements DataPatchInterface
1515
{
1616
private $status;
1717

@@ -51,15 +51,6 @@ public static function getDependencies(){
5151
return [];
5252
}
5353

54-
/**
55-
* @description: Under the version number, it will run (if new version is 1.3.5, put 1.3.6)
56-
* @return int:
57-
*/
58-
59-
public static function getVersion(){
60-
return '1.3.30';
61-
}
62-
6354
/**
6455
* @return array:
6556
*/

Setup/Patch/Data/UpdateStatusStateData.php renamed to Setup/Patch/Data/UpdateStatusState.php

+1-10
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* @package PostFinanceCheckout\Payment\Setup\Patch\Data
1414
*/
1515

16-
class UpdateStatusStateData implements DataPatchInterface, PatchVersionInterface
16+
class UpdateStatusState implements DataPatchInterface
1717
{
1818
/**
1919
* @var \Magento\Framework\Setup\ModuleDataSetupInterface
@@ -44,15 +44,6 @@ public static function getDependencies(){
4444
return [];
4545
}
4646

47-
/**
48-
* @description: Under the version number, it will run (if new version is 1.3.5, put 1.3.6)
49-
* @return int:
50-
*/
51-
52-
public static function getVersion(){
53-
return '1.3.30';
54-
}
55-
5647
/**
5748
* @return array:
5849
*/

composer.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
}
1717
],
1818
"type" : "magento2-module",
19-
"version" : "2.0.4",
19+
"version" : "2.0.5",
2020
"require" : {
2121
"php" : "~7.1.3||~7.2.0||~7.3.0||~7.4.0||~8.0||~8.1",
2222
"magento/framework" : "^102.0.0||^103.0.0",

docs/en/documentation.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ <h2>Documentation</h2> </div>
2222
</a>
2323
</li>
2424
<li>
25-
<a href="https://github.com/pfpayments/magento-2/releases/tag/2.0.4/">
25+
<a href="https://github.com/pfpayments/magento-2/releases/tag/2.0.5/">
2626
Source
2727
</a>
2828
</li>

etc/adminhtml/system.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<resource>PostFinanceCheckout_Payment::config</resource>
1919
<group id="information" translate="label comment" type="text" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
2020
<label>Information</label>
21-
<comment><![CDATA[If you need help setting up the PostFinance Checkout extension, check out the <a href="https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html" target="_blank">documentation</a>.]]></comment>
21+
<comment><![CDATA[If you need help setting up the PostFinance Checkout extension, check out the <a href="https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html" target="_blank">documentation</a>.]]></comment>
2222
<field id="version" translate="label" type="label" sortOrder="10" showInDefault="1" showInWebsite="1" showInStore="1">
2323
<label>Module Version</label>
2424
</field>

etc/config.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<default>
1515
<postfinancecheckout_payment>
1616
<information>
17-
<version>2.0.4</version>
17+
<version>2.0.5</version>
1818
<sdk_version>3.2.0</sdk_version>
1919
</information>
2020
<general>

etc/module.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
*/
1212
-->
1313
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
14-
<module name="PostFinanceCheckout_Payment" setup_version="2.0.4">
14+
<module name="PostFinanceCheckout_Payment" setup_version="2.0.5">
1515
<sequence>
1616
<module name="Magento_Sales"/>
1717
<module name="Magento_Payment"/>

i18n/de_DE.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"Gift Wrap","Geschenkverpackung"
5151
"Hold Delivery","Lieferung halten"
5252
"ID required","ID erforderlich"
53-
"If you need help setting up the PostFinance Checkout extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Falls Sie Hilfe benötigen beim Einrichten der PostFinance Checkout-Erweiterung, sehen Sie sich die <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">Dokumentation</a> an."
53+
"If you need help setting up the PostFinance Checkout extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Falls Sie Hilfe benötigen beim Einrichten der PostFinance Checkout-Erweiterung, sehen Sie sich die <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">Dokumentation</a> an."
5454
"Inactive","Inaktiv"
5555
"Information","Informationen"
5656
"Invoice","Rechnung"

i18n/en_US.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"Gift Wrap","Gift Wrap"
5151
"Hold Delivery","Hold Delivery"
5252
"ID required","ID required"
53-
"If you need help setting up the PostFinance Checkout extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a>.","If you need help setting up the PostFinance Checkout extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a>."
53+
"If you need help setting up the PostFinance Checkout extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a>.","If you need help setting up the PostFinance Checkout extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a>."
5454
"Inactive","Inactive"
5555
"Information","Information"
5656
"Invoice","Invoice"

i18n/fr_CH.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"Gift Wrap","Papier cadeau"
5151
"Hold Delivery","Suspendre la livraison"
5252
"ID required","Pièce d'identité requise"
53-
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Si vous avez besoin d'aide pour configurer l'extension wallee, consultez la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a> an."
53+
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Si vous avez besoin d'aide pour configurer l'extension wallee, consultez la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a> an."
5454
"Inactive","Inactif"
5555
"Information","Information"
5656
"Invoice","Facture"

i18n/fr_FR.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"Gift Wrap","Papier cadeau"
5151
"Hold Delivery","Suspendre la livraison"
5252
"ID required","Pièce d'identité requise"
53-
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Si vous avez besoin d'aide pour configurer l'extension wallee, consultez la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a> an."
53+
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Si vous avez besoin d'aide pour configurer l'extension wallee, consultez la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a> an."
5454
"Inactive","Inactif"
5555
"Information","Information"
5656
"Invoice","Facture"

i18n/it_CH.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"Gift Wrap","Confezione regalo"
5151
"Hold Delivery","Sospendi la consegna"
5252
"ID required","ID richiesto"
53-
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Se hai bisogno di aiuto per configurare l'estensione wallee, consulta la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentazione</a> an."
53+
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Se hai bisogno di aiuto per configurare l'estensione wallee, consulta la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentazione</a> an."
5454
"Inactive","Inattivo"
5555
"Information","Informazione"
5656
"Invoice","Fattura"

i18n/it_IT.csv

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"Gift Wrap","Confezione regalo"
5151
"Hold Delivery","Sospendi la consegna"
5252
"ID required","ID richiesto"
53-
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Se hai bisogno di aiuto per configurare l'estensione wallee, consulta la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.4/docs/en/documentation.html"" target=""_blank"">documentazione</a> an."
53+
"If you need help setting up the wallee extension, check out the <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentation</a>.","Se hai bisogno di aiuto per configurare l'estensione wallee, consulta la <a href=""https://plugin-documentation.postfinance-checkout.ch/pfpayments/magento-2/2.0.5/docs/en/documentation.html"" target=""_blank"">documentazione</a> an."
5454
"Inactive","Inattivo"
5555
"Information","Informazione"
5656
"Invoice","Fattura"

0 commit comments

Comments
 (0)