aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/refinery/blog/category.rb
blob: 55557c5c5582f86801aaeaab776fffad456f74f8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
module Refinery
  module Blog
    class Category < ActiveRecord::Base

      has_many :categorizations, :dependent => :destroy, :foreign_key => :blog_category_id
      has_many :posts, :through => :categorizations, :source => :blog_post

      acts_as_indexed :fields => [:title]

      validates :title, :presence => true, :uniqueness => true

      has_friendly_id :title, :use_slug => true,
                      :default_locale => (Refinery::I18n.default_frontend_locale rescue :en),
                      :approximate_ascii => Refinery::Blog.approximate_ascii,
                      :strip_non_ascii => Refinery::Blog.strip_non_ascii

      def post_count
        posts.select(&:live?).count
      end

      # how many items to show per page
      self.per_page = Refinery::Blog.posts_per_page

    end
  end
end