Proyectos de Subversion LeadersLinked - Backend

Rev

Ir a la última revisión | | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
17002 efrain 1
<?php
2
 
3
declare(strict_types=1);
4
 
5
namespace LeadersLinked\Form\Company;
6
 
7
use Laminas\Form\Form;
8
use Laminas\Db\Adapter\AdapterInterface;
9
use LeadersLinked\Mapper\LanguageMapper;
10
 
11
class JobLanguageForm extends Form
12
{
13
 
14
    /**
15
     *
16
     * @param AdapterInterface $adapter
17
     */
18
    public function __construct($adapter)
19
    {
20
        parent::__construct();
21
        $this->setInputFilter(new JobLanguageFilter($adapter));
22
 
23
        $this->add([
24
            'name' => 'languages',
25
            'type' => \Laminas\Form\Element\Select::class,
26
            'attributes' => [
27
                'multiple' 	=> 'yes',
28
                'id' => 'languages'
29
            ],
30
            'options' => [
31
                'disable_inarray_validator' => true,
32
                'value_options' => $this->getSelectOptions($adapter)
33
            ]
34
        ]);
35
 
36
    }
37
 
38
    /**
39
     *
40
     * @param AdapterInterface $adapter
41
     */
42
    private function getSelectOptions($adapter)
43
    {
44
        $mapper =  LanguageMapper::getInstance($adapter);
45
        $records = $mapper->fetchAllActive();
46
 
47
        $items = [];
48
        foreach($records as $record)
49
        {
50
            $items[$record->id] = $record->name;
51
        }
52
 
53
        return $items;
54
    }
55
}