Sha256: 4681c2a3b2b229498ef5f06d2375970c028664a21a170bc492b132cf36c93bc8

Contents?: true

Size: 815 Bytes

Versions: 8

Compression:

Stored size: 815 Bytes

Contents

module RedmineCrm
  module Liquid
    class IssueRelationsDrop < ::Liquid::Drop
      def initialize(relations)
        @relations = relations
      end

      def all
        @all ||= @relations.map { |relation| IssueRelationDrop.new(relation) }
      end

      def visible
        @visible ||= @all.select(&:visible?)
      end

      def each(&block)
        all.each(&block)
      end

      def size
        @relations.size
      end
    end

    class IssueRelationDrop < ::Liquid::Drop
      delegate :relation_type, :delay, to: :@relation

      def initialize(relation)
        @relation = relation
      end

      def issue_from
        @issue_from ||= IssueDrop.new(@relation.issue_from)
      end

      def issue_to
        @issue_to ||= IssueDrop.new(@relation.issue_to)
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
redmine_crm-0.0.63 lib/redmine_crm/liquid/drops/issue_relations_drop.rb
redmine_crm-0.0.62 lib/redmine_crm/liquid/drops/issue_relations_drop.rb
redmine_crm-0.0.61 lib/redmine_crm/liquid/drops/issue_relations_drop.rb
redmine_crm-0.0.60 lib/redmine_crm/liquid/drops/issue_relations_drop.rb
redmine_crm-0.0.59 lib/redmine_crm/liquid/drops/issue_relations_drop.rb
redmine_crm-0.0.58 lib/redmine_crm/liquid/drops/issue_relations_drop.rb
redmine_crm-0.0.57 lib/redmine_crm/liquid/drops/issue_relations_drop.rb
redmine_crm-0.0.56 lib/redmine_crm/liquid/drops/issue_relations_drop.rb