Rev 17089 | Rev 17091 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
<?phpdeclare(strict_types=1);namespace LeadersLinked\Form\Microlearning;use Laminas\Form\Form;use Laminas\Db\Adapter\AdapterInterface;use Laminas\Log\LoggerInterface;use LeadersLinked\Model\Topic;use Laminas\Form\Element;use LeadersLinked\Mapper\MicrolearningCapsuleMapper;class TopicForm extends Form{public function __construct($adapter, $company_id){parent::__construct();$this->setInputFilter(new TopicFilter($adapter));$this->add(['name' => 'capsules_uuid','type' => \Laminas\Form\Element\Select::class,'attributes' => ['id' => 'capsules_uuid','multiple' => 'yes',],'options' => ['value_options' => $this->getSelectOptions($adapter, $company_id)]]);$this->add(['name' => 'title','type' => \Laminas\Form\Element\Text::class,'attributes' => ['maxlength' => 128,'id' => 'title',]]);$this->add(['name' => 'description','type' => \Laminas\Form\Element\Textarea::class,'attributes' => ['id' => 'description',]]);$this->add(['name' => 'status','type' => \Laminas\Form\Element\Checkbox::class,'attributes' => ['id' => 'status',],'options' => ['use_hidden_element' => false,'unchecked_value' => \LeadersLinked\Model\Topic::STATUS_INACTIVE,'checked_value'=> \LeadersLinked\Model\Topic::STATUS_ACTIVE,]]);}private function getSelectOptions($adapter, $company_id){$options = [];$mapper = MicrolearningCapsuleMapper::getInstance($adapter);$records = $mapper->fetchAllActiveByCompanyId($company_id);foreach($records as $record){$options[$record->uuid] = $record->name;}return $options;}}