Class: CSSHTTPRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/csshttprequest.rb

Constant Summary collapse

PREFIX =
"data:,".freeze
LENGTH =

Internet Explorer 2KB URI limit

(2000 - PREFIX.size).freeze

Class Method Summary collapse

Class Method Details

.encode(str) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/csshttprequest.rb', line 13

def self.encode(str)
  quoted = ERB::Util.url_encode(str)
  slice_num = 0
  last_start = 0
  chunks = (quoted.length.to_f / LENGTH).ceil
  output = ""
  chunks.times do |n|
    finish = last_start + LENGTH
    output += "#c%d{background:url(%s%s);}\n" % [slice_num, PREFIX, quoted[last_start...finish]]
    slice_num += 1
    last_start = finish
  end
  output
end