icingaweb2-module-director/application/forms/AssignListSubForm.php

67 lines
1.6 KiB
PHP

<?php
namespace Icinga\Module\Director\Forms;
use Icinga\Module\Director\Objects\IcingaObject;
use Icinga\Module\Director\Web\Form\QuickSubForm;
class AssignListSubForm extends QuickSubForm
{
protected $object;
public function setObject($object)
{
$this->object = $object;
return $this;
}
public function setValue($value)
{
var_dump($value);
}
public function setup()
{
$idx = -1;
if ($this->object && $this->object->isApplyRule()) {
// $this->setElementValue('assignlist', $object->assignments()->getFormValues());
foreach ($this->object->assignments()->getFormValues() as $values) {
$idx++;
$sub = new AssignmentSubForm();
$sub->setup();
$sub->populate($values);
$this->addSubForm($sub, $idx);
}
}
$idx++;
$sub = new AssignmentSubForm();
$sub->setup();
$this->addSubForm($sub, $idx);
$this->addElement('submit', 'addmore', array(
'label' => $this->translate('Add more'),
'class' => 'link-button icon-plus',
'ignore' => true,
));
$this->getElement('addmore')->setDecorators(array('ViewHelper'));
}
public function loadDefaultDecorators()
{
$this->setDecorators(array(
'FormElements',
array('HtmlTag', array(
'tag' => 'ul',
'class' => 'assign-rule'
)),
array('Fieldset', array(
'legend' => 'Assignment rules',
)),
));
return $this;
}
}