/** * @inheritdoc */ public function setValue($value) { TypeChecker::getInstance()->check($value, [SimpleTypes::STRING, SimpleTypes::ARR, SimpleTypes::NULL], 'value')->throwTypeErrorIfNotValid(); if (is_string($value)) { parent::setValue([$value]); } elseif (is_array($value)) { parent::setValue($value); } else { parent::setValue([]); } return $this; }
public function renderOptionAttributes(Field\ListField $field) { $renderer = new AttributeRenderer(); $asArray = ''; $type = ''; if ($field instanceof Field\CheckBoxSet) { $type = 'checkbox'; $asArray = '[]'; } elseif ($field instanceof Field\RadioSet) { $type = 'radio'; } $type = new KeyValuePair('type', $type); $name = new KeyValuePair('name', $field->getFullName() . $asArray); $attrs = [$renderer->render($type), $renderer->render($name)]; foreach ($field->attributes() as $attr) { $attrs[] = $renderer->render($attr); } return implode(' ', $attrs); }