Proyectos de Subversion LeadersLinked - Backend

Rev

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

Rev Autor Línea Nro. Línea
17002 efrain 1
<?php
2
 
3
declare(strict_types=1);
4
 
17020 efrain 5
namespace LeadersLinked\Form\Job;
17002 efrain 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\JobCategoryMapper;
13
use LeadersLinked\Model\Job;
14
 
15
class JobCategoryForm extends Form
16
{
17
    /**
18
     *
19
     * @param AdapterInterface $adapter
20
     */
21
    public function __construct($adapter)
22
    {
23
        parent::__construct();
24
        $this->setInputFilter(new JobCategoryFilter($adapter));
25
 
26
        $this->add([
27
            'name' => 'job_category_id',
28
            'type' => \Laminas\Form\Element\Select::class,
29
            'options' => [
30
                'value_options' => $this->optionsJobCategory($adapter),
31
            ],
32
            'attributes' => [
33
                'id' => 'job_category_id',
34
            ]
35
        ]);
36
 
37
 
38
    }
39
 
40
    /**
41
     *
42
     * @param AdapterInterface $adapter
43
     * @param LoggerInterface $logger
44
     * @return array
45
     */
46
    private function optionsJobCategory($adapter)
47
    {
48
        $jobCategoryMapper = JobCategoryMapper::getInstance($adapter);
49
        $jobCategories = $jobCategoryMapper->fetchAllActive();
50
 
51
        $options = [];
52
        foreach($jobCategories as $jobCategory)
53
        {
54
            $options[$jobCategory->uuid] = $jobCategory->name;
55
        }
56
 
57
        return $options;
58
    }
59
 
60
 
61
}