Class: Ebooks::Sync

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

Class Method Summary collapse

Class Method Details

.get(url, destination) ⇒ Object



43
44
45
46
47
48
49
# File 'lib/bot_twitter_ebooks/sync.rb', line 43

def self.get(url, destination)
  File.open(destination, "wb") do |saved_file|
    open(url, "rb") do |read_file|
      saved_file.write(read_file.read)
    end
  end
end

.run(botname, username) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/bot_twitter_ebooks/sync.rb', line 13

def self.run(botname, username)
  bot = Ebooks::Bot.get(botname)
  bot.configure
  source_user = username
  ebooks_user = bot.username
  user = bot.twitter.user(source_user)
  if user.profile_image_url then
    Ebooks::Sync::get(user.profile_image_url(:original), "image/#{source_user}_avatar")
    avatar = MiniMagick::Image.open("image/#{source_user}_avatar")
    avatar.flip
    avatar.write("image/#{ebooks_user}_avatar")
    avatar64 = Base64.encode64(File.read("image/#{ebooks_user}_avatar"))
    bot.twitter.update_profile_image(avatar64)
    p "Updated profile image for #{ebooks_user} from #{source_user}."
  else
    p "#{source_user} does not have a profile image to clone."
  end
  if user.profile_banner_url then
    Ebooks::Sync::get(user.profile_banner_url, "image/#{source_user}banner")
    banner = MiniMagick::Image.open("image/#{source_user}banner")
    banner.flip
    banner.write("image/#{ebooks_user}_banner")
    banner64 = Base64.encode64(File.read("image/#{ebooks_user}_banner"))
    bot.twitter.update_profile_banner(banner64)
    p "Updated cover image for #{ebooks_user} from #{source_user}."
  else
    p "#{source_user} does not have a cover image to clone."
  end
end