module EffectivePosts

Constants

VERSION

Public Class Methods

categories() click to toggle source
# File lib/effective_posts.rb, line 46
def self.categories
  Array(config[:categories])
end
category(value, safe: true) click to toggle source

Normalize and return the category that matches this value

# File lib/effective_posts.rb, line 34
def self.category(value, safe: true)
  values = [value, value.to_s, value.to_s.downcase, value.to_s.downcase.parameterize, value.to_s.parameterize]

  category = categories.find do |cat|
    (values & [cat, cat.to_s, cat.to_s.downcase, cat.to_s.downcase.parameterize, cat.to_s.parameterize]).present?
  end

  raise("Unable to find EffectivePosts.category for value '#{value.presence || 'nil'}'") unless safe

  category
end
config_keys() click to toggle source
# File lib/effective_posts.rb, line 7
def self.config_keys
  [
    :posts_table_name, :layout, 
    :categories, :event_categories,
    :mailer, :parent_mailer, :deliver_method, :mailer_layout, :mailer_sender, :mailer_admin, :mailer_subject,
    :use_category_routes, :use_blog_routes,
    :use_effective_roles, :use_active_storage, :use_description, :use_excerpt,
    :per_page, :post_meta_author,
    :submissions_enabled, :submissions_require_current_user,
    :submissions_require_approval, :submissions_note
  ]
end
event_categories() click to toggle source
# File lib/effective_posts.rb, line 50
def self.event_categories
  Array(config[:event_categories])
end
mailer_class() click to toggle source
# File lib/effective_posts.rb, line 22
def self.mailer_class
  mailer&.constantize || Effective::PostsMailer
end
news_categories() click to toggle source
# File lib/effective_posts.rb, line 58
def self.news_categories
  categories - event_categories
end
not_event_categories() click to toggle source
# File lib/effective_posts.rb, line 54
def self.not_event_categories
  categories - event_categories
end
permitted_params() click to toggle source
# File lib/effective_posts.rb, line 26
def self.permitted_params
  @permitted_params ||= [
    :title, :excerpt, :description, :save_as_draft, :category, :slug, :published_start_at, :published_end_at, :body, :tags, :extra,
    :image, :start_at, :end_at, :location, :website_name, :website_href, roles: []
  ]
end