class Iqvoc::Configuration::Navigation
Public Class Methods
add(item, position = nil)
click to toggle source
# File lib/iqvoc/configuration/navigation.rb, line 28 def self.add(item, position = nil) if position items.insert(position, item) else items << item end end
add_grouped(item, position = nil)
click to toggle source
# File lib/iqvoc/configuration/navigation.rb, line 42 def self.add_grouped(item, position = nil) index = setup_extension_group(position) items[index][:items] << item end
items()
click to toggle source
# File lib/iqvoc/configuration/navigation.rb, line 24 def self.items Iqvoc.navigation_items end
remove(name)
click to toggle source
removes first item matching name
# File lib/iqvoc/configuration/navigation.rb, line 37 def self.remove(name) item = items.find { |menu_item| menu_item[:text] == name} items.delete(item) end
Private Class Methods
setup_extension_group(position)
click to toggle source
Setup an empty navigation group for extensions Returns index for the new (or existing) group, so add_grouped
can use the index to insert it’s item under the group
# File lib/iqvoc/configuration/navigation.rb, line 51 def self.setup_extension_group(position) group = { text: proc { t('txt.views.navigation.extensions') }, items: [] } if position && !items[position][:items] items.insert(position, group) elsif position && items[position][:items] return position else items << group end items.index(group) end