33 lines
745 B
Ruby
33 lines
745 B
Ruby
class Image < ActiveRecord::Base
|
|
attr_accessible :sizes
|
|
serialize :sizes
|
|
|
|
def sized(kind)
|
|
sizes[kind]
|
|
end
|
|
|
|
def load_artist_pics(artist_name)
|
|
sizes = begin
|
|
response = LastFM::Artist.get_info(artist: artist_name)
|
|
Hash[response["artist"]["image"].map{ |img| [img["size"], img["#text"]] }].symbolize_keys
|
|
rescue => e
|
|
{}
|
|
end
|
|
|
|
update_attributes(sizes: sizes)
|
|
self
|
|
end
|
|
|
|
def load_album_pic(artist_name, album_name)
|
|
sizes = begin
|
|
response = LastFM::Album.get_info(artist: artist_name, album: album_name)
|
|
Hash[response["album"]["image"].map{ |img| [img["size"], img["#text"]] }].symbolize_keys
|
|
rescue => e
|
|
{}
|
|
end
|
|
|
|
update_attributes(sizes: sizes)
|
|
self
|
|
end
|
|
end
|