public function testRender() { $element = new Textarea(); $this->assertEquals('<textarea></textarea>', $element->render()); $element->setName('test'); $this->assertEquals('<textarea name="test"></textarea>', $element->render()); $element->setValue('foo'); $this->assertEquals('<textarea name="test">foo</textarea>', $element->render()); $element->setValue('foo<br />bar'); $this->assertEquals('<textarea name="test">foo<br />bar</textarea>', $element->render()); $element->setAttribute('id', 'baz'); $this->assertEquals('<textarea name="test" id="baz">foo<br />bar</textarea>', $element->render()); }
public static function blockOptionInput($name, $options, $value = null, $htmlOptions = []) { $htmlOptions['name'] = $name; switch ($options['type']) { case 'int': $input = new Int($name, $options, $htmlOptions); $input->setValue(is_null($value) ? $options['default'] : $value); return $input->render(); case 'string': $input = new Text($name, $options, $htmlOptions); $input->setValue(is_null($value) ? $options['default'] : $value); return $input->render(); case 'text': $input = new Textarea($name, $options, $htmlOptions); $input->setValue(is_null($value) ? $options['default'] : $value); return $input->render(); case 'select': $select = new Select($name, $options, $htmlOptions); $select->setOption('values', $options['values']->toArray()); $select->setSelected(is_null($value) ? $options['default'] : $value); return $select->render(); case 'select:model': $select = new Select($name, $options, $htmlOptions); $select->setOption('values', $options['model']::findAll()); $select->setSelected(is_null($value) ? $options['default'] : $value); return $select->render(); case 'select:tree': return self::selectTreeByModel($options['model'], is_null($value) ? $options['default'] : $value, $options, $htmlOptions); } }