Proyectos de Subversion LeadersLinked - Backend

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
16770 efrain 1
<?php
2
 
3
declare(strict_types=1);
4
 
5
namespace LeadersLinked\Form\Organization;
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\CompetencyTypeMapper;
13
use LeadersLinked\Mapper\CompanyMicrolearningTopicMapper;
14
use LeadersLinked\Model\JobDescription;
15
use LeadersLinked\Mapper\JobDescriptionMapper;
16
use LeadersLinked\Mapper\CompanyUserMapper;
17
use LeadersLinked\Mapper\UserMapper;
18
 
19
class DatatableForm extends Form
20
{
21
 
22
    /**
23
     *
24
     * @param AdapterInterface $adapter
25
     * @param int $company_id
26
     */
27
    public function __construct($adapter, $company_id)
28
    {
29
        parent::__construct();
30
        $this->setInputFilter(new DatatableFilter($adapter));
31
 
32
        $this->add([
33
            'name' => 'job_description_id',
34
            'type' => \Laminas\Form\Element\Select::class,
35
            'attributes' => [
36
                'id' => 'job_description_id',
37
            ],
38
            'options' => [
39
                'value_options' => $this-> getJobDescriptionSelectOptions($adapter, $company_id)
40
            ]
41
        ]);
42
 
43
 
44
 
45
 
46
    }
47
 
48
    /**
49
     *
50
     * @param AdapterInterface $adapter
51
     * @param int $company_id
52
     * @return array
53
     */
54
    private function getJobDescriptionSelectOptions($adapter, $company_id)
55
    {
56
        $options = [];
57
 
58
        $mapper = JobDescriptionMapper::getInstance($adapter);
59
        $records = $mapper->fetchAllActiveByCompanyId($company_id);
60
 
61
        foreach($records as $record)
62
        {
63
            $options[$record->uuid] = $record->name;
64
        }
65
        return $options;
66
    }
67
 
68
 
69
}