Proyectos de Subversion LeadersLinked - Services

Rev

Rev 283 | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
 
3
declare(strict_types=1);
4
 
5
namespace LeadersLinked\Form\Auth;
6
 
7
use Laminas\InputFilter\InputFilter;
8
/*
9
use Laminas\Db\Adapter\AdapterInterface;
10
use LeadersLinked\Mapper\UserMapper;
11
*/
12
class SignupFilter extends InputFilter
13
{
14
 
15
    public function __construct()
16
    {
17
        $this->add([
18
            'name' => 'first_name',
19
            'required' => true,
20
            'filters' => [
21
                ['name' => \Laminas\Filter\StripTags::class],
22
                ['name' => \Laminas\Filter\StringTrim::class],
23
            ],
24
            'validators' => [
25
                [
26
                    'name' => \Laminas\Validator\StringLength::class,
27
                    'options' => [
28
                        'encoding' => 'UTF-8',
29
                        'max' => 64,
30
                    ],
31
                ],
32
                [
33
                    'name' => \Laminas\Validator\NotEmpty::class,
34
                ],
35
            ],
36
        ]);
37
        $this->add([
38
            'name' => 'last_name',
39
            'required' => true,
40
            'filters' => [
41
                ['name' => \Laminas\Filter\StripTags::class],
42
                ['name' => \Laminas\Filter\StringTrim::class],
43
            ],
44
            'validators' => [
45
                [
46
                    'name' => \Laminas\Validator\StringLength::class,
47
                    'options' => [
48
                        'encoding' => 'UTF-8',
49
                        'max' => 64,
50
                    ],
51
                ],
52
                [
53
                    'name' => \Laminas\Validator\NotEmpty::class,
54
                ],
55
 
56
            ],
57
        ]);
58
 
59
 
60
        $this->add([
61
            'name' => 'email',
62
            'required' => true,
63
            'filters' => [
64
                ['name' => \Laminas\Filter\StripTags::class],
65
                ['name' => \Laminas\Filter\StringTrim::class],
66
            ],
67
            'validators' => [
68
                [
69
                    'name' => \Laminas\Validator\StringLength::class,
70
                    'options' => [
71
                        'encoding' => 'UTF-8',
283 www 72
                        'max' => 250,
1 efrain 73
                    ],
74
                ],
75
                [
76
                    'name' => \Laminas\Validator\NotEmpty::class,
77
                ],
78
                [
79
                    'name' => \Laminas\Validator\EmailAddress::class,
80
                ],
81
                /*[
82
                    'name' => \Laminas\Validator\Db\NoRecordExists::class,
83
                    'options' => [
84
                        'table' => UserMapper::_TABLE,
85
                        'field' => 'email',
86
                        'adapter' => $adapter,
87
                    ],
88
                ],*/
89
 
90
            ],
91
        ]);
92
 
93
 
94
        $this->add([
95
            'name' => 'password',
96
            'required' => true,
97
            'filters' => [
98
                ['name' => \Laminas\Filter\StripTags::class],
99
                ['name' => \Laminas\Filter\StringTrim::class],
100
            ],
101
            'validators' =>[
102
                [
103
                    'name' =>\Laminas\Validator\NotEmpty::class,
104
                ],
105
                [
106
                    'name' => \Laminas\Validator\StringLength::class,
107
                    'options' => [
108
                        'encoding' => 'UTF-8',
109
                        'min' => 6,
283 www 110
                        'max' => 25
1 efrain 111
                    ],
112
                ],
113
                [
114
                    'name' => \LeadersLinked\Validator\PasswordStrengthCheck::class,
115
                ],
116
            ]
117
        ]);
118
 
119
        $this->add([
120
            'name' => 'confirmation',
121
            'required' => true,
122
            'filters' => [
123
                ['name' => \Laminas\Filter\StripTags::class],
124
                ['name' => \Laminas\Filter\StringTrim::class],
125
            ],
126
            'validators' =>[
127
                [
128
                    'name' => \Laminas\Validator\NotEmpty::class,
129
                ],
130
                [
131
                    'name' => \Laminas\Validator\StringLength::class,
132
                    'options' => [
133
                        'encoding' => 'UTF-8',
134
                        'min' => 6,
283 www 135
                        'max' => 25
1 efrain 136
                    ],
137
                ],
138
                [
139
                    'name' => \LeadersLinked\Validator\PasswordStrengthCheck::class,
140
                ],
141
                [
142
                    'name' => \Laminas\Validator\Identical::class,
143
                    'options' => [
144
                        'strict' => 'false',
145
                        'token' =>'password'
146
                     ],
147
                ]
148
            ]
149
        ]);
150
 
385 www 151
        $this->add([
152
            'name' => 'timezone',
153
            'required' => true,
154
            'validators' => [
155
                [
156
                    'name' => \Laminas\Validator\NotEmpty::class
157
                ],
158
            ]
159
        ]);
1 efrain 160
 
161
        $this->add([
162
            'name' => 'terms_and_conditions',
163
            'required' => true,
164
            'filters' => [
165
                ['name' => \Laminas\Filter\StripTags::class],
166
                ['name' => \Laminas\Filter\StringTrim::class],
167
            ],
168
        ]);
169
 
170
        $this->add([
171
            'name' => 'is_adult',
172
            'required' => false,
173
            'filters' => [
174
                ['name' => \Laminas\Filter\StripTags::class],
175
                ['name' => \Laminas\Filter\StringTrim::class],
176
            ],
177
        ]);
178
 
179
    }
180
}