Module: ForeignOffice::ForeignOfficeHelper
- Defined in:
- lib/foreign_office/foreign_office_helper.rb
Instance Method Summary collapse
- #listener_attrs(resource, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil, presence: false) ⇒ Object
- #listener_attrs_raw(channel, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil) ⇒ Object
- #listener_hash(resource, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil, presence: false) ⇒ Object
- #listener_hash_raw(channel, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil) ⇒ Object
- #progress_indicator_attrs(resource, key) ⇒ Object
Instance Method Details
#listener_attrs(resource, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil, presence: false) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/foreign_office/foreign_office_helper.rb', line 3 def listener_attrs(resource, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil, presence: false ) presence_prefix = presence ? 'presence-' : '' channel = "#{presence_prefix}#{resource.class.name}#{resource.id}" channel += "@#{browser_tab_id}" if browser_tab_id data_attrs = "data-listener=true data-channel=#{channel}" if delete data_attrs += " data-delete-key=#{key}" else data_attrs += " data-key=#{key}" end data_attrs += " data-exclude-value=#{exclude_value}" if exclude_value data_attrs += " data-reveal-hide=true" if reveal_hide data_attrs += " data-endpoint=#{endpoint}" if endpoint data_attrs += " data-trigger-on-message=true" if trigger data_attrs += " data-download=true" if download data_attrs += " data-href-target=true" if href_target data_attrs += " data-mask-me=#{mask_me}" if mask_me data_attrs += " data-create-modal=#{create_modal}" if create_modal data_attrs end |
#listener_attrs_raw(channel, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/foreign_office/foreign_office_helper.rb', line 31 def listener_attrs_raw(channel, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil) channel += "@#{browser_tab_id}" if browser_tab_id data_attrs = "data-listener=true data-channel=#{channel}" if delete data_attrs += " data-delete-key=#{key}" else data_attrs += " data-key=#{key}" end data_attrs += " data-reveal-hide=true" if reveal_hide data_attrs += " data-endpoint=#{exclude_value}" if exclude_value data_attrs += " data-endpoint=#{endpoint}" if endpoint data_attrs += " data-download=true" if download data_attrs += " data-trigger-on-message=true" if trigger data_attrs += " data-href-target=true" if href_target data_attrs += " data-mask-me=#{mask_me}" if mask_me data_attrs += " data-create-modal=#{create_modal}" if create_modal data_attrs end |
#listener_hash(resource, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil, presence: false) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/foreign_office/foreign_office_helper.rb', line 52 def listener_hash(resource, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil, presence: false) presence_prefix = presence ? 'presence-' : '' channel = "#{presence_prefix}#{resource.class.name}#{resource.id}" channel += "@#{browser_tab_id}" if browser_tab_id hash = {listener: true, channel: channel} if delete hash[:delete_key] = key else hash[:key] = key end hash[:reveal_hide] = true if reveal_hide hash[:endpoint] = endpoint if endpoint hash[:exclude_value] = exclude_value if exclude_value hash[:download] = true if download hash[:trigger_on_message] = true if trigger hash[:href_target] = true if href_target hash[:create_modal] = create_modal if create_modal hash[:mask_me] = mask_me if mask_me hash end |
#listener_hash_raw(channel, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil) ⇒ Object
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/foreign_office/foreign_office_helper.rb', line 75 def listener_hash_raw(channel, key, reveal_hide: false, endpoint: nil, download: nil, trigger: nil, delete: nil, href_target: nil, create_modal: nil, mask_me: nil, exclude_value: nil, browser_tab_id: nil) channel += "@#{browser_tab_id}" if browser_tab_id hash = {listener: true, channel: channel} if delete hash[:delete_key] = key else hash[:key] = key end hash[:reveal_hide] = true if reveal_hide hash[:endpoint] = endpoint if endpoint hash[:exclude_value] = exclude_value if exclude_value hash[:download] = true if download hash[:trigger_on_message] = true if trigger hash[:href_target] = true if href_target hash[:create_modal] = create_modal if create_modal hash[:mask_me] = mask_me if mask_me hash end |
#progress_indicator_attrs(resource, key) ⇒ Object
26 27 28 29 |
# File 'lib/foreign_office/foreign_office_helper.rb', line 26 def progress_indicator_attrs(resource, key) data_attrs = "data-foreign-office-progress-indicator=true data-channel=#{resource.class.name}#{resource.id}" data_attrs += " data-key=#{key}" end |