extended_markdownizer 0.1.2 → 0.1.3

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.
@@ -17,6 +17,7 @@ Gem::Specification.new do |s|
17
17
  s.add_runtime_dependency 'activerecord', '>= 3.0.3'
18
18
  s.add_runtime_dependency 'rdiscount'
19
19
  s.add_runtime_dependency 'coderay'
20
+ s.add_runtime_dependency 'fastimage'
20
21
 
21
22
  s.add_development_dependency 'rocco'
22
23
  s.add_development_dependency 'git'
@@ -163,6 +163,23 @@ module ExtendedMarkdownizer
163
163
  return iframe
164
164
  end
165
165
  end
166
+
167
+ def detect_images(text)
168
+ text.gsub(/^(((http|https):\/\/)?)[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(([0-9]{1,5})?\/.*)?$/ix) do |url|
169
+ uri = url
170
+ if ($1 != 'http://')
171
+ uri = 'http://' + url
172
+ end
173
+ # Let's check if it's an image
174
+ if FastImage.type(url) != nil
175
+ return '<img src="'+uri+'">'
176
+ else
177
+ return "<a target=\"_blank\" href=\"#{uri}\">#{url.capitalize}</a>"
178
+ end
179
+
180
+ end
181
+
182
+ end
166
183
 
167
184
  private
168
185
 
@@ -228,6 +245,7 @@ module ExtendedMarkdownizer
228
245
  define_method :"render_#{attribute}" do
229
246
  processed_attribute = ExtendedMarkdownizer.youtube_embedded_videos(self.send(attribute))
230
247
  processed_attribute = ExtendedMarkdownizer.vimeo_embedded_videos(processed_attribute)
248
+ processed_attribute = ExtendedMarkdownizer.detect_images(processed_attribute)
231
249
  processed_attribute = ExtendedMarkdownizer.urls_into_anchors(processed_attribute)
232
250
  self.send(:"rendered_#{attribute}=", ExtendedMarkdownizer.markdown(ExtendedMarkdownizer.coderay(processed_attribute, options), hierarchy))
233
251
  end
@@ -1,3 +1,3 @@
1
1
  module ExtendedMarkdownizer
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: extended_markdownizer
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.2
5
+ version: 0.1.3
6
6
  platform: ruby
7
7
  authors:
8
8
  - "Jos\xC3\xA9 M. Gilgado"
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-08-07 00:00:00 Z
13
+ date: 2011-09-01 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activerecord
@@ -46,7 +46,7 @@ dependencies:
46
46
  type: :runtime
47
47
  version_requirements: *id003
48
48
  - !ruby/object:Gem::Dependency
49
- name: rocco
49
+ name: fastimage
50
50
  prerelease: false
51
51
  requirement: &id004 !ruby/object:Gem::Requirement
52
52
  none: false
@@ -54,10 +54,10 @@ dependencies:
54
54
  - - ">="
55
55
  - !ruby/object:Gem::Version
56
56
  version: "0"
57
- type: :development
57
+ type: :runtime
58
58
  version_requirements: *id004
59
59
  - !ruby/object:Gem::Dependency
60
- name: git
60
+ name: rocco
61
61
  prerelease: false
62
62
  requirement: &id005 !ruby/object:Gem::Requirement
63
63
  none: false
@@ -68,16 +68,27 @@ dependencies:
68
68
  type: :development
69
69
  version_requirements: *id005
70
70
  - !ruby/object:Gem::Dependency
71
- name: rspec
71
+ name: git
72
72
  prerelease: false
73
73
  requirement: &id006 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: "0"
79
+ type: :development
80
+ version_requirements: *id006
81
+ - !ruby/object:Gem::Dependency
82
+ name: rspec
83
+ prerelease: false
84
+ requirement: &id007 !ruby/object:Gem::Requirement
74
85
  none: false
75
86
  requirements:
76
87
  - - ~>
77
88
  - !ruby/object:Gem::Version
78
89
  version: 2.5.0
79
90
  type: :development
80
- version_requirements: *id006
91
+ version_requirements: *id007
81
92
  description: Render any text as markdown, with code highlighting, url detection and conversion of youtube/vimeo urls into embedded videos
82
93
  email:
83
94
  - jm.gilgado@gmail.com