alula 0.4.15 → 0.4.16
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/alula/config.rb +2 -1
- data/lib/alula/contents/item.rb +19 -0
- data/lib/alula/core_ext/tags/image.rb +3 -3
- data/lib/alula/processors/image.rb +1 -1
- data/lib/alula/processors/magick.rb +2 -1
- data/lib/alula/version.rb +1 -1
- metadata +2 -2
data/lib/alula/config.rb
CHANGED
@@ -127,7 +127,8 @@ module Alula
|
|
127
127
|
"image" => {
|
128
128
|
"size" => "800x600",
|
129
129
|
"thumbnail" => "300x300",
|
130
|
-
"thumbnail_mode" => :
|
130
|
+
"thumbnail_mode" => :aspect,
|
131
|
+
"image_mode" => :aspect,
|
131
132
|
"keep_tags" => ["CopyrightNotice", "Title", "DateTimeOriginal"],
|
132
133
|
"hires" => true,
|
133
134
|
"lazyload" => true,
|
data/lib/alula/contents/item.rb
CHANGED
@@ -5,6 +5,7 @@ require 'kramdown'
|
|
5
5
|
require 'stringex'
|
6
6
|
require 'shellwords'
|
7
7
|
require 'htmlentities'
|
8
|
+
require 'nokogiri'
|
8
9
|
|
9
10
|
module Alula
|
10
11
|
class Content
|
@@ -202,6 +203,23 @@ module Alula
|
|
202
203
|
end
|
203
204
|
|
204
205
|
# Accessors
|
206
|
+
def description(locale = nil)
|
207
|
+
@description[(locale || self.current_locale || self.site.config.locale)] ||= begin
|
208
|
+
@metadata.description(locale) || begin
|
209
|
+
doc = Nokogiri::HTML(self.body(locale))
|
210
|
+
words = doc.text.split(' ')
|
211
|
+
summary = words.inject("") do |summary, word|
|
212
|
+
if (summary + " #{word}").length < 152
|
213
|
+
summary += "#{word} "
|
214
|
+
else
|
215
|
+
summary += "..." unless summary[/\.\.\.$/]
|
216
|
+
end
|
217
|
+
summary
|
218
|
+
end
|
219
|
+
end
|
220
|
+
end
|
221
|
+
end
|
222
|
+
|
205
223
|
def current_locale
|
206
224
|
@@current_locale ||= nil
|
207
225
|
end
|
@@ -319,6 +337,7 @@ module Alula
|
|
319
337
|
flush_render
|
320
338
|
@markdown = {}
|
321
339
|
@body = {}
|
340
|
+
@description = {}
|
322
341
|
end
|
323
342
|
|
324
343
|
def flush_render
|
@@ -16,7 +16,7 @@ module Alula
|
|
16
16
|
def content
|
17
17
|
hires = hires_url(@source, :image)
|
18
18
|
tag = "<a href=\"#{attachment_url(@source, :image)}\""
|
19
|
-
tag += " data-hires=\"#{hires}\"" if context.site.config.attachments["image"]["hires"] and hires and self.context.item.metadata.renderer.class.to_s
|
19
|
+
tag += " data-hires=\"#{hires}\"" if context.site.config.attachments["image"]["hires"] and hires and !self.context.item.metadata.renderer.class.to_s[/FeedBuilder/]
|
20
20
|
tag += ">"
|
21
21
|
tag += imagetag(@source, :thumbnail)
|
22
22
|
tag += "</a>"
|
@@ -32,13 +32,13 @@ module Alula
|
|
32
32
|
tag += " alt=\"#{@options["alternative"]}\"" if @options["alternative"]
|
33
33
|
tag += " title=\"#{@options["title"]}\"" if @options["title"]
|
34
34
|
tag += " class=\"#{classes.join(" ")}\""
|
35
|
-
if context.site.config.attachments.image.lazyload and self.context.item.metadata.renderer.class.to_s
|
35
|
+
if context.site.config.attachments.image.lazyload and !self.context.item.metadata.renderer.class.to_s[/FeedBuilder/]
|
36
36
|
tag += " src=\"#{asset_url("grey.gif")}\""
|
37
37
|
tag += " data-original=\"#{src}\""
|
38
38
|
else
|
39
39
|
tag += " src=\"#{src}\""
|
40
40
|
end
|
41
|
-
tag += " data-hires=\"#{hires}\"" if context.site.config.attachments.image.hires and hires and self.context.item.metadata.renderer.class.to_s
|
41
|
+
tag += " data-hires=\"#{hires}\"" if context.site.config.attachments.image.hires and hires and !self.context.item.metadata.renderer.class.to_s[/FeedBuilder/]
|
42
42
|
tag += " width=\"#{info(source, type).width}\" height=\"#{info(source, type).height}\""
|
43
43
|
tag += " />"
|
44
44
|
end
|
@@ -28,7 +28,7 @@ module Alula
|
|
28
28
|
next if (width > self.info.width and height > self.info.height) and size[:hires]
|
29
29
|
|
30
30
|
# Generate resized image to output path
|
31
|
-
resize_image(output: output, size: size[:size])
|
31
|
+
resize_image(output: output, size: size[:size], type: size[:type])
|
32
32
|
end
|
33
33
|
|
34
34
|
# Cleanup ourself
|
@@ -13,7 +13,8 @@ module Alula
|
|
13
13
|
width, height = opts[:size]
|
14
14
|
|
15
15
|
# Generate resized image
|
16
|
-
|
16
|
+
resize_mode = self.site.config.attachments.image["#{opts[:type]}_mode"]
|
17
|
+
resized = case resize_mode
|
17
18
|
when :square
|
18
19
|
self.image.resize_to_fill(width, height)
|
19
20
|
else
|
data/lib/alula/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alula
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.16
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-08-
|
12
|
+
date: 2012-08-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: hashie
|