HeidelpayConfig::getEncryptionKey()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
eloc 1
c 1
b 0
f 1
dl 0
loc 3
rs 10
cc 1
nc 1
nop 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\Zed\Heidelpay;
9
10
use Spryker\Zed\Kernel\AbstractBundleConfig;
11
use SprykerEco\Shared\Heidelpay\HeidelpayConfig as SharedHeidelpayConfig;
12
use SprykerEco\Shared\Heidelpay\HeidelpayConstants;
13
14
class HeidelpayConfig extends AbstractBundleConfig implements HeidelpayConfigInterface
15
{
16
    public const MERCHANT_TRANSACTION_CONFIG_NOT_FOUND = '';
17
18
    protected const MERCHANT_TRANSACTION_CHANNEL_PAYMENT_TYPE_MAPPING = [
19
        SharedHeidelpayConfig::PAYMENT_METHOD_SOFORT => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_SOFORT,
20
        SharedHeidelpayConfig::PAYMENT_METHOD_CREDIT_CARD_SECURE => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_CC_3D_SECURE,
21
        SharedHeidelpayConfig::PAYMENT_METHOD_IDEAL => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_IDEAL,
22
        SharedHeidelpayConfig::PAYMENT_METHOD_PAYPAL_DEBIT => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_PAYPAL,
23
        SharedHeidelpayConfig::PAYMENT_METHOD_PAYPAL_AUTHORIZE => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_PAYPAL,
24
        SharedHeidelpayConfig::PAYMENT_METHOD_EASY_CREDIT => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_EASY_CREDIT,
25
        SharedHeidelpayConfig::PAYMENT_METHOD_INVOICE_SECURED_B2C => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_INVOICE_SECURED_B2C,
26
        SharedHeidelpayConfig::PAYMENT_METHOD_DIRECT_DEBIT => HeidelpayConstants::CONFIG_HEIDELPAY_TRANSACTION_CHANNEL_DIRECT_DEBIT,
27
    ];
28
29
    /**
30
     * @return string
31
     */
32
    public function getMerchantSecuritySender(): string
33
    {
34
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_SECURITY_SENDER);
35
    }
36
37
    /**
38
     * @return string
39
     */
40
    public function getMerchantUserLogin(): string
41
    {
42
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_USER_LOGIN);
43
    }
44
45
    /**
46
     * @return string
47
     */
48
    public function getMerchantUserPassword(): string
49
    {
50
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_USER_PASSWORD);
51
    }
52
53
    /**
54
     * @return bool
55
     */
56
    public function getMerchantSandboxMode(): bool
57
    {
58
        return (bool)$this->get(HeidelpayConstants::CONFIG_HEIDELPAY_SANDBOX_REQUEST);
59
    }
60
61
    /**
62
     * @return string
63
     */
64
    public function getApplicationSecret(): string
65
    {
66
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_APPLICATION_SECRET);
67
    }
68
69
    /**
70
     * @return string
71
     */
72
    public function getAsyncLanguageCode(): string
73
    {
74
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_LANGUAGE_CODE);
75
    }
76
77
    /**
78
     * @return string
79
     */
80
    public function getZedResponseUrl(): string
81
    {
82
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_PAYMENT_RESPONSE_URL);
83
    }
84
85
    /**
86
     * @return string
87
     */
88
    public function getEasyCreditPaymentResponseUrl(): string
89
    {
90
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_EASYCREDIT_PAYMENT_RESPONSE_URL);
91
    }
92
93
    /**
94
     * @return string
95
     */
96
    public function getYvesCheckoutPaymentFailedUrl(): string
97
    {
98
        return $this->get(HeidelpayConstants::CONFIG_YVES_CHECKOUT_PAYMENT_FAILED_URL);
99
    }
100
101
    /**
102
     * @return string
103
     */
104
    public function getYvesUrlForAsyncIframeResponse(): string
105
    {
106
        return $this->get(HeidelpayConstants::CONFIG_YVES_CHECKOUT_ASYNC_RESPONSE_URL);
107
    }
108
109
    /**
110
     * @return string
111
     */
112
    public function getYvesUrlForAsyncDirectDebitResponse(): string
113
    {
114
        return $this->get(HeidelpayConstants::DIRECT_DEBIT_REGISTRATION_ASYNC_RESPONSE_URL);
115
    }
116
117
    /**
118
     * @return string
119
     */
120
    public function getIdealAuthorizeUrl(): string
121
    {
122
        return $this->get(HeidelpayConstants::CONFIG_YVES_CHECKOUT_IDEAL_AUTHORIZE_URL);
123
    }
124
125
    /**
126
     * @return string
127
     */
128
    public function getCreditCardPaymentFrameOrigin(): string
129
    {
130
        return $this->get(HeidelpayConstants::CONFIG_YVES_URL);
131
    }
132
133
    /**
134
     * @return string
135
     */
136
    public function getCreditCardPaymentFrameCustomCssUrl(): string
137
    {
138
        return $this->get(HeidelpayConstants::CONFIG_YVES_CHECKOUT_PAYMENT_FRAME_CUSTOM_CSS_URL);
139
    }
140
141
    /**
142
     * @return string
143
     */
144
    public function getCreditCardPaymentFramePreventAsyncRedirect(): string
145
    {
146
        return $this->get(HeidelpayConstants::CONFIG_YVES_CHECKOUT_PAYMENT_FRAME_PREVENT_ASYNC_REDIRECT);
147
    }
148
149
    /**
150
     * @return string
151
     */
152
    public function getEncryptionKey(): string
153
    {
154
        return $this->get(HeidelpayConstants::CONFIG_ENCRYPTION_KEY);
155
    }
156
157
    /**
158
     * @return string
159
     */
160
    public function getEasycreditCriteriaRejectedDeliveryAddress(): string
161
    {
162
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_EASYCREDIT_CRITERIA_REJECTED_DELIVERY_ADDRESS);
163
    }
164
165
    /**
166
     * @return float
167
     */
168
    public function getEasycreditCriteriaGrandTotalMoreThan(): float
169
    {
170
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_EASYCREDIT_CRITERIA_GRAND_TOTAL_MORE_THAN);
171
    }
172
173
    /**
174
     * @return float
175
     */
176
    public function getEasycreditCriteriaGrandTotalLessThan(): float
177
    {
178
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_EASYCREDIT_CRITERIA_GRAND_TOTAL_LESS_THAN);
179
    }
180
181
    /**
182
     * @return string[]
183
     */
184
    public function getEasyCreditAllowedCountries(): array
185
    {
186
        return $this->get(HeidelpayConstants::CONFIG_HEIDELPAY_EASYCREDIT_CRITERIA_COUNTRY_ISO_CODES, ['DE']);
187
    }
188
189
    /**
190
     * @return bool
191
     */
192
    public function getIsSplitPaymentEnabledKey(): bool
193
    {
194
        return $this->get(HeidelpayConstants::CONFIG_IS_SPLIT_PAYMENT_ENABLED_KEY, false);
195
    }
196
197
    /**
198
     * @param string $paymentType
199
     *
200
     * @return string
201
     */
202
    public function getMerchantTransactionChannelByPaymentType($paymentType): string
203
    {
204
        if (array_key_exists($paymentType, static::MERCHANT_TRANSACTION_CHANNEL_PAYMENT_TYPE_MAPPING)) {
205
            return $this->get(static::MERCHANT_TRANSACTION_CHANNEL_PAYMENT_TYPE_MAPPING[$paymentType]);
206
        }
207
208
        return static::MERCHANT_TRANSACTION_CONFIG_NOT_FOUND;
209
    }
210
}
211