Sha256: bdbcab85400888b8cf2dacb32900499a7cd3a0a95a33a76a85820de7648fabe8

Contents?: true

Size: 1.43 KB

Versions: 30

Compression:

Stored size: 1.43 KB

Contents

# frozen-string_literal: true

module Decidim::Amendable
  class AmendmentBaseEvent < Decidim::Events::SimpleEvent
    i18n_attributes :amendable_path, :amendable_type, :amendable_title,
                    :emendation_path, :emendation_author_nickname, :emendation_author_path

    def amendable_title
      @amendable_title ||= amendable_resource.title
    end

    def amendable_type
      @amendable_type ||= amendable_resource.class.model_name.human.downcase
    end

    def amendable_path
      @amendable_path ||= Decidim::ResourceLocatorPresenter.new(amendable_resource).path
    end

    def emendation_author
      return unless emendation_resource

      @emendation_author ||= if emendation_resource.is_a?(Decidim::Coauthorable)
                               Decidim::UserPresenter.new(emendation_resource.creator_author)
                             else
                               Decidim::UserPresenter.new(emendation_resource.author)
                             end
    end

    def emendation_author_nickname
      return unless emendation_resource

      @emendation_author_nickname ||= emendation_author.nickname
    end

    def emendation_author_path
      return unless emendation_resource

      @emendation_author_path ||= emendation_author.profile_path
    end

    def emendation_path
      return unless emendation_resource

      @emendation_path ||= Decidim::ResourceLocatorPresenter.new(emendation_resource).path
    end
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
decidim-core-0.26.0 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.26.0.rc2 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.26.0.rc1 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.25.2 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.25.1 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.25.0 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.25.0.rc4 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.25.0.rc3 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.25.0.rc2 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.25.0.rc1 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.24.3 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.23.6 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.24.2 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.23.5 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.24.1 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.24.0 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.24.0.rc2 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.23.4 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.24.0.rc1 app/events/decidim/amendable/amendment_base_event.rb
decidim-core-0.23.3 app/events/decidim/amendable/amendment_base_event.rb