33 lines
893 B
Ruby
33 lines
893 B
Ruby
desc 'Run the DundoFarms site'
|
|
task :s do
|
|
system 'rackup -p 8978'
|
|
end
|
|
|
|
namespace :ig do
|
|
desc 'update ig media cache'
|
|
task :media_sync do
|
|
client = InstagramBasicDisplayAPI.client(access_token: ENV['DUNDO_FARMS_IG_TOKEN'])
|
|
|
|
media = client.user_recent_media[:data].reduce([]) do |media, media_item|
|
|
if media_item[:media_type] == 'CAROUSEL_ALBUM'
|
|
media.concat client.media_children(media_item[:id])[:data]
|
|
media
|
|
else
|
|
media.append media_item
|
|
end
|
|
end
|
|
|
|
media.each do |media_item|
|
|
IGMedia.update(
|
|
id: media_item[:id],
|
|
media_url: media_item[:media_url],
|
|
media_type: media_item[:media_type],
|
|
thumbnail_url: media_item[:thumbnail_url],
|
|
permalink: media_item[:permalink],
|
|
caption: media_item[:caption],
|
|
timestamp: DateTime.parse(media_item[:timestamp])
|
|
)
|
|
end
|
|
end
|
|
end
|