Method: EmbebbedFile::Type#for

Defined in:
lib/asker/loader/embedded_file/type.rb

#for(value, localdir) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/asker/loader/embedded_file/type.rb', line 4

def for(value, localdir)
  if is_url? value
    return :image_url if is_image? value
    return :audio_url if is_audio? value
    return :video_url if is_video? value

    Logger.error "EmbebbedFile::Type.for: Unknown URL type (#{value})"
    exit 1
  end

  filepath = File.join(localdir, value)
  unless File.exist?(filepath)
    Logger.error "EmbeddedFile::Type.for: File does not exist (#{filepath})"
    exit 1
  end

  return :image if is_image? value
  return :audio if is_audio? value
  return :video if is_video? value

  :text
end