odf-report 0.4.2 → 0.4.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,7 +3,7 @@ module ODFReport
3
3
  class Table
4
4
  include HashGsub, Nested
5
5
 
6
- attr_accessor :fields, :rows, :name, :collection_field, :data, :header, :parent
6
+ attr_accessor :fields, :rows, :name, :collection_field, :data, :header, :parent, :tables
7
7
 
8
8
  def initialize(opts)
9
9
  @name = opts[:name]
@@ -12,6 +12,7 @@ class Table
12
12
  @parent = opts[:parent]
13
13
 
14
14
  @fields = {}
15
+ @tables = []
15
16
 
16
17
  @template_rows = []
17
18
  @header = opts[:header] || false
@@ -27,6 +28,14 @@ class Table
27
28
  end
28
29
  end
29
30
 
31
+ def add_table(table_name, collection_field, opts={}, &block)
32
+ opts.merge!(:name => table_name, :collection_field => collection_field, :parent => self)
33
+ tab = Table.new(opts)
34
+ @tables << tab
35
+
36
+ yield(tab)
37
+ end
38
+
30
39
  def populate!(row)
31
40
  @collection = get_collection_from_item(row, @collection_field) if row
32
41
  end
@@ -45,6 +54,10 @@ class Table
45
54
 
46
55
  replace_values!(new_node, data_item)
47
56
 
57
+ @tables.each do |t|
58
+ t.replace!(new_node, data_item)
59
+ end
60
+
48
61
  table.add_child(new_node)
49
62
 
50
63
  end
data/odf-report.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{odf-report}
5
- s.version = "0.4.2"
5
+ s.version = "0.4.3"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Sandro Duarte"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: odf-report
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.4.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-12-27 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rubyzip
16
- requirement: &2153027700 !ruby/object:Gem::Requirement
16
+ requirement: &2153159540 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: 0.9.4
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *2153027700
27
+ version_requirements: *2153159540
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: nokogiri
30
- requirement: &2153026760 !ruby/object:Gem::Requirement
30
+ requirement: &2153158760 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -38,7 +38,7 @@ dependencies:
38
38
  version: 1.5.0
39
39
  type: :runtime
40
40
  prerelease: false
41
- version_requirements: *2153026760
41
+ version_requirements: *2153158760
42
42
  description: Generates ODF files, given a template (.odt) and data, replacing tags
43
43
  email: sandrods@gmail.com
44
44
  executables: []