pivotal_to_pdf 0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ v0.1 initial setup
@@ -0,0 +1,8 @@
1
+ CHANGELOG
2
+ Manifest
3
+ Rakefile
4
+ bin/pivol_to_pdf
5
+ lib/pivotal_to_pdf.rb
6
+ lib/pivotal_to_pdf/pdf_writer.rb
7
+ lib/pivotal_to_pdf/story.rb
8
+ pivotal_to_pdf.gemspec
@@ -0,0 +1,10 @@
1
+ require 'echoe'
2
+ Echoe.new('pivotal_to_pdf') do |p|
3
+ p.description = "Convert Pivotal Tracker Stories to 4x6 PDF for printing"
4
+ p.author = "Yi Wen"
5
+ p.email = "hayafirst@gmail.com"
6
+ p.runtime_dependencies = %w(activeresource prawn rainbow)
7
+ p.bin_files = [ "bin/pivotal_to_pdf" ]
8
+ # p.ignore_pattern = ["bin/*"]
9
+ # p.development_dependencies = []
10
+ end
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+ $:.unshift(File.dirname(__FILE__) + '/../lib') unless $:.include?(File.dirname(__FILE__) + '/../lib')
3
+ require 'pivotal_to_pdf'
4
+ PivotalToPdf.write ARGV[0]
5
+
@@ -0,0 +1,13 @@
1
+ require 'rubygems'
2
+ require 'rainbow'
3
+ require 'active_resource'
4
+ require 'pivotal_to_pdf/story'
5
+ require 'pivotal_to_pdf/pdf_writer'
6
+ class PivotalToPdf
7
+ class << self
8
+ def write(story_id)
9
+ story = Story.find(story_id)
10
+ PdfWriter.new(story).write_to
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # Script to generate PDF cards suitable for planning poker
4
+ # from Pivotal Tracker [http://www.pivotaltracker.com/] CSV export.
5
+
6
+ # Inspired by Bryan Helmkamp's http://github.com/brynary/features2cards/
7
+
8
+ # Example output: http://img.skitch.com/20100522-d1kkhfu6yub7gpye97ikfuubi2.png
9
+
10
+ require 'rubygems'
11
+ require 'prawn'
12
+ require 'rainbow'
13
+
14
+ class PdfWriter
15
+ attr_reader :card
16
+ def initialize(card)
17
+ @card = card
18
+ end
19
+
20
+ def write_to
21
+ Prawn::Document.generate("#{card.id}.pdf",
22
+ :page_layout => :landscape,
23
+ :margin => [25, 25, 50, 25],
24
+ :page_size => [302, 432]) do |pdf|
25
+
26
+ pdf.font "#{Prawn::BASEDIR}/data/fonts/DejaVuSans.ttf"
27
+ # pdf.start_new_page
28
+ padding = 12
29
+ pdf.stroke_color = "666666"
30
+ pdf.stroke_bounds
31
+ width = 370
32
+ # --- Write content
33
+ pdf.bounding_box [pdf.bounds.left+padding, pdf.bounds.top-padding], :width => width do
34
+ pdf.text card.name, :size => 14
35
+ pdf.text "\n", :size => 14
36
+ pdf.fill_color "444444"
37
+ pdf.text card.description || "", :size => 10
38
+ pdf.fill_color "000000"
39
+ end
40
+
41
+ pdf.text_box "Points: " + card.estimate.to_s,
42
+ :size => 12, :at => [12, 50], :width => width-18
43
+ pdf.text_box "Owner: " + card.owned_by,
44
+ :size => 8, :at => [12, 18], :width => width-18
45
+
46
+ pdf.fill_color "999999"
47
+ pdf.text_box card.story_type.capitalize, :size => 8, :align => :right, :at => [12, 18], :width => width-18
48
+ pdf.fill_color "000000"
49
+
50
+
51
+ # --- Footer
52
+ pdf.number_pages "Story ID: #{card.id}", [pdf.bounds.left, -28]
53
+
54
+ puts ">>> Generated PDF file in '#{card.id}.pdf'".foreground(:green)
55
+ end
56
+ rescue Exception
57
+ puts "[!] There was an error while generating the PDF file... What happened was:".foreground(:red)
58
+ raise
59
+ end
60
+ end
@@ -0,0 +1,5 @@
1
+ class Story < ActiveResource::Base
2
+ info = YAML.load_file File.expand_path("~/.pivotal.yml")
3
+ self.site = %Q|https://www.pivotaltracker.com/services/v3/projects/#{info['project_id']}|
4
+ headers['X-TrackerToken'] = info["token"]
5
+ end
@@ -0,0 +1,41 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = %q{pivotal_to_pdf}
5
+ s.version = "0.1"
6
+
7
+ s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
+ s.authors = ["Yi Wen"]
9
+ s.date = %q{2010-11-24}
10
+ s.default_executable = %q{pivol_to_pdf}
11
+ s.description = %q{Convert Pivotal Tracker Stories to 4x6 PDF for printing}
12
+ s.email = %q{hayafirst@gmail.com}
13
+ s.executables = ["pivol_to_pdf"]
14
+ s.extra_rdoc_files = ["CHANGELOG", "bin/pivol_to_pdf", "lib/pivotal_to_pdf.rb", "lib/pivotal_to_pdf/pdf_writer.rb", "lib/pivotal_to_pdf/story.rb"]
15
+ s.files = ["CHANGELOG", "Manifest", "Rakefile", "bin/pivol_to_pdf", "lib/pivotal_to_pdf.rb", "lib/pivotal_to_pdf/pdf_writer.rb", "lib/pivotal_to_pdf/story.rb", "pivotal_to_pdf.gemspec"]
16
+ s.homepage = %q{}
17
+ s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Pivotal_to_pdf", "--main", "README"]
18
+ s.require_paths = ["lib"]
19
+ s.rubyforge_project = %q{pivotal_to_pdf}
20
+ s.rubygems_version = %q{1.3.7}
21
+ s.summary = %q{Convert Pivotal Tracker Stories to 4x6 PDF for printing}
22
+
23
+ if s.respond_to? :specification_version then
24
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
25
+ s.specification_version = 3
26
+
27
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
28
+ s.add_runtime_dependency(%q<activeresource>, [">= 0"])
29
+ s.add_runtime_dependency(%q<prawn>, [">= 0"])
30
+ s.add_runtime_dependency(%q<rainbow>, [">= 0"])
31
+ else
32
+ s.add_dependency(%q<activeresource>, [">= 0"])
33
+ s.add_dependency(%q<prawn>, [">= 0"])
34
+ s.add_dependency(%q<rainbow>, [">= 0"])
35
+ end
36
+ else
37
+ s.add_dependency(%q<activeresource>, [">= 0"])
38
+ s.add_dependency(%q<prawn>, [">= 0"])
39
+ s.add_dependency(%q<rainbow>, [">= 0"])
40
+ end
41
+ end
metadata ADDED
@@ -0,0 +1,124 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pivotal_to_pdf
3
+ version: !ruby/object:Gem::Version
4
+ hash: 9
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 1
9
+ version: "0.1"
10
+ platform: ruby
11
+ authors:
12
+ - Yi Wen
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-11-24 00:00:00 -06:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: activeresource
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ hash: 3
29
+ segments:
30
+ - 0
31
+ version: "0"
32
+ type: :runtime
33
+ version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: prawn
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ hash: 3
43
+ segments:
44
+ - 0
45
+ version: "0"
46
+ type: :runtime
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: rainbow
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 3
57
+ segments:
58
+ - 0
59
+ version: "0"
60
+ type: :runtime
61
+ version_requirements: *id003
62
+ description: Convert Pivotal Tracker Stories to 4x6 PDF for printing
63
+ email: hayafirst@gmail.com
64
+ executables:
65
+ - pivol_to_pdf
66
+ extensions: []
67
+
68
+ extra_rdoc_files:
69
+ - CHANGELOG
70
+ - bin/pivol_to_pdf
71
+ - lib/pivotal_to_pdf.rb
72
+ - lib/pivotal_to_pdf/pdf_writer.rb
73
+ - lib/pivotal_to_pdf/story.rb
74
+ files:
75
+ - CHANGELOG
76
+ - Manifest
77
+ - Rakefile
78
+ - bin/pivol_to_pdf
79
+ - lib/pivotal_to_pdf.rb
80
+ - lib/pivotal_to_pdf/pdf_writer.rb
81
+ - lib/pivotal_to_pdf/story.rb
82
+ - pivotal_to_pdf.gemspec
83
+ has_rdoc: true
84
+ homepage: ""
85
+ licenses: []
86
+
87
+ post_install_message:
88
+ rdoc_options:
89
+ - --line-numbers
90
+ - --inline-source
91
+ - --title
92
+ - Pivotal_to_pdf
93
+ - --main
94
+ - README
95
+ require_paths:
96
+ - lib
97
+ required_ruby_version: !ruby/object:Gem::Requirement
98
+ none: false
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ hash: 3
103
+ segments:
104
+ - 0
105
+ version: "0"
106
+ required_rubygems_version: !ruby/object:Gem::Requirement
107
+ none: false
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ hash: 11
112
+ segments:
113
+ - 1
114
+ - 2
115
+ version: "1.2"
116
+ requirements: []
117
+
118
+ rubyforge_project: pivotal_to_pdf
119
+ rubygems_version: 1.3.7
120
+ signing_key:
121
+ specification_version: 3
122
+ summary: Convert Pivotal Tracker Stories to 4x6 PDF for printing
123
+ test_files: []
124
+