wizport 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 8a392494ed5147a16f3aa27a6021ad3d4a87b4ea
4
+ data.tar.gz: 9a3260b7d685d2986ac23a1f9ca4b11e55d87327
5
+ SHA512:
6
+ metadata.gz: 49784a2cf6cbfe0bd8458b8e43d0b7eb1c06de0c5954a2896ff9b3649a61d4899906d61f5378f29bc487eb7b91f36105caca4444cc859c91b03df0090ddc4a37
7
+ data.tar.gz: 9ba8ab47e1040c49d3fa3203c81aac565b9beef059b47565692be1044c6d49425ba73c75d281c6e6abdf990b7ef78c2658e8d47b8ed64aad9a408b9347a85467
data/.gitignore CHANGED
@@ -1,5 +1,18 @@
1
1
  *.gem
2
+ *.rbc
2
3
  .bundle
4
+ .config
5
+ .yardoc
3
6
  Gemfile.lock
4
- pkg/*
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
5
18
  .idea/
data/Gemfile CHANGED
@@ -1,10 +1,6 @@
1
- source "http://rubygems.org"
1
+ source 'http://rubygems.org'
2
2
 
3
- # Specify your gem's dependencies in wizport.gemspec
3
+ # Specify your gem's dependencies in gemtest.gemspec
4
4
  gemspec
5
5
 
6
- #gem 'rspec'
7
- gem 'bson_ext'
8
- gem 'mongoid'
9
- gem "prawn", :git => "git://github.com/sandal/prawn.git"
10
-
6
+ gem 'prawn', :git => 'git://github.com/sandal/prawn.git'
data/LICENSE.txt ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 scott
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,59 @@
1
+ # Wizport
2
+
3
+ Wizport Abstract Interface. Creates text, html, pdf and rtf output, based on a common framework.
4
+
5
+ ## Features
6
+
7
+ * One interface, multiple outputs
8
+ * You have two interfaces:
9
+ * Generic, based on adding objects to a Wizport::Report object
10
+ * Fine tuning, directly operating on Wizport::Rtf::Document Wizport::Html::Document and Wizport::Rtf::Document interface
11
+
12
+ ## Installation
13
+
14
+ Add this line to your application's Gemfile:
15
+
16
+ gem 'wizport'
17
+
18
+ And then execute:
19
+
20
+ $ bundle
21
+
22
+ Or install it yourself as:
23
+
24
+ $ gem install wizport
25
+
26
+ ## Usage
27
+
28
+ * Generate a report in HTML format:
29
+ ```ruby
30
+ html = Wizport::Html::Document.new do
31
+ text "报表",'text-align' => :center
32
+ table [[1,2,3]] do
33
+ add_row [4,{content:'ss',colspan:2}]
34
+ end
35
+ end
36
+ html.save('c:\h.html')
37
+ ```
38
+
39
+ * Generate a report in RTF format:
40
+ ```ruby
41
+ rtf = Wizport::Rtf::Document.new do
42
+ text "学生综合素质评价", :align => :center, 'font-size' => 48
43
+ page_break
44
+ text "ss"
45
+ table [[{content:'e',rowspan:4},{content:'4',rowspan:4},1,{content:'1',colspan:2}],
46
+ [{content:'4',rowspan:3,colspan:2},8],[11]], column_widths:{1=>100,2 => 100,3 => 50,4 => 50,5 => 50} do
47
+ add_row [1]
48
+ end
49
+ end
50
+ rtf.save('c:/r.rtf')
51
+ ```
52
+
53
+ ## Contributing
54
+
55
+ 1. Fork it
56
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
57
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
58
+ 4. Push to the branch (`git push origin my-new-feature`)
59
+ 5. Create new Pull Request
@@ -19,12 +19,12 @@ module Wizport
19
19
  @html << txt
20
20
  end
21
21
 
22
- def to_html
22
+ def to_doc
23
23
  @html.string
24
24
  end
25
25
 
26
26
  def save(file)
27
- File.open(file, 'w') { |file| file.write(to_html) }
27
+ File.open(file, 'w') { |file| file.write(to_doc) }
28
28
  end
29
29
 
30
30
  private
@@ -3,33 +3,33 @@
3
3
  # Wizport: A gem for creating reports by specifying columns, groups, styles, etc.
4
4
  # Copyright 2012 by sgzhe@163.com
5
5
 
6
- require 'rtf'
7
- module Wizport
8
- module Document
9
- class Rtf
10
- def initialize
11
- @rtf = RTF::Document.new(RTF::Font.new(RTF::Font::ROMAN, 'Times New Roman'))
12
- end
13
-
14
- def text(txt)
15
- @rtf.paragraph << txt
16
- end
17
-
18
- def table(rows)
19
- r = rows.length
20
- c = rows.first && rows.first.length
21
- tbl = @rtf.table r, c
22
- rows.each_index do |row|
23
- rows[row].each_index do |col|
24
- tbl[row][col] << rows[row][col].to_s
25
- end
26
- end
27
- tbl
28
- end
29
-
30
- def save(file)
31
- File.open(file, 'w') { |file| file.write(@rtf.to_rtf) }
32
- end
33
- end
34
- end
35
- end
6
+ #require 'rtf'
7
+ #module Wizport
8
+ # module Document
9
+ # class Rtf
10
+ # def initialize
11
+ # @rtf = RTF::Document.new(RTF::Font.new(RTF::Font::ROMAN, 'Times New Roman'))
12
+ # end
13
+ #
14
+ # def text(txt)
15
+ # @rtf.paragraph << txt
16
+ # end
17
+ #
18
+ # def table(rows)
19
+ # r = rows.length
20
+ # c = rows.first && rows.first.length
21
+ # tbl = @rtf.table r, c
22
+ # rows.each_index do |row|
23
+ # rows[row].each_index do |col|
24
+ # tbl[row][col] << rows[row][col].to_s
25
+ # end
26
+ # end
27
+ # tbl
28
+ # end
29
+ #
30
+ # def save(file)
31
+ # File.open(file, 'w') { |file| file.write(@rtf.to_rtf) }
32
+ # end
33
+ # end
34
+ # end
35
+ #end
@@ -43,12 +43,12 @@ module Wizport
43
43
 
44
44
  end
45
45
 
46
- def to_rtf
46
+ def to_doc
47
47
  @rtf.string
48
48
  end
49
49
 
50
50
  def save(file)
51
- File.open(file, 'w') { |file| file.write(to_rtf) }
51
+ File.open(file, 'w') { |file| file.write(to_doc) }
52
52
  end
53
53
 
54
54
  end
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Wizport
7
7
  class Column
8
- TYPE = {default:0,image:1}
8
+ TYPE = {default:0, image:1}
9
9
  ALIGN = {}
10
10
 
11
11
  attr_accessor :title, :name, :width, :clazz
@@ -1,3 +1,3 @@
1
1
  module Wizport
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require "../../../../spec/spec_helper"
3
+ require "spec_helper"
4
4
 
5
5
  describe Wizport::Html::Document do
6
6
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require "../../../../spec/spec_helper"
3
+ require "spec_helper"
4
4
 
5
5
  describe Wizport::Pdf::Document do
6
6
 
@@ -3,7 +3,7 @@
3
3
  # Wizport: A gem for creating reports by specifying columns, groups, styles, etc.
4
4
  # Copyright 2012 by sgzhe@163.com
5
5
 
6
- require "../../../spec/spec_helper"
6
+ require "spec_helper"
7
7
 
8
8
  describe "My behaviour" do
9
9
 
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
 
3
- require "../../../../spec/spec_helper"
3
+ require "spec_helper"
4
4
 
5
5
  describe Wizport::Rtf::Document do
6
6
 
@@ -10,8 +10,7 @@ describe Wizport::Rtf::Document do
10
10
  page_break
11
11
  text "ss"
12
12
  table [[{content:'e',rowspan:4},{content:'4',rowspan:4},1,{content:'1',colspan:2}],
13
- [{content:'4',rowspan:3,colspan:2},8],
14
- [11]],column_widths:{1=>100,2 => 100,3 => 50,4 => 50,5 => 50} do
13
+ [{content:'4',rowspan:3,colspan:2},8],[11]], column_widths:{1=>100,2 => 100,3 => 50,4 => 50,5 => 50} do
15
14
  add_row [1]
16
15
  end
17
16
 
@@ -1,4 +1,4 @@
1
- require "../../../../spec/spec_helper"
1
+ require "spec_helper"
2
2
 
3
3
 
4
4
  describe Wizport::Rtf::Text do
@@ -3,15 +3,15 @@
3
3
  # Wizport: A gem for creating reports by specifying columns, groups, styles, etc.
4
4
  # Copyright 2012 by sgzhe@163.com
5
5
 
6
- require "../../../spec/spec_helper"
6
+ require "spec_helper"
7
7
 
8
8
  describe Wizport::Rtf::Document do
9
9
 
10
10
  it "a simple example of Rtf" do
11
- rtf = Wizport::Document::Rtf.new
12
- rtf.text "hello sgz"
13
- rtf.table [[1,1,1,""],[1,1,1,2],[1,1,1,3]]
14
- rtf.save('c:/r.rtf')
11
+ #rtf = Wizport::Document::Rtf.new
12
+ #rtf.text "hello sgz"
13
+ #rtf.table [[1,1,1,""],[1,1,1,2],[1,1,1,3]]
14
+ #rtf.save('c:/r.rtf')
15
15
 
16
16
  end
17
17
  end
@@ -3,19 +3,10 @@
3
3
  # Wizport: A gem for creating reports by specifying columns, groups, styles, etc.
4
4
  # Copyright 2012 by sgzhe@163.com
5
5
 
6
- require "../../../spec/spec_helper"
7
- require "mongoid"
6
+ require "spec_helper"
7
+
8
8
 
9
- Mongoid.configure do |config|
10
- config.master = Mongo::Connection.new.db("godfather")
11
- end
12
9
 
13
- class Person
14
- include Mongoid::Document
15
- field :name
16
- field :sex
17
- field :tel
18
- end
19
10
 
20
11
  #Person.delete_all
21
12
  #Person.create({name:"sgz1",sex:"男",tel:"1223121"})
@@ -25,12 +16,12 @@ end
25
16
  describe Wizport::Report do
26
17
 
27
18
  it "a simple example of report" do
28
- rpt = Wizport::Report.new(:title => "人员性别统计表",:source => Person.all)
29
- rpt.column({:title => "姓名",:name => :name})
30
- rpt.column({:title => "性别",:name => :sex})
31
- rpt.column({:title => "电话",:name => :tel})
32
- rpt.section({:title => "性别",:group => :sex})
33
- rpt.save('c:/rpt.pdf')
19
+ #rpt = Wizport::Report.new(:title => "人员性别统计表",:source => Person.all)
20
+ #rpt.column({:title => "姓名",:name => :name})
21
+ #rpt.column({:title => "性别",:name => :sex})
22
+ #rpt.column({:title => "电话",:name => :tel})
23
+ #rpt.section({:title => "性别",:group => :sex})
24
+ #rpt.save('c:/rpt.pdf')
34
25
  end
35
26
 
36
27
  end
data/wizport.gemspec CHANGED
@@ -1,26 +1,28 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
4
  require "wizport/version"
4
5
 
5
- Gem::Specification.new do |s|
6
- s.name = "wizport"
7
- s.version = Wizport::VERSION
8
- s.authors = ["songgz"]
9
- s.email = ["sgzhe@163.com"]
10
- s.homepage = ""
11
- s.summary = "A simple, extensible reporting system"
12
- s.description = "A simple, extensible reporting system"
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "wizport"
8
+ spec.version = Wizport::VERSION
9
+ spec.authors = ["songgz"]
10
+ spec.email = ["sgzhe@163.com"]
11
+ spec.description = "A simple, extensible reporting system"
12
+ spec.summary = "Wizport Abstract Interface. Creates text, html, pdf and rtf output, based on a common framework."
13
+ spec.homepage = "https://github.com/songgz/wizport/wiki"
14
+ spec.license = "MIT"
13
15
 
14
- s.rubyforge_project = "wizport"
16
+ spec.files = `git ls-files`.split($/)
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ["lib"]
15
20
 
16
- s.files = `git ls-files`.split("\n")
17
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
- s.require_paths = ["lib"]
21
+ spec.add_development_dependency "bundler", "~> 1.3"
22
+ spec.add_development_dependency "rake"
23
+ spec.add_development_dependency "rspec"
20
24
 
21
- # specify any dependencies here; for example:
22
- s.add_development_dependency "rspec"
23
- #s.add_runtime_dependency "prawn", :git => "git://github.com/sandal/prawn.git"
24
- s.add_runtime_dependency "rtf"
25
+ #spec.add_runtime_dependency "prawn" , :git => 'git://github.com/sandal/prawn.git'
26
+ #spec.add_runtime_dependency "rtf"
25
27
 
26
28
  end
metadata CHANGED
@@ -1,46 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wizport
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
5
- prerelease:
4
+ version: 0.1.4
6
5
  platform: ruby
7
6
  authors:
8
7
  - songgz
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-08-21 00:00:00.000000000 Z
11
+ date: 2013-10-17 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- name: rspec
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
16
29
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
30
  requirements:
19
- - - ! '>='
31
+ - - '>='
20
32
  - !ruby/object:Gem::Version
21
33
  version: '0'
22
34
  type: :development
23
35
  prerelease: false
24
36
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
37
  requirements:
27
- - - ! '>='
38
+ - - '>='
28
39
  - !ruby/object:Gem::Version
29
40
  version: '0'
30
41
  - !ruby/object:Gem::Dependency
31
- name: rtf
42
+ name: rspec
32
43
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
44
  requirements:
35
- - - ! '>='
45
+ - - '>='
36
46
  - !ruby/object:Gem::Version
37
47
  version: '0'
38
- type: :runtime
48
+ type: :development
39
49
  prerelease: false
40
50
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
51
  requirements:
43
- - - ! '>='
52
+ - - '>='
44
53
  - !ruby/object:Gem::Version
45
54
  version: '0'
46
55
  description: A simple, extensible reporting system
@@ -52,6 +61,8 @@ extra_rdoc_files: []
52
61
  files:
53
62
  - .gitignore
54
63
  - Gemfile
64
+ - LICENSE.txt
65
+ - README.md
55
66
  - Rakefile
56
67
  - lib/wizport.rb
57
68
  - lib/wizport/builder/pdf.rb
@@ -94,28 +105,37 @@ files:
94
105
  - spec/wizport/document/rtf_spec.rb
95
106
  - spec/wizport/engine/report_spec.rb
96
107
  - wizport.gemspec
97
- homepage: ''
98
- licenses: []
108
+ homepage: https://github.com/songgz/wizport/wiki
109
+ licenses:
110
+ - MIT
111
+ metadata: {}
99
112
  post_install_message:
100
113
  rdoc_options: []
101
114
  require_paths:
102
115
  - lib
103
116
  required_ruby_version: !ruby/object:Gem::Requirement
104
- none: false
105
117
  requirements:
106
- - - ! '>='
118
+ - - '>='
107
119
  - !ruby/object:Gem::Version
108
120
  version: '0'
109
121
  required_rubygems_version: !ruby/object:Gem::Requirement
110
- none: false
111
122
  requirements:
112
- - - ! '>='
123
+ - - '>='
113
124
  - !ruby/object:Gem::Version
114
125
  version: '0'
115
126
  requirements: []
116
- rubyforge_project: wizport
117
- rubygems_version: 1.8.21
127
+ rubyforge_project:
128
+ rubygems_version: 2.0.3
118
129
  signing_key:
119
- specification_version: 3
120
- summary: A simple, extensible reporting system
121
- test_files: []
130
+ specification_version: 4
131
+ summary: Wizport Abstract Interface. Creates text, html, pdf and rtf output, based
132
+ on a common framework.
133
+ test_files:
134
+ - spec/spec_helper.rb
135
+ - spec/wizport/document/html/document_spec.rb
136
+ - spec/wizport/document/pdf/document_spec.rb
137
+ - spec/wizport/document/pdf_spec.rb
138
+ - spec/wizport/document/rtf/document_spec.rb
139
+ - spec/wizport/document/rtf/text_spec.rb
140
+ - spec/wizport/document/rtf_spec.rb
141
+ - spec/wizport/engine/report_spec.rb