Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev Autor Línea Nro. Línea
1 www 1
<?php
2
 
3
declare(strict_types=1);
4
 
5
namespace LeadersLinked\Form\MyGroups;
6
 
7
use Laminas\Form\Form;
8
use Laminas\Db\Adapter\AdapterInterface;
9
use Laminas\Log\LoggerInterface;
10
use LeadersLinked\Mapper\CompanySizeMapper;
11
use LeadersLinked\Mapper\IndustryMapper;
12
use LeadersLinked\Mapper\GroupTypeMapper;
13
 
14
class CreateForm extends Form
15
{
16
    /**
17
     *
18
     * @param \Laminas\Db\Adapter\AdapterInterface $adapter
19
     */
20
    public function __construct($adapter)
21
    {
22
        parent::__construct();
23
        $this->setInputFilter(new CreateFilter($adapter));
24
 
25
        $this->add([
26
            'name' => 'name',
27
            'type' => \Laminas\Form\Element\Text::class,
28
             'attributes' => [
29
                'maxlength' 	=> 128,
30
                'id' 			=> 'name',
31
            ]
32
         ]);
33
 
34
        $this->add([
35
            'name' => 'industry_id',
36
            'type' => \Laminas\Form\Element\Select::class,
37
            'options' => [
38
                'value_options' => $this->optionsIndustry($adapter),
39
            ],
40
            'attributes' => [
41
                'id' => 'industry_id',
42
            ]
43
        ]);
44
 
45
        $this->add([
46
            'name' => 'type_id',
47
            'type' => \Laminas\Form\Element\Select::class,
48
            'options' => [
49
                'value_options' => $this->optionsGroupType($adapter),
50
            ],
51
            'attributes' => [
52
                'id' => 'type_id',
53
            ]
54
        ]);
55
 
56
    }
57
 
58
 
59
    /**
60
     *
61
     * @param AdapterInterface $adapter
62
     * @param LoggerInterface $logger
63
     * @return array
64
     */
65
    private function optionsIndustry($adapter)
66
    {
67
        $groupTypeMapper = IndustryMapper::getInstance($adapter);
3454 efrain 68
        $jobCategories = $groupTypeMapper->fetchAllActive();
1 www 69
 
70
        $options = [];
71
        foreach($jobCategories as $groupType)
72
        {
73
            $options[$groupType->uuid] = $groupType->name;
74
        }
75
 
76
        return $options;
77
    }
78
 
79
 
80
    /**
81
     *
82
     * @param AdapterInterface $adapter
83
     * @param LoggerInterface $logger
84
     * @return array
85
     */
86
    private function optionsGroupType($adapter)
87
    {
88
        $groupTypeMapper = GroupTypeMapper::getInstance($adapter);
3454 efrain 89
        $jobCategories = $groupTypeMapper->fetchAllActive();
1 www 90
 
91
        $options = [];
92
        foreach($jobCategories as $groupType)
93
        {
94
            $options[$groupType->uuid] = $groupType->name;
95
        }
96
 
97
        return $options;
98
    }
99
}