rack_image_resizer 1.4.7 → 1.4.8

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rack_image_resizer.rb +12 -8
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 54fab881b7d16a884721acc9f96fa958263fa5e5707f78f198fbe80ea40ea2c4
4
- data.tar.gz: 2d589eb64de4e0d12647e27fb0051162500c7d22ab43e058a03f3fc8e6602bd6
3
+ metadata.gz: 92daa532b791248750d576e516beb091d452a26babca11c1c272e190f01d4e96
4
+ data.tar.gz: a93f3dfe6fbd3ea88287410dde9289e37e6c3de7affd280e59c659e482d26fa6
5
5
  SHA512:
6
- metadata.gz: 70ad7202de35d22449c08234ddfecadef23ce23cfb6a55d28291c7a128cde2f9007cb7559799e1faac3d3d35e642633dcdf80c7902d74a73976d8dab7a3ba9fb
7
- data.tar.gz: 939a250a1086b7cc8fa0c4a8d299574c1772c7833c02156d78b5051faa96cee04ebc581771b21828622db413249ded712ef74f38fbe8c737b06a4488a14d9f9d
6
+ metadata.gz: 2604b6c579f25b4b581c936f6873ad618f4fdb07ba27e7d041add4ab3bcf2efad57e3f3ba977d7a0f20838048c1dd521aed5844eeb5d6fc7f3b43edd47cd28df
7
+ data.tar.gz: 3d637ae4e2bdbd8aba6515882d7d774b99e92c28e8978c8a78aacae3b145e7b6a4dcbde09ff2cb88f0935528e2734a4e1ff9b83ab4a9f88f0fd2a5078d14b746
@@ -7,7 +7,7 @@ module ::RackImageResizer
7
7
  extend self
8
8
 
9
9
  def set name, value
10
- raise 'not allowed' unless [:secret, :url, :host].include?(name)
10
+ raise 'not allowed' unless [:secret, :server, :host].include?(name)
11
11
  instance_variable_set '@%s' % name, value
12
12
  end
13
13
 
@@ -15,6 +15,10 @@ module ::RackImageResizer
15
15
  instance_variable_get('@%s' % name) || ENV.fetch('RESIZER_%s' % name.to_s.upcase)
16
16
  end
17
17
 
18
+ def prefix_it url
19
+ url[0,1] == '/' ? get(:host) + url : url
20
+ end
21
+
18
22
  ###
19
23
 
20
24
  def build opts
@@ -22,16 +26,16 @@ module ::RackImageResizer
22
26
  opts[:s] ||= opts.delete(:size) if opts[:size]
23
27
  opts[:e] ||= opts.delete(:onerror) if opts[:onerror]
24
28
 
25
- opts[:e] = get(:host) + opts[:e] if opts[:e] && opts[:e] !~ %r{^https?://}
26
-
27
29
  # return empty pixel unless self
28
30
  return "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" if opts[:i].to_s == ''
29
31
 
30
- # add host as prefix to image if relative
31
- opts[:i] = get(:host) + opts[:i] if opts[:i][0,1] == '/'
32
+ # add host as prefix to images if relative given
33
+ opts[:i] = prefix_it opts[:i]
34
+ opts[:e] = prefix_it opts[:e] if opts[:e]
32
35
 
33
36
  raise ArgumentError.new('Invalid URL, no https?:// found') unless opts[:i] =~ %r{^https?://}
34
37
 
38
+ # reduce size of a hash by stripping 'https?://' - 7 characters
35
39
  opts[:i] = opts[:i].sub(%r{^(\w+)://}, '')
36
40
  prefix = $1 == 'https' ? 's' : 'p'
37
41
  opts[:i] = prefix + opts[:i]
@@ -41,8 +45,8 @@ module ::RackImageResizer
41
45
  # add base
42
46
  data.push Base64.urlsafe_encode64(opts.to_json).gsub(/=*\s*$/, '')
43
47
 
44
- # add check
45
- data.push Digest::SHA1.hexdigest(get(:secret)+data.first)[0,4]
48
+ # add check, 2 chars
49
+ data.push Digest::SHA1.hexdigest(get(:secret)+data.first)[0,2]
46
50
 
47
51
  # add extension
48
52
  ext = opts[:i].split('.').last.to_s.downcase
@@ -50,6 +54,6 @@ module ::RackImageResizer
50
54
  data.push '.%s' % ext
51
55
 
52
56
  # return full url
53
- [get(:url), data.join('')].join('/r/')
57
+ [get(:server), data.join('')].join('/r/')
54
58
  end
55
59
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack_image_resizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.7
4
+ version: 1.4.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dino Reic