Class: Guide::NavigationView

Inherits:
Object
  • Object
show all
Defined in:
app/view_models/guide/navigation_view.rb

Instance Method Summary collapse

Constructor Details

#initialize(bouncer:, node:, active_node:) ⇒ NavigationView

Returns a new instance of NavigationView.



4
5
6
7
8
# File 'app/view_models/guide/navigation_view.rb', line 4

def initialize(bouncer:, node:, active_node:)
  @bouncer = bouncer
  @node = node
  @active_node = active_node
end

Instance Method Details

#active?Boolean

Returns:

  • (Boolean)


22
23
24
# File 'app/view_models/guide/navigation_view.rb', line 22

def active?
  @node == @active_node
end

#child_node_viewsObject



10
11
12
13
14
15
16
# File 'app/view_models/guide/navigation_view.rb', line 10

def child_node_views
  @node.child_nodes.map do |child_node_id, child_node|
    self.class.new(bouncer: @bouncer,
                   node: child_node,
                   active_node: @active_node)
  end
end

#visible_to_user?Boolean

Returns:

  • (Boolean)


18
19
20
# File 'app/view_models/guide/navigation_view.rb', line 18

def visible_to_user?
  @bouncer.user_can_access?(@node)
end