From e4f3dcddebcf6efef7fd9bdcb04a7399c4ccd112 Mon Sep 17 00:00:00 2001 From: Olivier Lacan Date: Sat, 12 Aug 2017 00:51:30 +0200 Subject: [PATCH] Add rake task to update user Slack avatars --- app/models/slacker.rb | 1 - lib/tasks/users.rake | 11 +++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 lib/tasks/users.rake diff --git a/app/models/slacker.rb b/app/models/slacker.rb index e1b7bfd..a55cfe2 100644 --- a/app/models/slacker.rb +++ b/app/models/slacker.rb @@ -14,7 +14,6 @@ def self.all slack_user_data.map { |data| self.new(data) } end - def self.find_by_email(email) all.select { |m| m.email == email }.first end diff --git a/lib/tasks/users.rake b/lib/tasks/users.rake new file mode 100644 index 0000000..fe158ab --- /dev/null +++ b/lib/tasks/users.rake @@ -0,0 +1,11 @@ +desc "Update Slack avatars" +task :update_slack_avatars => [:dependent, :tasks] do + users_with_broken_avatars = User.all.reject do |user| + Faraday.get(user.image).status == 200 + end + + users_with_broken_avatars.each do |user| + user.image = Slacker.find_by_id(user.slack_id).image + user.save + end +end