Sha256: 674ff4ed3584b152958fadf1970f79b59a6f9d580ab3b806bbeb556a515332ad
Contents?: true
Size: 909 Bytes
Versions: 14
Compression:
Stored size: 909 Bytes
Contents
# frozen_string_literal: true module Decidim # This concern contains the logic related with resources that can be endorsed. # Thus, it is expected to be included into a resource that is wanted to be endorsable. # This resource will have many `Decidim::Endorsement`s. module Endorsable extend ActiveSupport::Concern included do has_many :endorsements, as: :resource, dependent: :destroy, counter_cache: "endorsements_count" # Public: Check if the user has endorsed the resource. # - user_group: may be nil if user is not representing any user_group. # # Returns Boolean. def endorsed_by?(user, user_group = nil) if user_group endorsements.where(user_group: user_group).any? else endorsements.where(author: user, user_group: nil).any? end end end end end
Version data entries
14 entries across 14 versions & 1 rubygems