Completed
Push — master ( 5c3ab9...4f1dd0 )
by Joachim
04:04
created

src/Callback/Form.php (1 issue)

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
3
namespace Loevgaard\AltaPay\Callback;
4
5
use Loevgaard\AltaPay;
6
use Money\Money;
7
8
class Form extends Callback
9
{
10
    /**
11
     * @var string
12
     */
13
    protected $shopOrderId;
14
15
    /**
16
     * @var Money
17
     */
18
    protected $amount;
19
20
    /**
21
     * ISO 4217 currency code
22
     *
23
     * @var int
24
     */
25
    protected $currency;
26
27
    /**
28
     * ISO 639 alpha 2 language code
29
     *
30
     * @var string
31
     */
32
    protected $language;
33
34
    /**
35
     * @var boolean
36
     */
37
    protected $embeddedWindow;
38
39 6
    public function init()
40
    {
41 6
        $currency = (int)$this->body['currency'];
42 6
        $alphaCurrency = AltaPay\alphaCurrencyFromNumeric($currency);
43
44 6
        $this->shopOrderId = $this->body['shop_orderid'];
45 6
        $this->amount = AltaPay\createMoneyFromFloat($alphaCurrency, (float)$this->body['amount']);
46 6
        $this->currency = $currency;
47 6
        $this->language = $this->body['language'];
48 6
        $this->embeddedWindow = (int)($this->body['embedded_window'] === 1);
0 ignored issues
show
Documentation Bug introduced by
The property $embeddedWindow was declared of type boolean, but (int) ($this->body['embedded_window'] === 1) is of type integer. Maybe add a type cast?

This check looks for assignments to scalar types that may be of the wrong type.

To ensure the code behaves as expected, it may be a good idea to add an explicit type cast.

$answer = 42;

$correct = false;

$correct = (bool) $answer;
Loading history...
49 6
    }
50
51
    /**
52
     * @return string
53
     */
54 3
    public function getShopOrderId(): string
55
    {
56 3
        return $this->shopOrderId;
57
    }
58
59
    /**
60
     * @return Money
61
     */
62 3
    public function getAmount(): Money
63
    {
64 3
        return $this->amount;
65
    }
66
67
    /**
68
     * @return int
69
     */
70 3
    public function getCurrency(): int
71
    {
72 3
        return $this->currency;
73
    }
74
75
    /**
76
     * @return string
77
     */
78 3
    public function getLanguage(): string
79
    {
80 3
        return $this->language;
81
    }
82
83
    /**
84
     * @return bool
85
     */
86 3
    public function isEmbeddedWindow(): bool
87
    {
88 3
        return $this->embeddedWindow;
89
    }
90
}
91