about summary refs log tree commit diff
path: root/app
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2016-03-05 12:50:59 +0100
committerEugen Rochko <eugen@zeonfederated.com>2016-03-05 12:50:59 +0100
commit3b4e04dc32eba0f5b1ac11e2db2edd7ca7351291 (patch)
tree23388ff4b32bb07b5e8d09b62ac06ed25436d6cf /app
parent23d08c6749eb142b24f22045f643d0591af579ff (diff)
Fixing some bugs, adding pending test examples
Diffstat (limited to 'app')
-rw-r--r--app/controllers/accounts_controller.rb9
-rw-r--r--app/controllers/api/salmon_controller.rb2
-rw-r--r--app/controllers/api/subscriptions_controller.rb2
-rw-r--r--app/controllers/api_controller.rb3
-rw-r--r--app/views/accounts/show.atom.ruby2
-rw-r--r--app/views/xrd/webfinger.xml.ruby2
6 files changed, 16 insertions, 4 deletions
diff --git a/app/controllers/accounts_controller.rb b/app/controllers/accounts_controller.rb
index e96ef4a1c..2848ea62e 100644
--- a/app/controllers/accounts_controller.rb
+++ b/app/controllers/accounts_controller.rb
@@ -1,5 +1,6 @@
 class AccountsController < ApplicationController
   before_action :set_account
+  before_action :set_webfinger_header
 
   def show
     respond_to do |format|
@@ -13,4 +14,12 @@ class AccountsController < ApplicationController
   def set_account
     @account = Account.find_by!(username: params[:username], domain: nil)
   end
+
+  def set_webfinger_header
+    response.headers['Link'] = "<#{webfinger_account_url}>; rel=\"lrdd\"; type=\"application/xrd+xml\""
+  end
+
+  def webfinger_account_url
+    webfinger_url(resource: "acct:#{@account.acct}@#{Rails.configuration.x.local_domain}")
+  end
 end
diff --git a/app/controllers/api/salmon_controller.rb b/app/controllers/api/salmon_controller.rb
index 99ec15bff..1df989700 100644
--- a/app/controllers/api/salmon_controller.rb
+++ b/app/controllers/api/salmon_controller.rb
@@ -1,4 +1,4 @@
-class Api::SalmonController < ApplicationController
+class Api::SalmonController < ApiController
   before_action :set_account
 
   def update
diff --git a/app/controllers/api/subscriptions_controller.rb b/app/controllers/api/subscriptions_controller.rb
index 56deae10c..038d6c877 100644
--- a/app/controllers/api/subscriptions_controller.rb
+++ b/app/controllers/api/subscriptions_controller.rb
@@ -1,4 +1,4 @@
-class Api::SubscriptionsController < ApplicationController
+class Api::SubscriptionsController < ApiController
   before_action :set_account
 
   def show
diff --git a/app/controllers/api_controller.rb b/app/controllers/api_controller.rb
new file mode 100644
index 000000000..eb2e464eb
--- /dev/null
+++ b/app/controllers/api_controller.rb
@@ -0,0 +1,3 @@
+class ApiController < ApplicationController
+  protect_from_forgery with: :null_session
+end
diff --git a/app/views/accounts/show.atom.ruby b/app/views/accounts/show.atom.ruby
index 54f1185e4..eaa4c63b1 100644
--- a/app/views/accounts/show.atom.ruby
+++ b/app/views/accounts/show.atom.ruby
@@ -4,7 +4,7 @@ Nokogiri::XML::Builder.new do |xml|
     title      xml, @account.display_name
     subtitle   xml, @account.note
     updated_at xml, stream_updated_at
-    logo       xml, asset_url(@account.avatar.url(:medium))
+    logo       xml, asset_url(@account.avatar.url(:medium, false))
 
     author(xml) do
       include_author xml, @account
diff --git a/app/views/xrd/webfinger.xml.ruby b/app/views/xrd/webfinger.xml.ruby
index ac0fd3d0e..7c920b678 100644
--- a/app/views/xrd/webfinger.xml.ruby
+++ b/app/views/xrd/webfinger.xml.ruby
@@ -3,7 +3,7 @@ Nokogiri::XML::Builder.new do |xml|
     xml.Subject @canonical_account_uri
     xml.Alias url_for_target(@account)
     xml.Link(rel: 'http://webfinger.net/rel/profile-page', type: 'text/html', href: url_for_target(@account))
-    xml.Link(rel: 'http://schemas.google.com/g/2010#updates-from', type: 'application/atom+xml', href: atom_user_stream_url(id: @account.id))
+    xml.Link(rel: 'http://schemas.google.com/g/2010#updates-from', type: 'application/atom+xml', href: account_url(@account, format: 'atom'))
     xml.Link(rel: 'salmon', href: api_salmon_url(@account.id))
     xml.Link(rel: 'magic-public-key', href: @magic_key)
   end