summaryrefslogtreecommitdiff
path: root/app/views/shared/_field.html.haml
blob: 0c8d90d92f5fef6a9081b327ef5567218b8ad10f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
- name = field[:name]
- title = field[:title] || name.humanize
- value = @service.send(name)
- type = field[:type]
- placeholder = field[:placeholder]
- required = field[:required]
- choices = field[:choices]
- default_choice = field[:default_choice]
- help = field[:help]
- disabled = disable_fields_service?(@service)

.form-group
  - if type == "password" && value.present?
    = form.label name, "Enter new #{title.downcase}", class: "col-form-label"
  - else
    = form.label name, title, class: "col-form-label"
  .col-sm-10
    - if type == 'text'
      = form.text_field name, class: "form-control", placeholder: placeholder, required: required, disabled: disabled
    - elsif type == 'textarea'
      = form.text_area name, rows: 5, class: "form-control", placeholder: placeholder, required: required, disabled: disabled
    - elsif type == 'checkbox'
      = form.check_box name, disabled: disabled
    - elsif type == 'select'
      = form.select name, options_for_select(choices, value ? value : default_choice), {}, { class: "form-control", disabled: disabled}
    - elsif type == 'password'
      = form.password_field name, autocomplete: "new-password", class: "form-control", required: value.blank? && required, disabled: disabled
    - if help
      %span.form-text.text-muted= help