public static function createActiveInput($type, $model, $attribute, $htmlOptions = array(), $data = array())
{
switch ($type) {
case self::INPUT_TYPE_TEXT:
return self::activeTextField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_PASSWORD:
return self::activePasswordField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_URL:
return self::activeUrlField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_EMAIL:
return self::activeEmailField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_NUMBER:
return self::activeNumberField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_RANGE:
return self::activeRangeField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_DATE:
return self::activeDateField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_TEXTAREA:
return self::activeTextArea($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_FILE:
return self::activeFileField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_RADIOBUTTON:
return self::activeRadioButton($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_CHECKBOX:
return self::activeCheckBox($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_DROPDOWNLIST:
return self::activeDropDownList($model, $attribute, $data, $htmlOptions);
case self::INPUT_TYPE_LISTBOX:
return self::activeListBox($model, $attribute, $data, $htmlOptions);
case self::INPUT_TYPE_CHECKBOXLIST:
return self::activeCheckBoxList($model, $attribute, $data, $htmlOptions);
case self::INPUT_TYPE_INLINECHECKBOXLIST:
return self::activeInlineCheckBoxList($model, $attribute, $data, $htmlOptions);
case self::INPUT_TYPE_RADIOBUTTONLIST:
return self::activeRadioButtonList($model, $attribute, $data, $htmlOptions);
case self::INPUT_TYPE_INLINERADIOBUTTONLIST:
return self::activeInlineRadioButtonList($model, $attribute, $data, $htmlOptions);
case self::INPUT_TYPE_UNEDITABLE:
return self::activeUneditableField($model, $attribute, $htmlOptions);
case self::INPUT_TYPE_SEARCH:
return self::activeSearchQueryField($model, $attribute, $htmlOptions);
default:
throw new CException('Invalid input type "' . $type . '".');
}
}