Module: Down::Utils

Defined in:
lib/down/utils.rb

Class Method Summary collapse

Class Method Details

.filename_from_content_disposition(content_disposition) ⇒ Object

Retrieves potential filename from the “Content-Disposition” header.



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/down/utils.rb', line 8

def filename_from_content_disposition(content_disposition)
  content_disposition = content_disposition.to_s

  escaped_filename =
    content_disposition[/filename\*=UTF-8''(\S+)/, 1] ||
    content_disposition[/filename="([^"]*)"/, 1] ||
    content_disposition[/filename=(\S+)/, 1]

  filename = CGI.unescape(escaped_filename.to_s)

  filename unless filename.empty?
end

.filename_from_path(path) ⇒ Object

Retrieves potential filename from the URL path.



22
23
24
25
# File 'lib/down/utils.rb', line 22

def filename_from_path(path)
  filename = path.split("/").last
  CGI.unescape(filename) if filename
end