Class: Decidim::DummyResources::DummyResource

Class Method Summary collapse

Instance Method Summary collapse

Methods included from HasAttachments

#attachment_context

Methods included from Amendable

#add_author, #amendable?, #amendable_fields, #amendable_form, #amendment, #emendation?, #linked_promoted_resource, #notifiable_identities, #process_amendment_state_change!, #state, #visible_amendments_for, #visible_emendations_for

Methods included from Searchable

searchable_resources, searchable_resources_by_type, searchable_resources_of_type_comment, searchable_resources_of_type_component, searchable_resources_of_type_participant, searchable_resources_of_type_participatory_space

Methods included from Publicable

#previously_published?, #publish!, #published?, #unpublish!

Methods included from Followable

#followers

Class Method Details

.export_serializerObject



78
79
80
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 78

def self.export_serializer
  DummySerializer
end

.newsletter_participant_ids(component) ⇒ Object



82
83
84
85
86
87
88
89
90
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 82

def self.newsletter_participant_ids(component)
  authors_ids = Decidim::DummyResources::DummyResource.where(component:)
                                                      .where(decidim_author_type: Decidim::UserBaseEntity.name)
                                                      .where.not(author: nil)
                                                      .group(:decidim_author_id)
                                                      .pluck(:decidim_author_id)
  commentators_ids = Decidim::Comments::Comment.user_commentators_ids_in(Decidim::DummyResources::DummyResource.where(component:))
  (authors_ids + commentators_ids).flatten.compact.uniq
end

.user_collection(user) ⇒ Object



74
75
76
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 74

def self.user_collection(user)
  where(decidim_author_id: user.id, decidim_author_type: "Decidim::User")
end

Instance Method Details

#allow_resource_permissions?Boolean

Returns:

  • (Boolean)


55
56
57
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 55

def allow_resource_permissions?
  component.settings.resources_permissions_enabled
end

#commentable?Boolean

Public: Overrides the ‘commentable?` Commentable concern method.

Returns:

  • (Boolean)


60
61
62
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 60

def commentable?
  component.settings.comments_enabled?
end

#reported_attributesObject



47
48
49
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 47

def reported_attributes
  [:title]
end

#reported_content_urlObject



43
44
45
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 43

def reported_content_url
  ResourceLocatorPresenter.new(self).url
end

#reported_searchable_content_extrasObject



51
52
53
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 51

def reported_searchable_content_extras
  [normalized_author.name]
end

#user_allowed_to_comment?(user) ⇒ Boolean

Public: Whether the object can have new comments or not.

Returns:

  • (Boolean)


65
66
67
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 65

def user_allowed_to_comment?(user)
  component.can_participate_in_space?(user)
end

#user_allowed_to_vote_comment?(user) ⇒ Boolean

Public: Whether the object can have new comment votes or not.

Returns:

  • (Boolean)


70
71
72
# File 'decidim-dev/app/models/decidim/dummy_resources/dummy_resource.rb', line 70

def user_allowed_to_vote_comment?(user)
  component.can_participate_in_space?(user)
end