- options = {wrapper_html: {class: "col-md-#{field.size}"}}
- current_type = presenter.field_type(field.name)
- options[:as] = :admin_enum if current_type == :enum
- options[:as] = :admin_relationship_select if current_type == :relation
- options[:as] = :admin_date if current_type.to_s =~ /^date(time)?$/
- options[:as] = field.as if field.as.present?
- options[:input_html] = {}
- options[:input_html][:class] = "field-#{field.name}"
- options[:input_html][:data] = {}
- options[:input_html][:data][:presenter_name] = presenter.presenter_name
- options[:input_html][:data][:add_empty_option] = field.add_empty_option
- if options[:as].is_a? Hash
- options[:input_html][:data][:carnival_options] = options[:as].first[1]
- options[:as] = options[:as].first[0]
- if field.depends_on.present?
- options[:input_html][:data][:depends_on] = field.depends_on
:javascript
$("select.field-#{field.depends_on}").change(function(event, element){
var field = $(this).attr("name").match( /\[([A-Za-z_])*\]/g)[0].replace("[", "").replace("]", "");
var dependentField = $($("select.field-#{field.name}").first()).attr("name").match( /\[([A-Za-z_])*\]/g)[0].replace("[", "").replace("]", "");
updateDependentFormSelectHtml("#{presenter.load_dependent_select_options_path}", "#{presenter.class.name}", $(this).val(), field, dependentField);
});
- options[:label] = translate_field(presenter, field)
- if options[:as] == :partial
= render field.partial_name, f: f, record: f.object
- else
= f.input field.name, options