Sha256: 63fab63aa933fa7ec75a2b4e7ba52f1593811eeb44c7d7c061b4360991cf3ee1

Contents?: true

Size: 1.51 KB

Versions: 2

Compression:

Stored size: 1.51 KB

Contents

<%#
    name: headmin/fields/select_tags
    accepts block: no
    parameters:
      form: Form object
      required: Define if the attribute is required or not
      attribute: (string) Name of the attribute of the form model
      label: (bool) Label will not be displayed if value is false
      collection: (array) List of options to select from
%>

<% label = local_assigns.has_key?(:label) ? label : true %>
<% required = local_assigns.has_key?(:required) ? required : false %>
<% disabled = local_assigns.has_key?(:disabled) ? disabled  : false  %>
<% multiple = local_assigns.has_key?(:multiple) ? multiple  : true  %>
<% include_blank = local_assigns.has_key?(:include_blank) || required ? t('.blank')  : nil %>
<% data_attributes = local_assigns.select { |key, value| key.to_s.include?("data-") } %>
<% options = options_for_select(collection, form.object.send(attribute)) %>
<% select_config = { include_blank: include_blank, disabled: disabled } %>
<% html_attributes = {
  multiple: multiple,
  class: "select-tags form-select #{form_field_validation_class(form, attribute)}",
  required: required,
  'aria-describedby': form_field_validation_id(form, attribute)
}.merge(data_attributes) %>

<div class="<%= ('mb-3' if label) %>">
  <%= render 'headmin/forms/fields/label', form: form, attribute: attribute, required: required if label %>
  <%= form.select attribute, options, select_config, html_attributes %>
  <%= yield if block_given? %>
  <%= render 'headmin/forms/fields/validation', form: form, attribute: attribute %>
</div>

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
headmin-0.1.2 app/views/headmin/forms/fields/_select_tags.html.erb
headmin-0.1.1 app/views/headmin/forms/fields/_select_tags.html.erb