/** * cria campo dentro de um controlgroup * * @param stdClass * @return Div * */ private function _createControlGroupInput(\stdClass $param) { $group = new Div(); $group->addClass('control-group'); $label = new Label($param->label); $label->addClass('control-label'); $input = new Input($param->name, $param->type); if (isset($param->required) && TRUE == $param->required) { $span = new Span(); $span->addClass(Input::T_INPUT_REQUIRED_CLASS)->add(new Text(Input::T_INPUT_REQUIRED_MASK))->title = $this->safeToggle($param, 'requiredTitle', Input::T_INPUT_REQUIRED_TITLE); $label->add($span); $input->addClass(Input::T_INPUT_REQUIRED_CLASS); } $divInput = new Div(); $divInput->addClass('controls')->add($input); // $label->add($divInput); $group->add($label)->add($divInput); return $group; }
/** * Grupo de Radio button ou Checkbox. * * @param string $type * @param stdClass $config * @return Fieldset * */ public function groupRadioAndCheck($type, \stdClass $config) { $fiedset = new Fieldset(isset($config->title) ? $config->title : NULL); $content = NULL; if (!isset($config->content)) { $config->content = array(); } foreach ($config->data as $elm) { $elm = (object) $elm; $elmId = $this->genId($config); $label = new Label($elm->text, $elmId); $radio = new Input($config->name, $type); $radio->value = $elm->value; $radio->id = $elmId; if (isset($elm->checked)) { $radio->checked = 'checked'; } $label->add($radio); $fiedset->add($label); } return $fiedset; }
/** * cria textarea * * @param stdClass $param * @return TextArea * */ public function textarea(\stdClass $param) { $element = $this->_component->textarea($param); if (isset($param->label)) { $controlGroup = Div::factory()->addClass('control-group'); $label = new Label($param->label); $label->addClass('control-label'); if (isset($param->required)) { $element->addClass('required'); $span = Span::factory()->addClass('required'); $span->setContent('*' . ' '); # label->span $label->add($span); } # div.control-group -> label $controlGroup->add($label); $element = $controlGroup->add(Div::factory()->addClass('controls')->add($element)); } return $element; }