class Onoma::Variety
Constants
- TOPLEVEL_VARIETIES
Public Class Methods
ancestors(variety)
click to toggle source
# File lib/onoma/models/variety.rb, line 22 def ancestors(variety) if variety.parent.nil? || TOPLEVEL_VARIETIES.include?(variety.parent.name) [] else [variety.parent, *ancestors(variety.parent)] end end
parent_variety(variety)
click to toggle source
# File lib/onoma/models/variety.rb, line 6 def parent_variety(variety) v = find(variety) if v.nil? nil elsif (toplevel = toplevel_parent(v)).present? toplevel.name else v.name end end
toplevel_parent(variety)
click to toggle source
# File lib/onoma/models/variety.rb, line 18 def toplevel_parent(variety) ancestors(variety).last end