diff options
author | Thibaut Girka <thib@sitedethib.com> | 2018-08-10 15:39:06 +0200 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2018-08-10 16:22:31 +0200 |
commit | e5a603206dfa76e2cd1b8a7fbb940fbd844b436c (patch) | |
tree | c3271f86b91ce2d13aea4f111dad6da4d07dcc04 /app/controllers/api/v1 | |
parent | 90b492143dae5cbaf884b12fbfd823c9f65d392f (diff) | |
parent | 5b8603879f06573d51c5c33edda6f410d1af7a02 (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: app/controllers/accounts_controller.rb app/javascript/mastodon/locales/pl.json app/views/about/more.html.haml Conflicts in `accounts_controller.rb` resolved by taking upstream's version + our `use_pack`. Conflicts in `pl.json` resolved by taking upstream's changes. Conflicts in `aboute/more.html.haml` resolved by taking upstream's changes.
Diffstat (limited to 'app/controllers/api/v1')
-rw-r--r-- | app/controllers/api/v1/accounts/pins_controller.rb | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/app/controllers/api/v1/accounts/pins_controller.rb b/app/controllers/api/v1/accounts/pins_controller.rb new file mode 100644 index 000000000..0a0239c42 --- /dev/null +++ b/app/controllers/api/v1/accounts/pins_controller.rb @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +class Api::V1::Accounts::PinsController < Api::BaseController + include Authorization + + before_action -> { doorkeeper_authorize! :write, :'write:accounts' } + before_action :require_user! + before_action :set_account + + respond_to :json + + def create + AccountPin.create!(account: current_account, target_account: @account) + render json: @account, serializer: REST::RelationshipSerializer, relationships: relationships_presenter + end + + def destroy + pin = AccountPin.find_by(account: current_account, target_account: @account) + pin&.destroy! + render json: @account, serializer: REST::RelationshipSerializer, relationships: relationships_presenter + end + + private + + def set_account + @account = Account.find(params[:account_id]) + end + + def relationships_presenter + AccountRelationshipsPresenter.new([@account.id], current_user.account_id) + end +end |