From 8bac0350d16cb8e2770c089c91d71f8038404de5 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Wed, 19 Apr 2017 07:52:37 -0400 Subject: Restful refactor of accounts/ routes (#2133) * Add routing specs for accounts followers and following actions * Use more restful route naming for public account follow pages Moves two actions: - accounts#followers to accounts/follower_accounts#index - accounts#following to accounts/following_accounts#index Adds routing spec to ensure prior URLs are preserved. --- app/controllers/accounts_controller.rb | 37 +--------------------------------- 1 file changed, 1 insertion(+), 36 deletions(-) (limited to 'app/controllers/accounts_controller.rb') diff --git a/app/controllers/accounts_controller.rb b/app/controllers/accounts_controller.rb index d4f157614..8eda96336 100644 --- a/app/controllers/accounts_controller.rb +++ b/app/controllers/accounts_controller.rb @@ -1,12 +1,7 @@ # frozen_string_literal: true class AccountsController < ApplicationController - layout 'public' - - before_action :set_account - before_action :set_link_headers - before_action :authenticate_user!, only: [:follow, :unfollow] - before_action :check_account_suspension + include AccountControllerConcern def show respond_to do |format| @@ -24,39 +19,9 @@ class AccountsController < ApplicationController end end - def follow - FollowService.new.call(current_user.account, @account.acct) - redirect_to account_path(@account) - end - - def unfollow - UnfollowService.new.call(current_user.account, @account) - redirect_to account_path(@account) - end - - def followers - @followers = @account.followers.order('follows.created_at desc').page(params[:page]).per(12) - end - - def following - @following = @account.following.order('follows.created_at desc').page(params[:page]).per(12) - end - private def set_account @account = Account.find_local!(params[:username]) end - - def set_link_headers - response.headers['Link'] = LinkHeader.new([[webfinger_account_url, [%w(rel lrdd), %w(type application/xrd+xml)]], [account_url(@account, format: 'atom'), [%w(rel alternate), %w(type application/atom+xml)]]]) - end - - def webfinger_account_url - webfinger_url(resource: @account.to_webfinger_s) - end - - def check_account_suspension - gone if @account.suspended? - end end -- cgit