embedify 0.5.0 → 0.6.0
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/VERSION +1 -1
- data/embedify.gemspec +3 -3
- data/lib/embedify.rb +8 -6
- metadata +28 -88
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.6.0
|
data/embedify.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "embedify"
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.6.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Tristan Gomez"]
|
12
|
-
s.date = "2012-
|
12
|
+
s.date = "2012-05-14"
|
13
13
|
s.description = "Embedify is a ruby gem that parses and returns an\n embeddable version of a page, similar to how Facebook fetches and retrieves\n page data when posting a link."
|
14
14
|
s.email = "tristan.gomez+embedify@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -39,7 +39,7 @@ Gem::Specification.new do |s|
|
|
39
39
|
s.homepage = "http://github.com/parasquid/embedify"
|
40
40
|
s.licenses = ["LGPLv3"]
|
41
41
|
s.require_paths = ["lib"]
|
42
|
-
s.rubygems_version = "1.8.
|
42
|
+
s.rubygems_version = "1.8.15"
|
43
43
|
s.summary = "parses and returns an embeddable version of a page"
|
44
44
|
|
45
45
|
if s.respond_to? :specification_version then
|
data/lib/embedify.rb
CHANGED
@@ -39,7 +39,6 @@ module Embedify
|
|
39
39
|
|
40
40
|
def self.get_with_redirects(uri, iterations = 0)
|
41
41
|
html = Faraday.get(uri)
|
42
|
-
#raise html.env[:response_headers]['Location']
|
43
42
|
#puts "#{iterations.inspect} #{html.env[:response_headers]['Location']}"
|
44
43
|
case html.status
|
45
44
|
when 301..307
|
@@ -61,8 +60,11 @@ module Embedify
|
|
61
60
|
end
|
62
61
|
|
63
62
|
# transform the og:image tag into an array
|
64
|
-
|
65
|
-
|
63
|
+
unless page.image.nil? || page.image.respond_to?(:each)
|
64
|
+
page.image = make_absolute(page.image, page.url || html.env[:url].to_s)
|
65
|
+
dimensions = FastImage.size(page.image)
|
66
|
+
page.image = [url: page.image, width: dimensions[0], height: dimensions[1]]
|
67
|
+
end
|
66
68
|
page[:nokogiri_parsed_document] = doc
|
67
69
|
page
|
68
70
|
end
|
@@ -93,15 +95,15 @@ module Embedify
|
|
93
95
|
img_srcs.each do |img_src|
|
94
96
|
dimensions = FastImage.size(img_src)
|
95
97
|
#puts "#{img_src} #{dimensions.to_s}"
|
96
|
-
document.image.add(url: img_src) if image_is_big_enough?(dimensions) && image_has_good_proportions?(dimensions)
|
98
|
+
document.image.add(url: img_src, width: dimensions[0], height: dimensions[1]) if image_is_big_enough?(dimensions) && image_has_good_proportions?(dimensions)
|
97
99
|
img_src_count = img_src_count + 1
|
98
100
|
return if(img_src_count > 10)
|
99
101
|
end
|
100
102
|
end
|
101
103
|
end
|
102
104
|
|
103
|
-
def self.make_absolute(
|
104
|
-
URI.parse(root).merge(URI.parse(href)).to_s
|
105
|
+
def self.make_absolute(href, root)
|
106
|
+
Addressable::URI.parse(root).merge(Addressable::URI.parse(href)).to_s
|
105
107
|
end
|
106
108
|
|
107
109
|
def self.image_is_big_enough?(dimensions)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embedify
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
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: 2012-
|
12
|
+
date: 2012-05-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: nokogiri
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &71557690 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,15 +21,10 @@ dependencies:
|
|
21
21
|
version: 1.5.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ~>
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: 1.5.0
|
24
|
+
version_requirements: *71557690
|
30
25
|
- !ruby/object:Gem::Dependency
|
31
26
|
name: hashie
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &71555970 !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
34
29
|
requirements:
|
35
30
|
- - ! '>='
|
@@ -37,15 +32,10 @@ dependencies:
|
|
37
32
|
version: '0'
|
38
33
|
type: :runtime
|
39
34
|
prerelease: false
|
40
|
-
version_requirements:
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
35
|
+
version_requirements: *71555970
|
46
36
|
- !ruby/object:Gem::Dependency
|
47
37
|
name: faraday
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &71555080 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
40
|
requirements:
|
51
41
|
- - ! '>='
|
@@ -53,15 +43,10 @@ dependencies:
|
|
53
43
|
version: '0'
|
54
44
|
type: :runtime
|
55
45
|
prerelease: false
|
56
|
-
version_requirements:
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
46
|
+
version_requirements: *71555080
|
62
47
|
- !ruby/object:Gem::Dependency
|
63
48
|
name: faraday_middleware
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &71554590 !ruby/object:Gem::Requirement
|
65
50
|
none: false
|
66
51
|
requirements:
|
67
52
|
- - ! '>='
|
@@ -69,15 +54,10 @@ dependencies:
|
|
69
54
|
version: '0'
|
70
55
|
type: :runtime
|
71
56
|
prerelease: false
|
72
|
-
version_requirements:
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ! '>='
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: '0'
|
57
|
+
version_requirements: *71554590
|
78
58
|
- !ruby/object:Gem::Dependency
|
79
59
|
name: hashie
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirement: &71553910 !ruby/object:Gem::Requirement
|
81
61
|
none: false
|
82
62
|
requirements:
|
83
63
|
- - ! '>='
|
@@ -85,15 +65,10 @@ dependencies:
|
|
85
65
|
version: '0'
|
86
66
|
type: :runtime
|
87
67
|
prerelease: false
|
88
|
-
version_requirements:
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ! '>='
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: '0'
|
68
|
+
version_requirements: *71553910
|
94
69
|
- !ruby/object:Gem::Dependency
|
95
70
|
name: addressable
|
96
|
-
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirement: &71553380 !ruby/object:Gem::Requirement
|
97
72
|
none: false
|
98
73
|
requirements:
|
99
74
|
- - ! '>='
|
@@ -101,15 +76,10 @@ dependencies:
|
|
101
76
|
version: '0'
|
102
77
|
type: :runtime
|
103
78
|
prerelease: false
|
104
|
-
version_requirements:
|
105
|
-
none: false
|
106
|
-
requirements:
|
107
|
-
- - ! '>='
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '0'
|
79
|
+
version_requirements: *71553380
|
110
80
|
- !ruby/object:Gem::Dependency
|
111
81
|
name: fastimage
|
112
|
-
requirement: !ruby/object:Gem::Requirement
|
82
|
+
requirement: &71720800 !ruby/object:Gem::Requirement
|
113
83
|
none: false
|
114
84
|
requirements:
|
115
85
|
- - ! '>='
|
@@ -117,15 +87,10 @@ dependencies:
|
|
117
87
|
version: '0'
|
118
88
|
type: :runtime
|
119
89
|
prerelease: false
|
120
|
-
version_requirements:
|
121
|
-
none: false
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: '0'
|
90
|
+
version_requirements: *71720800
|
126
91
|
- !ruby/object:Gem::Dependency
|
127
92
|
name: shoulda
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
+
requirement: &71720260 !ruby/object:Gem::Requirement
|
129
94
|
none: false
|
130
95
|
requirements:
|
131
96
|
- - ! '>='
|
@@ -133,15 +98,10 @@ dependencies:
|
|
133
98
|
version: '0'
|
134
99
|
type: :development
|
135
100
|
prerelease: false
|
136
|
-
version_requirements:
|
137
|
-
none: false
|
138
|
-
requirements:
|
139
|
-
- - ! '>='
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version: '0'
|
101
|
+
version_requirements: *71720260
|
142
102
|
- !ruby/object:Gem::Dependency
|
143
103
|
name: rdoc
|
144
|
-
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirement: &71719790 !ruby/object:Gem::Requirement
|
145
105
|
none: false
|
146
106
|
requirements:
|
147
107
|
- - ~>
|
@@ -149,15 +109,10 @@ dependencies:
|
|
149
109
|
version: '3.12'
|
150
110
|
type: :development
|
151
111
|
prerelease: false
|
152
|
-
version_requirements:
|
153
|
-
none: false
|
154
|
-
requirements:
|
155
|
-
- - ~>
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
version: '3.12'
|
112
|
+
version_requirements: *71719790
|
158
113
|
- !ruby/object:Gem::Dependency
|
159
114
|
name: bundler
|
160
|
-
requirement: !ruby/object:Gem::Requirement
|
115
|
+
requirement: &71719400 !ruby/object:Gem::Requirement
|
161
116
|
none: false
|
162
117
|
requirements:
|
163
118
|
- - ! '>='
|
@@ -165,15 +120,10 @@ dependencies:
|
|
165
120
|
version: '0'
|
166
121
|
type: :development
|
167
122
|
prerelease: false
|
168
|
-
version_requirements:
|
169
|
-
none: false
|
170
|
-
requirements:
|
171
|
-
- - ! '>='
|
172
|
-
- !ruby/object:Gem::Version
|
173
|
-
version: '0'
|
123
|
+
version_requirements: *71719400
|
174
124
|
- !ruby/object:Gem::Dependency
|
175
125
|
name: jeweler
|
176
|
-
requirement: !ruby/object:Gem::Requirement
|
126
|
+
requirement: &71718950 !ruby/object:Gem::Requirement
|
177
127
|
none: false
|
178
128
|
requirements:
|
179
129
|
- - ! '>='
|
@@ -181,15 +131,10 @@ dependencies:
|
|
181
131
|
version: '0'
|
182
132
|
type: :development
|
183
133
|
prerelease: false
|
184
|
-
version_requirements:
|
185
|
-
none: false
|
186
|
-
requirements:
|
187
|
-
- - ! '>='
|
188
|
-
- !ruby/object:Gem::Version
|
189
|
-
version: '0'
|
134
|
+
version_requirements: *71718950
|
190
135
|
- !ruby/object:Gem::Dependency
|
191
136
|
name: rspec
|
192
|
-
requirement: !ruby/object:Gem::Requirement
|
137
|
+
requirement: &71718490 !ruby/object:Gem::Requirement
|
193
138
|
none: false
|
194
139
|
requirements:
|
195
140
|
- - ! '>='
|
@@ -197,12 +142,7 @@ dependencies:
|
|
197
142
|
version: '0'
|
198
143
|
type: :development
|
199
144
|
prerelease: false
|
200
|
-
version_requirements:
|
201
|
-
none: false
|
202
|
-
requirements:
|
203
|
-
- - ! '>='
|
204
|
-
- !ruby/object:Gem::Version
|
205
|
-
version: '0'
|
145
|
+
version_requirements: *71718490
|
206
146
|
description: ! "Embedify is a ruby gem that parses and returns an\n embeddable
|
207
147
|
version of a page, similar to how Facebook fetches and retrieves\n page data
|
208
148
|
when posting a link."
|
@@ -246,7 +186,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
246
186
|
version: '0'
|
247
187
|
segments:
|
248
188
|
- 0
|
249
|
-
hash:
|
189
|
+
hash: 316289185
|
250
190
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
251
191
|
none: false
|
252
192
|
requirements:
|
@@ -255,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
255
195
|
version: '0'
|
256
196
|
requirements: []
|
257
197
|
rubyforge_project:
|
258
|
-
rubygems_version: 1.8.
|
198
|
+
rubygems_version: 1.8.15
|
259
199
|
signing_key:
|
260
200
|
specification_version: 3
|
261
201
|
summary: parses and returns an embeddable version of a page
|