class Card::Action::ActionRenderer
Attributes
action[R]
header[R]
Public Class Methods
new(format, action, header=true, action_view=:summary, hide_diff=false)
click to toggle source
# File lib/card/action/action_renderer.rb, line 6 def initialize format, action, header=true, action_view=:summary, hide_diff=false @format = format @action = action @header = header @action_view = action_view @hide_diff = hide_diff end
Public Instance Methods
action_panel()
click to toggle source
# File lib/card/action/action_renderer.rb, line 42 def action_panel bs_panel do if header heading do div type_diff, class: "float-right" div name_diff end end body do content_diff end end end
content_diff()
click to toggle source
# File lib/card/action/action_renderer.rb, line 68 def content_diff return @action.raw_view if @action.action_type == :delete @format.subformat(@action.card).render_action_summary action_id: @action.id end
method_missing(method_name, *args, &block)
click to toggle source
# File lib/card/action/action_renderer.rb, line 15 def method_missing method_name, *args, &block if block_given? @format.send(method_name, *args, &block) else @format.send(method_name, *args) end end
name_changes()
click to toggle source
# File lib/card/action/action_renderer.rb, line 80 def name_changes return old_name unless @action.new_name? @hide_diff ? new_name : Card::Content::Diff.complete(old_name, new_name) end
name_diff()
click to toggle source
# File lib/card/action/action_renderer.rb, line 56 def name_diff if @action.card == @format.card name_changes else link_to_view( :related, name_changes, path: { slot: { items: { view: "history", nest_name: @action.card.name } } } # "data-slot-selector" => ".card-slot.history-view" ) end end
new_name()
click to toggle source
# File lib/card/action/action_renderer.rb, line 90 def new_name title_in_context @action.value(:name) end
old_name()
click to toggle source
# File lib/card/action/action_renderer.rb, line 86 def old_name (name = @action.previous_value :name) && title_in_context(name) end
render()
click to toggle source
# File lib/card/action/action_renderer.rb, line 27 def render classes = @format.classy("action-list") bs_layout container: true, fluid: true do row do html <<-HTML <ul class="#{classes} w-100"> <li class="#{action.action_type}"> #{action_panel} </li> </ul> HTML end end end
respond_to_missing?(method_name, _include_private=false)
click to toggle source
# File lib/card/action/action_renderer.rb, line 23 def respond_to_missing? method_name, _include_private=false @format.respond_to? method_name end
type_diff()
click to toggle source
# File lib/card/action/action_renderer.rb, line 74 def type_diff return "" unless @action.new_type? @hide_diff ? @action.value(:cardtype) : @action.cardtype_diff end