Completed
Push — master ( 8a3554...20628b )
by Ryan
07:18
created

FormMessages::make()   D

Complexity

Conditions 9
Paths 16

Size

Total Lines 31
Code Lines 14

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 1 Features 0
Metric Value
dl 0
loc 31
rs 4.909
c 1
b 1
f 0
cc 9
eloc 14
nc 16
nop 1
1
<?php namespace Anomaly\Streams\Platform\Ui\Form;
2
3
/**
4
 * Class FormMessages
5
 *
6
 * @link          http://anomaly.is/streams-platform
7
 * @author        AnomalyLabs, Inc. <[email protected]>
8
 * @author        Ryan Thompson <[email protected]>
9
 * @package       Anomaly\Streams\Platform\Ui\Form
10
 */
11
class FormMessages
12
{
13
14
    /**
15
     * Make custom validation messages.
16
     *
17
     * @param FormBuilder $builder
18
     * @return array
19
     */
20
    public function make(FormBuilder $builder)
21
    {
22
        $messages = [];
23
24
        foreach ($builder->getEnabledFormFields() as $field) {
25
26
            foreach ($field->getValidators() as $rule => $validator) {
27
28
                if ($message = array_get($validator, 'message')) {
29
                    $message = trans($message);
30
                }
31
32
                if ($message && str_contains($message, '::')) {
33
                    $message = trans($message);
34
                }
35
36
                $messages[$rule] = $message;
37
            }
38
39
            foreach ($field->getMessages() as $rule => $message) {
40
41
                if ($message && str_contains($message, '::')) {
42
                    $message = trans($message);
43
                }
44
45
                $messages[$rule] = $message;
46
            }
47
        }
48
49
        return $messages;
50
    }
51
}
52