Passed
Push — feature/eco-2295/eco-2356-main... ( 8009c8...d55ff2 )
by Aleksey
01:22
created

PrepaidFormDataProvider::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * MIT License
5
 * For full license information, please view the LICENSE file that was distributed with this source code.
6
 */
7
8
namespace SprykerEco\Yves\CrefoPay\Form\DataProvider;
9
10
use Generated\Shared\Transfer\CrefoPayPaymentTransfer;
0 ignored issues
show
Bug introduced by
The type Generated\Shared\Transfer\CrefoPayPaymentTransfer was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
11
use Generated\Shared\Transfer\PaymentTransfer;
0 ignored issues
show
Bug introduced by
The type Generated\Shared\Transfer\PaymentTransfer was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
12
use Generated\Shared\Transfer\QuoteTransfer;
0 ignored issues
show
Bug introduced by
The type Generated\Shared\Transfer\QuoteTransfer was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
13
use Spryker\Shared\Kernel\Transfer\AbstractTransfer;
0 ignored issues
show
Bug introduced by
The type Spryker\Shared\Kernel\Transfer\AbstractTransfer was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
14
use Spryker\Yves\StepEngine\Dependency\Form\StepEngineFormDataProviderInterface;
0 ignored issues
show
Bug introduced by
The type Spryker\Yves\StepEngine\...rmDataProviderInterface was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
15
use SprykerEco\Yves\CrefoPay\CrefoPayConfig;
16
use SprykerEco\Yves\CrefoPay\Form\PrepaidSubForm;
17
18
class PrepaidFormDataProvider implements StepEngineFormDataProviderInterface
19
{
20
    /**
21
     * @var \SprykerEco\Yves\CrefoPay\CrefoPayConfig
22
     */
23
    protected $config;
24
25
    /**
26
     * @param \SprykerEco\Yves\CrefoPay\CrefoPayConfig $config
27
     */
28
    public function __construct(CrefoPayConfig $config)
29
    {
30
        $this->config = $config;
31
    }
32
33
    /**
34
     * @param \Generated\Shared\Transfer\QuoteTransfer $quoteTransfer
35
     *
36
     * @return \Generated\Shared\Transfer\QuoteTransfer
37
     */
38
    public function getData(AbstractTransfer $quoteTransfer): QuoteTransfer
39
    {
40
        if ($quoteTransfer->getPayment() === null) {
41
            $quoteTransfer->setPayment(new PaymentTransfer());
42
        }
43
44
        if ($quoteTransfer->getPayment()->getCrefoPayPrepaid() !== null) {
45
            return $quoteTransfer;
46
        }
47
48
        $quoteTransfer->getPayment()->setCrefoPayPrepaid(new CrefoPayPaymentTransfer());
49
50
        return $quoteTransfer;
51
    }
52
53
    /**
54
     * @param \Generated\Shared\Transfer\QuoteTransfer $quoteTransfer
55
     *
56
     * @return array
57
     */
58
    public function getOptions(AbstractTransfer $quoteTransfer): array
59
    {
60
        return [
61
            PrepaidSubForm::CREFO_PAY_SHOP_PUBLIC_KEY => $this->config->getPublicKey(),
62
            PrepaidSubForm::CREFO_PAY_ORDER_ID => $quoteTransfer->getCrefoPayTransaction()->getCrefoPayOrderId(),
63
            PrepaidSubForm::CREFO_PAY_SECURE_FIELDS_API_ENDPOINT => $this->config->getSecureFieldsApiEndpoint(),
64
            PrepaidSubForm::CREFO_PAY_SECURE_FIELDS_PLACEHOLDERS => $this->config->getSecureFieldsPlaceholders(),
65
        ];
66
    }
67
}
68