about summary refs log tree commit diff
path: root/app
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2019-08-01 19:14:02 +0200
committerGitHub <noreply@github.com>2019-08-01 19:14:02 +0200
commit8b9d0a05337b6bcf57b51abf45e21d9474bf2684 (patch)
treecc43f34fe2c2a7f9cf05a6c479bb9d624770407b /app
parent706a48ee1f2075ffb35ad4ad9cfc2f23fffbffcb (diff)
Remove XML version of Webfinger and remove links to Atom feeds (#11460)
Fix #11453
Diffstat (limited to 'app')
-rw-r--r--app/controllers/well_known/webfinger_controller.rb11
-rw-r--r--app/serializers/webfinger_serializer.rb1
-rw-r--r--app/views/accounts/show.html.haml1
-rw-r--r--app/views/well_known/webfinger/show.xml.ruby51
4 files changed, 1 insertions, 63 deletions
diff --git a/app/controllers/well_known/webfinger_controller.rb b/app/controllers/well_known/webfinger_controller.rb
index 53f7f1e27..50bace217 100644
--- a/app/controllers/well_known/webfinger_controller.rb
+++ b/app/controllers/well_known/webfinger_controller.rb
@@ -9,17 +9,8 @@ module WellKnown
     def show
       @account = Account.find_local!(username_from_resource)
 
-      respond_to do |format|
-        format.any(:json, :html) do
-          render json: @account, serializer: WebfingerSerializer, content_type: 'application/jrd+json'
-        end
-
-        format.xml do
-          render content_type: 'application/xrd+xml'
-        end
-      end
-
       expires_in 3.days, public: true
+      render json: @account, serializer: WebfingerSerializer, content_type: 'application/jrd+json'
     rescue ActiveRecord::RecordNotFound
       head 404
     end
diff --git a/app/serializers/webfinger_serializer.rb b/app/serializers/webfinger_serializer.rb
index 008d0c182..c67363b8f 100644
--- a/app/serializers/webfinger_serializer.rb
+++ b/app/serializers/webfinger_serializer.rb
@@ -26,7 +26,6 @@ class WebfingerSerializer < ActiveModel::Serializer
     else
       [
         { rel: 'http://webfinger.net/rel/profile-page', type: 'text/html', href: short_account_url(object) },
-        { rel: 'http://schemas.google.com/g/2010#updates-from', type: 'application/atom+xml', href: account_url(object, format: 'atom') },
         { rel: 'self', type: 'application/activity+json', href: account_url(object) },
         { rel: 'http://ostatus.org/schema/1.0/subscribe', template: "#{authorize_interaction_url}?uri={uri}" },
       ]
diff --git a/app/views/accounts/show.html.haml b/app/views/accounts/show.html.haml
index 6846abeb6..bf7a9f5f7 100644
--- a/app/views/accounts/show.html.haml
+++ b/app/views/accounts/show.html.haml
@@ -7,7 +7,6 @@
   - if @account.user&.setting_noindex
     %meta{ name: 'robots', content: 'noindex, noarchive' }/
 
-  %link{ rel: 'alternate', type: 'application/atom+xml', href: account_url(@account, format: 'atom') }/
   %link{ rel: 'alternate', type: 'application/rss+xml', href: account_url(@account, format: 'rss') }/
   %link{ rel: 'alternate', type: 'application/activity+json', href: ActivityPub::TagManager.instance.uri_for(@account) }/
 
diff --git a/app/views/well_known/webfinger/show.xml.ruby b/app/views/well_known/webfinger/show.xml.ruby
deleted file mode 100644
index f5a54052a..000000000
--- a/app/views/well_known/webfinger/show.xml.ruby
+++ /dev/null
@@ -1,51 +0,0 @@
-doc = Ox::Document.new(version: '1.0')
-
-doc << Ox::Element.new('XRD').tap do |xrd|
-  xrd['xmlns'] = 'http://docs.oasis-open.org/ns/xri/xrd-1.0'
-
-  xrd << (Ox::Element.new('Subject') << @account.to_webfinger_s)
-
-  if @account.instance_actor?
-    xrd << (Ox::Element.new('Alias') << instance_actor_url)
-
-    xrd << Ox::Element.new('Link').tap do |link|
-      link['rel']      = 'http://webfinger.net/rel/profile-page'
-      link['type']     = 'text/html'
-      link['href']     = about_more_url(instance_actor: true)
-    end
-
-    xrd << Ox::Element.new('Link').tap do |link|
-      link['rel']      = 'self'
-      link['type']     = 'application/activity+json'
-      link['href']     = instance_actor_url
-    end
-  else
-    xrd << (Ox::Element.new('Alias') << short_account_url(@account))
-    xrd << (Ox::Element.new('Alias') << account_url(@account))
-
-    xrd << Ox::Element.new('Link').tap do |link|
-      link['rel']      = 'http://webfinger.net/rel/profile-page'
-      link['type']     = 'text/html'
-      link['href']     = short_account_url(@account)
-    end
-
-    xrd << Ox::Element.new('Link').tap do |link|
-      link['rel']      = 'http://schemas.google.com/g/2010#updates-from'
-      link['type']     = 'application/atom+xml'
-      link['href']     = account_url(@account, format: 'atom')
-    end
-
-    xrd << Ox::Element.new('Link').tap do |link|
-      link['rel']      = 'self'
-      link['type']     = 'application/activity+json'
-      link['href']     = account_url(@account)
-    end
-
-    xrd << Ox::Element.new('Link').tap do |link|
-      link['rel']      = 'http://ostatus.org/schema/1.0/subscribe'
-      link['template'] = "#{authorize_interaction_url}?acct={uri}"
-    end
-  end
-end
-
-('<?xml version="1.0" encoding="UTF-8"?>' + Ox.dump(doc, effort: :tolerant)).force_encoding('UTF-8')