mysociety/alaveteli

View on GitHub
app/models/concerns/categorisable.rb

Summary

Maintainability
A
0 mins
Test Coverage
##
# Module concern with methods to help categorise records
#
module Categorisable
  extend ActiveSupport::Concern

  def self.models
    @models ||= []
  end

  included do
    Categorisable.models << self

    def self.category_root
      Category.roots.find_or_create_by(title: name)
    end

    def self.categories
      category_root.tree
    end

    def self.category_list
      category_root.list
    end
  end
end