Sha256: 894a00a946b14602ae7be6f6add8ee51c7fefb6d0ee6ebb3c420bb7c99b8e154

Contents?: true

Size: 939 Bytes

Versions: 14

Compression:

Stored size: 939 Bytes

Contents

$ ->
  # Merge data-filter-context-* into data('filterContext') for relevant CMS attributes.
  # Editors will then be able to pass data('filterContext') to content_browser.open()

  extendDeepData = (data, prefix) ->
    for own key, value of data when key.search(prefix) == 0
      path = key.match(///([A-Z]|^#{prefix})[^A-Z]*///g)
      if path[0] == prefix
        value = {"#{name.toLowerCase()}": value} for name in path[1..].reverse()
        $.extend(true, data, "#{prefix}": value)

  mergeFilterContexts = ->
    cmsFields = $("""
      [data-scrivito-field-type][data-filter-context],
      [data-scrivito-field-type^="html"],
      [data-scrivito-field-type^="link"],
      [data-scrivito-field-type^="reference"]
    """)

    cmsFields.each ->
      cmsField = $(@)
      data = cmsField.data()
      extendDeepData(data, 'filterContext')

  scrivito.on 'content', ->
    mergeFilterContexts() if scrivito.in_editable_view()

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
scrivito_editors-0.70.2 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.71.2 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.71.1 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.70.1 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.71.0 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.71.0.rc2 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.71.0.rc1 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.70.0 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.70.0.rc3 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.70.0.rc2 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.70.0.rc1 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.66.0 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.66.0.rc2 app/assets/javascripts/scrivito_editors/filter_context.js.coffee
scrivito_editors-0.66.0.rc1 app/assets/javascripts/scrivito_editors/filter_context.js.coffee