class PosterManager

Public Instance Methods

construct_name() click to toggle source
# File lib/filmaffinity/poster-manager.rb, line 28
def construct_name
  (0...8).map { (65 + rand(26)).chr }.join
end
load_poster(posterurl) click to toggle source
# File lib/filmaffinity/poster-manager.rb, line 5
def load_poster(posterurl)
  return posterurl unless FilmAffinity.configuration.imgur_id
  upload(posterurl, FilmAffinity.configuration.imgur_id)
end
save_img_locally(posterurl) click to toggle source
# File lib/filmaffinity/poster-manager.rb, line 20
def save_img_locally(posterurl)
  open(posterurl) do |f|
    File.open(@dir, 'wb') do |file|
      file.puts f.read
    end
  end
end
upload(posterurl, api_id) click to toggle source
# File lib/filmaffinity/poster-manager.rb, line 10
def upload(posterurl, api_id)
  imgur = Imgur.new(api_id)
  @dir = __dir__ + '/' + construct_name + '.jpg'
  save_img_locally(posterurl)
  local_image = Imgur::LocalImage.new(@dir)
  uploaded = imgur.upload(local_image)
  File.delete(@dir)
  uploaded.link
end