blob: 329f477634e868e24dba31fa18c6bb0f5640a52c (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 | class Webfinger::UserPresenter
  include Rails.application.routes.url_helpers
  attr_accessor :user
  def initialize(user, request)
    @user = user
    @request = request
  end
  def to_json(options = {})
    {
      subject: subject,
      links:   links
    }.to_json(options)
  end
  def subject
    "acct:#{@user.email_address}"
  end
  def links
    links = {}
    links[:public_key] = { type: 'PGP', href: key } if key
    return links
  end
  protected
  def key
    if @user.public_key.present?
      Base64.encode64(@user.public_key.to_s)
    end
  end
end
 |