Sha256: a0a71fe864d49101a8cbcbb14a69873aca0d76b2db4b3ae9787039686218fea7

Contents?: true

Size: 1007 Bytes

Versions: 10

Compression:

Stored size: 1007 Bytes

Contents

require 'xeroizer/report/row/xml_helper'

module Xeroizer
  module Report
    class Row
      
      extend ActiveSupport::Memoizable
      include RowXmlHelper
      
      attr_reader :report
      
      attr_accessor :type
      attr_accessor :title
      attr_accessor :rows
      attr_accessor :cells
      
      attr_accessor :parent
      
      attr_accessor :header
      
      public
      
        def initialize(report)
          @rows = []
          @cells = []
          @report = report
        end
        
        def header?;  @type == 'Header';      end
        def summary?; @type == 'SummaryRow';  end
        def section?; @type == 'Section';     end
        def row?;     @type == 'Row';         end
           
        def child?
          !parent.nil?
        end
        
        def parent?
          rows.size > 0
        end

        def cell(column_name)
          index = header.column_index(column_name)
          cells[index] if index >= 0
        end

    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
xeroizer-0.4.1 lib/xeroizer/report/row/row.rb
xeroizer-0.4.0 lib/xeroizer/report/row/row.rb
xeroizer-0.3.5 lib/xeroizer/report/row/row.rb
xeroizer-0.3.4 lib/xeroizer/report/row/row.rb
xeroizer-0.3.3 lib/xeroizer/report/row/row.rb
xeroizer-0.3.2 lib/xeroizer/report/row/row.rb
xeroizer-0.3.1 lib/xeroizer/report/row/row.rb
xeroizer-0.3.0 lib/xeroizer/report/row/row.rb
xeroizer-0.2.2 lib/xeroizer/report/row/row.rb
xeroizer-0.2.1 lib/xeroizer/report/row/row.rb