Proyectos de Subversion LeadersLinked - Backend

Rev

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

Rev Autor Línea Nro. Línea
16785 efrain 1
<?php
2
declare(strict_types=1);
3
 
4
namespace LeadersLinked\Form\Planning;
5
 
6
use Laminas\Form\Form;
7
use Laminas\Db\Adapter\AdapterInterface;
8
use LeadersLinked\Mapper\PlanningPeriodMapper;
9
 
10
class PlanningObjectiveHeaderForm extends Form
11
{
12
 
13
    /**
14
     *
15
     * @param AdapterInterface $dbAdapter
16
     * @param int $company_id
17
     */
18
    public function __construct($dbAdapter, $company_id)
19
    {
20
        parent::__construct();
21
 
22
        $this->setInputFilter(new PlanningObjectiveHeaderFilter());
23
 
24
        $this->add([
25
            'name' => 'period_id',
16802 efrain 26
            'type' => \Laminas\Form\Element\Select::class,
16785 efrain 27
            'attributes' => [
28
                'id' 			=> 'period_id',
29
            ],
30
            'options' => [
31
                'value_options' => $this->plannigPeriod($dbAdapter, $company_id)
32
            ]
33
        ]);
34
 
35
 
36
 
37
 
38
    }
39
 
40
    /**
41
     *
42
     * @param AdapterInterface $dbAdapter
43
     * @param int $company_id
44
     * return array
45
     */
46
    private function plannigPeriod($dbAdapter, $company_id)
47
    {
48
        $items = [];
49
 
50
        $planningPeriodMapper = PlanningPeriodMapper::getInstance($dbAdapter);
51
        $records = $planningPeriodMapper->fetchAllActiveByCompany($company_id);
52
        foreach($records as $record)
53
        {
54
            $items[ $record->uuid ] = $record->title;
55
        }
56
 
57
 
58
        return $items;
59
    }
60
 
61
}