ruby-sapporo/sapporo.rubykaigi.org — pull request #140 by tricknotes (2012-09-21 09:52:19+00:00)
Title: Gravatar icon

今までは [usericons](http://usericons.relucks.org) というサービスを利用してアイコン画像を表示していましたが、最近このサービスの調子が悪いので gravatar から直接画像を取得するようにしました。

また、yaml で管理している github アカウントから gravatar id を取得するために、以下のコードを使いました。
``` ruby
#!/usr/bin/env ruby
require 'yaml'
require 'octokit'

Dir['presentations/*.yml'].each do |path|
rows = File.readlines(path)
github_row = rows.detect {|row| row =~ /^ +github: / }
next unless github_row
gravatar_row = github_row.sub('github: ', 'gravatar: ')

data = YAML.load_file(path)
data['presenters'].each do |presenter|
[*presenter['github']].each do |github_account|
user_data = Octokit.user(github_account)
gravatar_id = user_data.gravatar_id
gravatar_row = gravatar_row.sub(github_account, gravatar_id)
end
end
rows.insert(rows.index(github_row) + 1, gravatar_row)
File.write(path, rows.join)
end
```