def form_group(*args, &block)
options = args.extract_options!
name = args.first
options[:class] = ["form-group", options[:class]].compact.join(' ')
options[:class] << " #{error_class}" if has_error?(name)
options[:class] << " #{feedback_class}" if options[:icon]
content_tag(:div, options.except(:id, :label, :help, :icon, :label_col, :control_col, :layout)) do
label = generate_label(options[:id], name, options[:label], options[:label_col], options[:layout]) if options[:label]
control = capture(&block).to_s
control.concat(generate_help(name, options[:help]).to_s)
control.concat(generate_icon(options[:icon])) if options[:icon]
if get_group_layout(options[:layout]) == :horizontal
control_class = options[:control_col] || control_col
unless options[:label]
control_offset = offset_col(options[:label_col] || @label_col)
control_class = "#{control_class} #{control_offset}"
end
control = content_tag(:div, control, class: control_class)
end
concat(label).concat(control)
end
end