aboutsummaryrefslogtreecommitdiffstats
path: root/app/assets/javascripts/forms.coffee
blob: 426f3e6eec734dc7a79a381e59f082c8dda12d0a (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
30
31
32
33
34
35
36
37
38
39
@togglableFilter = ->
  $('.form-filter').on 'click', '.form-group.togglable', (e)->
    if $(e.target).hasClass('togglable') || $(e.target).parent().hasClass('togglable')
      $(this).siblings().removeClass 'open'
      $(this).toggleClass 'open'

@switchInput = ->
  $('.form-group.has_switch').each ->
    labelCont = $(this).find('.switch-label')

    if labelCont.text() == ''
      labelCont.text(labelCont.data('uncheckedvalue'))

    $(this).on 'click', "input[type='checkbox']", ->
      if labelCont.text() == labelCont.data('checkedvalue')
        labelCont.text(labelCont.data('uncheckedvalue'))
      else
        labelCont.text(labelCont.data('checkedvalue'))

@submitMover = ->
  if $('.page-action').children('.formSubmitr').length > 0
    $('.page-action').children('.formSubmitr').remove()

  $('.formSubmitr').appendTo('.page-action')

  # IE fix
  isIE = false || !!document.documentMode
  isEdge = !isIE && !!window.StyleMedia

  if isIE || isEdge
    $('.formSubmitr').off()
    $(document).on 'click', '.formSubmitr', (e)->
      e.preventDefault()
      target = $(this).attr('form')
      $('#' + target).submit()

$(document).on 'ready page:load', togglableFilter
$(document).on 'ready page:load', submitMover
$(document).on 'ready page:load', switchInput