Module: ReportableRails::Models::ReportCategory::ClassMethods
- Defined in:
- lib/reportable_rails/models/report_category.rb
Instance Method Summary collapse
-
#deactivate(name) ⇒ Object
Deactivate a category without deleting it.
-
#default_category ⇒ Object
Get or create the default category.
-
#find_or_create_by_name(name, description: nil) ⇒ Object
Find or create a category by name.
Instance Method Details
#deactivate(name) ⇒ Object
Deactivate a category without deleting it
56 57 58 59 60 |
# File 'lib/reportable_rails/models/report_category.rb', line 56 def deactivate(name) return false if name == ReportableRails.configuration.default_category_name category = find_by(name: name) category&.update(active: false) end |
#default_category ⇒ Object
Get or create the default category
50 51 52 53 |
# File 'lib/reportable_rails/models/report_category.rb', line 50 def default_category find_or_create_by_name(ReportableRails.configuration.default_category_name, description: 'Default category for uncategorized reports') end |
#find_or_create_by_name(name, description: nil) ⇒ Object
Find or create a category by name
43 44 45 46 47 |
# File 'lib/reportable_rails/models/report_category.rb', line 43 def find_or_create_by_name(name, description: nil) find_or_create_by(name: name) do |category| category.description = description if description.present? end end |