protected static function renderInput($attribute, $settings = [])
{
$for = '';
$input = static::renderRawInput($attribute, $for, $settings);
$label = ArrayHelper::getValue($settings, 'label', false);
$labelOptions = ArrayHelper::getValue($settings, 'labelOptions', []);
Html::addCssClass($labelOptions, 'control-label');
$label = $label !== false && !empty($for) ? Html::label($label, $for, $labelOptions) . "\n" : '';
$container = ArrayHelper::getValue($settings, 'container', []);
$prepend = ArrayHelper::getValue($settings, 'prepend', '');
$append = ArrayHelper::getValue($settings, 'append', '');
$inputContainer = ArrayHelper::getValue($settings, 'inputContainer', []);
if (!empty($inputContainer)) {
$input = Html::tag('div', $input, $inputContainer);
}
$out = $prepend . "\n" . $label . $input . "\n" . $append;
return empty($container) ? $out : Html::tag('div', $out, $container);
}