sphonglepress 0.0.5 → 0.0.6
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.
- data/lib/sphonglepress/doc_exporter.rb +74 -0
- data/lib/sphonglepress/version.rb +1 -1
- data/lib/sphonglepress.rb +9 -4
- data/sphonglepress.gemspec +1 -3
- metadata +36 -24
@@ -0,0 +1,74 @@
|
|
1
|
+
module Sphonglepress
|
2
|
+
class DocExporter
|
3
|
+
|
4
|
+
def initialize(pages, lorem = "Lorem ipsum dolor sit amet....")
|
5
|
+
@pages = pages
|
6
|
+
@lorem = lorem
|
7
|
+
end
|
8
|
+
|
9
|
+
def export(output_dir)
|
10
|
+
html = contents << headings
|
11
|
+
output_html = output_dir.join("site.html")
|
12
|
+
File.open(output_html, 'w') do |f|
|
13
|
+
f.write "<html><body>" << html << "</body></html>"
|
14
|
+
end
|
15
|
+
|
16
|
+
convert_odf_cmd = "libreoffice --headless --convert-to doc -outdir #{output_dir} #{output_html}"
|
17
|
+
`convert_odf_cmd`
|
18
|
+
end
|
19
|
+
|
20
|
+
|
21
|
+
private
|
22
|
+
|
23
|
+
def contents
|
24
|
+
output = ""
|
25
|
+
@pages.each do |page|
|
26
|
+
output << element(page)
|
27
|
+
end
|
28
|
+
"<ul>" << output << "</ul>"
|
29
|
+
end
|
30
|
+
|
31
|
+
def element(page)
|
32
|
+
output = "<li>" << page.post_title
|
33
|
+
|
34
|
+
if (page.posts.length > 0)
|
35
|
+
output << "<ul>"
|
36
|
+
|
37
|
+
page.posts.each do |post|
|
38
|
+
output << element(post)
|
39
|
+
end
|
40
|
+
|
41
|
+
output << "</ul>"
|
42
|
+
|
43
|
+
end
|
44
|
+
|
45
|
+
output << "</li>"
|
46
|
+
|
47
|
+
output
|
48
|
+
end
|
49
|
+
|
50
|
+
def headings
|
51
|
+
output = ""
|
52
|
+
@pages.each do |page|
|
53
|
+
output << heading(page)
|
54
|
+
end
|
55
|
+
output
|
56
|
+
end
|
57
|
+
|
58
|
+
def heading(page)
|
59
|
+
output = "<h1>" << page.post_title << "</h1>\n<p>#{@lorem}</p>"
|
60
|
+
|
61
|
+
if (page.posts.length > 0)
|
62
|
+
page.posts.each do |post|
|
63
|
+
output << heading(post)
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
67
|
+
|
68
|
+
output
|
69
|
+
end
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
end
|
74
|
+
end
|
data/lib/sphonglepress.rb
CHANGED
@@ -26,7 +26,7 @@ require "sphonglepress/middleman.rb"
|
|
26
26
|
require "sphonglepress/export.rb"
|
27
27
|
require "sphonglepress/database.rb"
|
28
28
|
require "sphonglepress/watcher.rb"
|
29
|
-
|
29
|
+
require "sphonglepress/doc_exporter.rb"
|
30
30
|
|
31
31
|
begin
|
32
32
|
require "sphonglepress/importer.rb"
|
@@ -189,10 +189,15 @@ module Sphonglepress
|
|
189
189
|
pages.each { |page| Importer.visit page, [document_importer_klass]}
|
190
190
|
end
|
191
191
|
|
192
|
+
desc "export_doc_from_sitemap", "Output a Word document from the sitemap"
|
193
|
+
def export_doc_from_sitemap
|
194
|
+
pages = ::Sphonglepress::Importer.import sitemap_hash
|
195
|
+
exporter = ::Sphonglepress::DocExporter.new(pages)
|
196
|
+
output_dir = STATIC_DIR.join("site")
|
197
|
+
FileUtils.mkdir_p(output_dir)
|
198
|
+
exporter.export(output_dir)
|
199
|
+
end
|
192
200
|
|
193
|
-
|
194
|
-
#desc "populate_static_from_doc"
|
195
|
-
|
196
201
|
private
|
197
202
|
|
198
203
|
def sitemap_hash
|
data/sphonglepress.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sphonglepress
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-10-
|
12
|
+
date: 2011-10-26 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: thor
|
16
|
-
requirement: &
|
16
|
+
requirement: &3643740 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *3643740
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: middleman
|
27
|
-
requirement: &
|
27
|
+
requirement: &3641420 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *3641420
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: activerecord
|
38
|
-
requirement: &
|
38
|
+
requirement: &3640520 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *3640520
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: tilt
|
49
|
-
requirement: &
|
49
|
+
requirement: &3639960 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *3639960
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: haml
|
60
|
-
requirement: &
|
60
|
+
requirement: &3638840 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *3638840
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: mysql
|
71
|
-
requirement: &
|
71
|
+
requirement: &3637420 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *3637420
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: fssm
|
82
|
-
requirement: &
|
82
|
+
requirement: &3635240 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: '0'
|
88
88
|
type: :runtime
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *3635240
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: hpricot
|
93
|
-
requirement: &
|
93
|
+
requirement: &3633720 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ! '>='
|
@@ -98,10 +98,10 @@ dependencies:
|
|
98
98
|
version: '0'
|
99
99
|
type: :runtime
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *3633720
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: mime-types
|
104
|
-
requirement: &
|
104
|
+
requirement: &3632440 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ! '>='
|
@@ -109,10 +109,10 @@ dependencies:
|
|
109
109
|
version: '0'
|
110
110
|
type: :runtime
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *3632440
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: nokogiri
|
115
|
-
requirement: &
|
115
|
+
requirement: &3631000 !ruby/object:Gem::Requirement
|
116
116
|
none: false
|
117
117
|
requirements:
|
118
118
|
- - ! '>='
|
@@ -120,10 +120,10 @@ dependencies:
|
|
120
120
|
version: '0'
|
121
121
|
type: :runtime
|
122
122
|
prerelease: false
|
123
|
-
version_requirements: *
|
123
|
+
version_requirements: *3631000
|
124
124
|
- !ruby/object:Gem::Dependency
|
125
125
|
name: therubyracer
|
126
|
-
requirement: &
|
126
|
+
requirement: &3629900 !ruby/object:Gem::Requirement
|
127
127
|
none: false
|
128
128
|
requirements:
|
129
129
|
- - ! '>='
|
@@ -131,7 +131,18 @@ dependencies:
|
|
131
131
|
version: '0'
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
|
-
version_requirements: *
|
134
|
+
version_requirements: *3629900
|
135
|
+
- !ruby/object:Gem::Dependency
|
136
|
+
name: mysql2
|
137
|
+
requirement: &3629020 !ruby/object:Gem::Requirement
|
138
|
+
none: false
|
139
|
+
requirements:
|
140
|
+
- - ! '>='
|
141
|
+
- !ruby/object:Gem::Version
|
142
|
+
version: '0'
|
143
|
+
type: :runtime
|
144
|
+
prerelease: false
|
145
|
+
version_requirements: *3629020
|
135
146
|
description: Sphonglepress is a command line utility for interacting with & making
|
136
147
|
the task of importing content into a wordpress site
|
137
148
|
email:
|
@@ -154,6 +165,7 @@ files:
|
|
154
165
|
- lib/sphonglepress.rb
|
155
166
|
- lib/sphonglepress/config.rb
|
156
167
|
- lib/sphonglepress/database.rb
|
168
|
+
- lib/sphonglepress/doc_exporter.rb
|
157
169
|
- lib/sphonglepress/export.rb
|
158
170
|
- lib/sphonglepress/extensions.rb
|
159
171
|
- lib/sphonglepress/git.rb
|