Passed
Push — master ( 9bcda0...a90609 )
by
unknown
04:16
created

MangoPayConstants.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
 * Created by Graham Owens ([email protected])
4
 * Company: PartFire Ltd (www.partfire.co.uk)
5
 * Console: Discovery
6
 *
7
 * User:    gra
8
 * Date:    31/12/16
9
 * Time:    00:53
10
 * Project: PartFire MangoPay Bundle
11
 * File:    MangoPayConstants.php
12
 *
13
 **/
14
15
namespace PartFire\MangoPayBundle;
16
17
18
class MangoPayConstants
19
{
20
    const       NATURAL_PERSON_TYPE                 = 'NATURAL';
21
    const       LEGAL_PERSON_TYPE                   = 'LEGAL';
22
23
    //  https://docs.mangopay.com/endpoints/v2.01/users#e259_create-a-legal-user
24
25
    //  May also help https://www.gov.uk/business-legal-structures/overview
26
27
    const       LEGAL_PERSON_TYPE_SOLETRADER        = 'SOLETRADER';
28
    const       LEGAL_PERSON_TYPE_ORGANISATION      = 'ORGANIZATION';
29
    const       LEGAL_PERSON_TYPE_BUSINESS          = 'BUSINESS';
30
31
    //  https://docs.mangopay.com/endpoints/v2.01/users#e253_the-user-object
32
33
    const       KYC_LEVEL_LIGHT                     = 'LIGHT';
34
    const       KYC_LEVEL_REGULAR                   = 'REGULAR';
35
36
    // https://docs.mangopay.com/endpoints/v2/users#e254_the-natural-user-object
37
38
    public static function getIncomeRangeFromId(int $id) : string
39
    {
40
        switch ($id) {
41
            case 1:
42
                $range = "incomes <18K€";
43
                break;
44
            case 2:
45
                $range = "incomes between 18 and 30K€";
46
                break;
47
            case 3:
48
                $range = "incomes between 30 and 50K€";
49
                break;
50
            case 4:
51
                $range = "incomes between 50 and 80K€";
52
                break;
53
            case 5:
54
                $range = "incomes between 80 and 120K€";
55
                break;
56
            case 6:
57
                $range = "incomes>120K€";
58
                break;
59
            default:
60
                $range = "Unknown range";
61
        }
62
63
        return $range;
64
    }
65
66
    public static function isPersonTypeOk($personType)
67
    {
68
        return in_array($personType, self::getPersonTypeArray());
69
    }
70
71
    public static function getPersonTypeArray()
72
    {
73
        return [
74
            self::NATURAL_PERSON_TYPE,
75
            self::LEGAL_PERSON_TYPE
76
        ];
77
    }
78
79
    //  https://docs.mangopay.com/endpoints/v2.01/hooks#e246_the-hook-object
80
    // 16th Jan 2017
81
82
    public static function getAllEventTypes()
83
    {
84
        return [
85
            'PAYIN_NORMAL_CREATED',
86
            'PAYIN_NORMAL_SUCCEEDED',
87
            'PAYIN_NORMAL_FAILED',
88
89
            'PAYOUT_NORMAL_CREATED',
90
            'PAYOUT_NORMAL_SUCCEEDED',
91
            'PAYOUT_NORMAL_FAILED',
92
93
            'TRANSFER_NORMAL_CREATED',
94
            'TRANSFER_NORMAL_SUCCEEDED',
95
            'TRANSFER_NORMAL_FAILED',
96
97
            'PAYIN_REFUND_CREATED',
98
            'PAYIN_REFUND_SUCCEEDED',
99
            'PAYIN_REFUND_FAILED',
100
101
            'PAYOUT_REFUND_CREATED',
102
            'PAYOUT_REFUND_SUCCEEDED',
103
            'PAYOUT_REFUND_FAILED',
104
105
            'TRANSFER_REFUND_CREATED',
106
            'TRANSFER_REFUND_SUCCEEDED',
107
            'TRANSFER_REFUND_FAILED',
108
109
            'PAYIN_REPUDIATION_CREATED',
110
            'PAYIN_REPUDIATION_SUCCEEDED',
111
            'PAYIN_REPUDIATION_FAILED',
112
113
            'KYC_CREATED',
114
            'KYC_SUCCEEDED',
115
            'KYC_FAILED',
116
            'KYC_VALIDATION_ASKED',
117
118
            'DISPUTE_DOCUMENT_CREATED',
119
            'DISPUTE_DOCUMENT_VALIDATION_ASKED',
120
            'DISPUTE_DOCUMENT_SUCCEEDED',
121
            'DISPUTE_DOCUMENT_FAILED',
122
123
            'DISPUTE_CREATED',
124
            'DISPUTE_SUBMITTED',
125
            'DISPUTE_ACTION_REQUIRED',
126
            'DISPUTE_FURTHER_ACTION_REQUIRED',
127
            'DISPUTE_CLOSED',
128
            'DISPUTE_SENT_TO_BANK',
129
130
            'TRANSFER_SETTLEMENT_CREATED',
131
            'TRANSFER_SETTLEMENT_SUCCEEDED',
132
            'TRANSFER_SETTLEMENT_FAILED',
133
134
            'MANDATE_CREATED',
135
            'MANDATED_FAILED',
136
            'MANDATE_ACTIVATED',
137
            'MANDATE_SUBMITTED',
138
139
            'PREAUTHORIZATION_PAYMENT_WAITING',
140
            // (not currently available) 'PREAUTHORIZATION_PAYMENT_EXPIRED',
0 ignored issues
show
Unused Code Comprehensibility introduced by
37% of this comment could be valid code. Did you maybe forget this after debugging?

Sometimes obsolete code just ends up commented out instead of removed. In this case it is better to remove the code once you have checked you do not need it.

The code might also have been commented out for debugging purposes. In this case it is vital that someone uncomments it again or your project may behave in very unexpected ways in production.

This check looks for comments that seem to be mostly valid code and reports them.

Loading history...
141
            'PREAUTHORIZATION_PAYMENT_CANCELED',
142
            'PREAUTHORIZATION_PAYMENT_VALIDATED',
143
144
        ];
145
    }
146
}