public function addInputTag($tag_type, $params = array()) { if (!isset($params['name']) && isset($params['id'])) { $params['name'] = $this->form_name . "[{$params['id']}]"; } switch ($tag_type) { case 'button': case 'file': case 'image': case 'password': case 'text': case 'reset': case 'hidden': case 'submit': if (!isset($params['type'])) { $params['type'] = $tag_type; } $this->xform .= xHtml::xhtmlTag('input', $params, false); // 'false' means - closed XHtml tag break; case 'radio': $name = $params['name']; $checked = !empty($params['checked']) ? $params['checked'] : ''; unset($params['name'], $params['checked']); $this->xform .= xHtml::radioButtTag($name, $params, $checked); break; case 'checkbox': $name = $params['name']; $checked = !empty($params['value']) ? $params['value'] : ''; unset($params['name']); $this->xform .= xHtml::checkboxTag($name, $params, $checked); break; case 'textarea': $value = $params['value']; unset($params['value']); $this->xform .= xHtml::htmlTag('textarea', $params, true); // 'true' means - opening tag if (!empty($value)) { $this->xform .= $value; // inserting text into textarea } $this->xform .= xHtml::htmlTag('textarea', null, false); // 'false' means - closing html tag break; case 'select': $options = $params['options']; $selected = $params['selected']; unset($params['options']); unset($params['selected']); $this->xform .= xHtml::selectTag($options, $params, $selected); break; } }