Sha256: 5944e235175524a6e37d4385fd13b9884711f5fb68b622758d503a6de496808b
Contents?: true
Size: 1 KB
Versions: 1
Compression:
Stored size: 1 KB
Contents
require "cable_ready" module Cubism class Broadcaster include CableReady::Broadcaster include CableReady::StreamIdentifier attr_reader :resource def initialize(resource:) @resource = resource end def broadcast resource.cubicle_element_ids.to_a.each do |element_id| block_container = Cubism.block_store[element_id] next if block_container.blank? present_users = resource.present_users_for_element_id_and_scope(element_id, block_container.scope) block_source = block_container.block_source html = ApplicationController.render(inline: block_source.source, locals: {"#{block_source.variable_name}": present_users}) selector = "cubicle-element#cubicle-#{element_id}[identifier='#{signed_stream_identifier(resource.to_global_id.to_s)}'][scope='#{block_container.scope}']" cable_ready[element_id].inner_html( selector: selector, html: html ) end cable_ready.broadcast end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cubism-0.1.0.pre12 | lib/cubism/broadcaster.rb~ |