commit: 1b57d4dd3a64cdafd74a12ff67502795b06a4eb2
parent: d937a59997f60e9aa7a022d84792fc50473bf3d5
Author: nullkal <nullkal@nil.nu>
Date: Tue, 28 Nov 2017 22:31:23 +0900
Fix account migration feature (#5837)
* Make removable account migration
* Fix error during update of account migration setting
* Add notice when update account migration setting
Diffstat:
3 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/app/controllers/settings/migrations_controller.rb b/app/controllers/settings/migrations_controller.rb
@@ -12,13 +12,10 @@ class Settings::MigrationsController < ApplicationController
def update
@migration = Form::Migration.new(resource_params)
- if @migration.valid?
- if current_account.moved_to_account_id != @migration.account&.id
- current_account.update!(moved_to_account: @migration.account)
- ActivityPub::UpdateDistributionWorker.perform_async(@account.id)
- end
-
- redirect_to settings_migration_path
+ if @migration.valid? && migration_account_changed?
+ current_account.update!(moved_to_account: @migration.account)
+ ActivityPub::UpdateDistributionWorker.perform_async(current_account.id)
+ redirect_to settings_migration_path, notice: I18n.t('migrations.updated_msg')
else
render :show
end
@@ -29,4 +26,8 @@ class Settings::MigrationsController < ApplicationController
def resource_params
params.require(:migration).permit(:acct)
end
+
+ def migration_account_changed?
+ current_account.moved_to_account_id != @migration.account&.id
+ end
end
diff --git a/app/models/form/migration.rb b/app/models/form/migration.rb
@@ -5,8 +5,6 @@ class Form::Migration
attr_accessor :acct, :account
- validates :acct, presence: true
-
def initialize(attrs = {})
@account = attrs[:account]
@acct = attrs[:account].acct unless @account.nil?
@@ -22,6 +20,6 @@ class Form::Migration
private
def set_account
- self.account = ResolveRemoteAccountService.new.call(acct) if account.nil? && acct.present?
+ self.account = (ResolveRemoteAccountService.new.call(acct) if account.nil? && acct.present?)
end
end
diff --git a/config/locales/en.yml b/config/locales/en.yml
@@ -460,6 +460,7 @@ en:
acct: username@domain of the new account
currently_redirecting: 'Your profile is set to redirect to:'
proceed: Save
+ updated_msg: Your account migration setting successfully updated!
moderation:
title: Moderation
notification_mailer: