12 'text' =>
'textFieldGroup',
13 'hidden' =>
'hiddenField',
14 'password' =>
'passwordFieldGroup',
15 'textarea' =>
'textAreaGroup',
16 'file' =>
'fileFieldGroup',
17 'radio' =>
'radioButtonGroup',
18 'checkbox' =>
'checkBoxGroup',
19 'listbox' =>
'listBoxGroup',
20 'dropdownlist' =>
'dropDownListGroup',
21 'checkboxlist' =>
'checkBoxListGroup',
22 'radiolist' =>
'radioButtonListGroup',
23 'url' =>
'urlFieldGroup',
24 'email' =>
'emailFieldGroup',
25 'number' =>
'numberFieldGroup',
26 'range' =>
'rangeFieldGroup',
27 'date' =>
'dateFieldGroup',
28 'time' =>
'timeFieldGroup',
29 'tel' =>
'telFieldGroup',
30 'search' =>
'searchFieldGroup',
32 'switch' =>
'switchGroup',
33 'datepicker' =>
'datePickerGroup',
34 'daterange' =>
'dateRangeGroup',
35 'timepicker' =>
'timePickerGroup',
36 'datetimepicker' =>
'dateTimePickerGroup',
37 'select2' =>
'select2Group',
38 'redactor' =>
'redactorGroup',
39 'html5editor' =>
'html5EditorGroup',
40 'markdowneditor' =>
'markdownEditorGroup',
41 'ckeditor' =>
'ckEditorGroup',
42 'typeahead' =>
'typeAheadGroup',
43 'maskedtext' =>
'maskedTextFieldGroup',
44 'colorpicker' =>
'colorPickerGroup',
46 'pass' =>
'passFieldGroup'
158 $fields = array(
'widgetOptions, label',
'labelOptions',
'errorOptions',
'hint',
'hintOptions',
'prepend',
'prependOptions',
159 'append',
'appendOptions',
'enableAjaxValidation',
'enableClientValidation');
161 foreach ($fields as $prop) {
162 if (isset($this->$prop)) {
163 $options[$prop] = $this->$prop;
178 $model = $this->getParent()->getModel();
182 if (isset(self::$inputTypes[$this->type])) {
185 return $this->getParent()->getActiveFormWidget()->$method($model, $attribute, $this->attributes, $options);
200 $attributes[
'model'] = $this->getParent()->getModel();
203 return $this->getParent()->getActiveFormWidget()->customFieldGroup(
204 array(array($this->getParent()->getOwner(),
'widget'), array($this->type,
$attributes,
true)),
219 return $this->getParent()->getModel()->isAttributeSafe($this->name);