about summary refs log tree commit diff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/controllers/accounts_controller.rb2
-rw-r--r--app/controllers/api/activitypub/accounts_controller.rb18
-rw-r--r--app/views/accounts/show.html.haml1
-rw-r--r--app/views/accounts/show.rabl (renamed from app/views/api/activitypub/accounts/show.rabl)5
-rw-r--r--app/views/activitypub/base.rabl1
-rw-r--r--app/views/activitypub/intransient.rabl3
-rw-r--r--app/views/activitypub/types/person.rabl3
7 files changed, 11 insertions, 22 deletions
diff --git a/app/controllers/accounts_controller.rb b/app/controllers/accounts_controller.rb
index 411a41ccc..b837f006e 100644
--- a/app/controllers/accounts_controller.rb
+++ b/app/controllers/accounts_controller.rb
@@ -18,6 +18,8 @@ class AccountsController < ApplicationController
       format.atom do
         @entries = @account.stream_entries.order('id desc').where(hidden: false).with_includes.paginate_by_max_id(20, params[:max_id], params[:since_id])
       end
+
+      format.activitystreams2
     end
   end
 
diff --git a/app/controllers/api/activitypub/accounts_controller.rb b/app/controllers/api/activitypub/accounts_controller.rb
deleted file mode 100644
index 82936f062..000000000
--- a/app/controllers/api/activitypub/accounts_controller.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-# frozen_string_literal: true
-
-class Api::Activitypub::AccountsController < ApiController
-  before_action :set_account
-
-  respond_to :'application/activity+json'
-  respond_to :'application/ld+json; profile="https://www.w3.org/ns/activitystreams#"'
-
-  def show
-    render content_type: :'application/ld+json; profile="https://www.w3.org/ns/activitystreams#"'
-  end
-
-  private
-
-  def set_account
-    @account = Account.find(params[:id])
-  end
-end
diff --git a/app/views/accounts/show.html.haml b/app/views/accounts/show.html.haml
index cd5398908..c194ce33d 100644
--- a/app/views/accounts/show.html.haml
+++ b/app/views/accounts/show.html.haml
@@ -4,7 +4,6 @@
 - content_for :header_tags do
   %link{ rel: 'salmon', href: api_salmon_url(@account.id) }/
   %link{ rel: 'alternate', type: 'application/atom+xml', href: account_url(@account, format: 'atom') }/
-  %link{ rel: 'alternate', type: 'application/ld+json; profile="https://www.w3.org/ns/activitystreams#"', href: "http://mastodon.dev/api/v1/activitypub/accounts/#{@account.username}" }/
 
   %meta{ property: 'og:site_name', content: 'Mastodon' }/
   %meta{ property: 'og:type', content: 'profile' }/
diff --git a/app/views/api/activitypub/accounts/show.rabl b/app/views/accounts/show.rabl
index 806789d00..76aa4a809 100644
--- a/app/views/api/activitypub/accounts/show.rabl
+++ b/app/views/accounts/show.rabl
@@ -1,8 +1,7 @@
+extends 'activitypub/types/person.rabl'
+
 object @account
 
-node(:'@context')         { 'https://www.w3.org/ns/activitystreams' }
-node(:type)               { 'Person' }
-node(:id)                 { request.original_url }
 node(:url)                { |account| TagManager.instance.url_for(account) }
 node(:name)               { |account| account.display_name }
 node(:preferredUsername)  { |account| account.username }
diff --git a/app/views/activitypub/base.rabl b/app/views/activitypub/base.rabl
new file mode 100644
index 000000000..c5e94997a
--- /dev/null
+++ b/app/views/activitypub/base.rabl
@@ -0,0 +1 @@
+node(:'@context') { 'https://www.w3.org/ns/activitystreams' }
diff --git a/app/views/activitypub/intransient.rabl b/app/views/activitypub/intransient.rabl
new file mode 100644
index 000000000..21261f56d
--- /dev/null
+++ b/app/views/activitypub/intransient.rabl
@@ -0,0 +1,3 @@
+extends 'activitypub/base.rabl'
+
+node(:id) { request.original_url }
diff --git a/app/views/activitypub/types/person.rabl b/app/views/activitypub/types/person.rabl
new file mode 100644
index 000000000..17c53bb7b
--- /dev/null
+++ b/app/views/activitypub/types/person.rabl
@@ -0,0 +1,3 @@
+extends 'activitypub/intransient.rabl'
+
+node(:type) { 'Person' }
\ No newline at end of file