Sha256: dfd98079cf15caab295814b019268fddd5a1757f78a7e1f01af20b6cb6141875

Contents?: true

Size: 1.1 KB

Versions: 11

Compression:

Stored size: 1.1 KB

Contents

module RocketCMS
  module Models
    module News
      extend ActiveSupport::Concern
      include RocketCMS::Model
      include Seoable
      include Enableable
      include RocketCMS.orm_specific('News')

      if RocketCMS.configuration.search_enabled
        include RocketCMS::ElasticSearch
      end

      included do
        validates_presence_of :name, :content
        before_validation do
          self.time = Time.now if self.time.blank?
        end
        scope :recent, ->(count = 5) { enabled.after_now.by_date.limit(count) }
        unless RocketCMS.configuration.news_per_page.nil?
          paginates_per RocketCMS.configuration.news_per_page
        end
        smart_excerpt :excerpt, :content, RocketCMS.configuration.news_excerpt
        RocketCMS.apply_patches self
      end

      def report_slug
        if name.blank?
          time.strftime('%Y-%m-%d')
        else
          time.strftime('%Y-%m-%d') + '-' + name[0..20]
        end
      end
      def html5_date
        time.strftime('%Y-%m-%d')
      end
      def format_date
        time.strftime('%d.%m.%Y')
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
rocket_cms-0.5.8 lib/rocket_cms/models/news.rb
rocket_cms-0.5.7 lib/rocket_cms/models/news.rb
rocket_cms-0.5.6 lib/rocket_cms/models/news.rb
rocket_cms-0.5.5 lib/rocket_cms/models/news.rb
rocket_cms-0.5.4 lib/rocket_cms/models/news.rb
rocket_cms-0.5.3 lib/rocket_cms/models/news.rb
rocket_cms-0.5.2 lib/rocket_cms/models/news.rb
rocket_cms-0.5.1 lib/rocket_cms/models/news.rb
rocket_cms-0.5.0 lib/rocket_cms/models/news.rb
rocket_cms-0.5.0.rc.5 lib/rocket_cms/models/news.rb
rocket_cms-0.5.0.rc.4 lib/rocket_cms/models/news.rb