Browse Source

Fix server error when failing to follow back followers from `/relationships` (#23787)

closed-social-glitch-2
Claire 1 year ago
committed by GitHub
parent
commit
f8bb4d0d6b
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 0 deletions
  1. +2
    -0
      app/controllers/relationships_controller.rb
  2. +6
    -0
      app/models/form/account_batch.rb
  3. +1
    -0
      config/locales/en.yml

+ 2
- 0
app/controllers/relationships_controller.rb View File

@ -19,6 +19,8 @@ class RelationshipsController < ApplicationController
@form.save
rescue ActionController::ParameterMissing
# Do nothing
rescue Mastodon::NotPermittedError, ActiveRecord::RecordNotFound
flash[:alert] = I18n.t('relationships.follow_failure') if action_from_button == 'follow'
ensure
redirect_to relationships_path(filter_params)
end

+ 6
- 0
app/models/form/account_batch.rb View File

@ -35,9 +35,15 @@ class Form::AccountBatch
private
def follow!
error = nil
accounts.each do |target_account|
FollowService.new.call(current_account, target_account)
rescue Mastodon::NotPermittedError, ActiveRecord::RecordNotFound => e
error ||= e
end
raise error if error.present?
end
def unfollow!

+ 1
- 0
config/locales/en.yml View File

@ -1408,6 +1408,7 @@ en:
confirm_remove_selected_followers: Are you sure you want to remove selected followers?
confirm_remove_selected_follows: Are you sure you want to remove selected follows?
dormant: Dormant
follow_failure: Could not follow some of the selected accounts.
follow_selected_followers: Follow selected followers
followers: Followers
following: Following

Loading…
Cancel
Save