Sha256: f50d2928b486f8fed358f808475538c8b9087a610fe18e8df5d2a645cd5d6b2b
Contents?: true
Size: 1.51 KB
Versions: 2
Compression:
Stored size: 1.51 KB
Contents
# frozen_string_literal: true module Decidim module Blogs # The data store for a Blog in the Decidim::Blogs component. It stores a # title, description and any other useful information to render a blog. class Post < Blogs::ApplicationRecord include Decidim::Resourceable include Decidim::HasAttachments include Decidim::HasAttachmentCollections include Decidim::HasComponent include Decidim::Authorable include Decidim::Comments::Commentable include Traceable include Loggable component_manifest_name "blogs" validates :title, presence: true scope :created_at_desc, -> { order(arel_table[:created_at].desc) } # Public: Overrides the `commentable?` Commentable concern method. def commentable? component.settings.comments_enabled? end # Public: Overrides the `accepts_new_comments?` Commentable concern method. def accepts_new_comments? commentable? && !component.current_settings.comments_blocked end # Public: Overrides the `comments_have_alignment?` Commentable concern method. def comments_have_alignment? true end # Public: Overrides the `comments_have_votes?` Commentable concern method. def comments_have_votes? true end def official? author.nil? end # Public: Whether the object can have new comments or not. def user_allowed_to_comment?(user) can_participate_in_space?(user) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
decidim-blogs-0.19.1 | app/models/decidim/blogs/post.rb |
decidim-blogs-0.19.0 | app/models/decidim/blogs/post.rb |