You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1013 B
43 lines
1013 B
# frozen_string_literal: true
|
|
|
|
class Settings::AliasesController < Settings::BaseController
|
|
skip_before_action :require_functional!
|
|
|
|
before_action :require_not_suspended!
|
|
before_action :set_aliases, except: :destroy
|
|
before_action :set_alias, only: :destroy
|
|
|
|
def index
|
|
@alias = current_account.aliases.build
|
|
end
|
|
|
|
def create
|
|
@alias = current_account.aliases.build(resource_params)
|
|
|
|
if @alias.save
|
|
ActivityPub::UpdateDistributionWorker.perform_async(current_account.id)
|
|
redirect_to settings_aliases_path, notice: I18n.t('aliases.created_msg')
|
|
else
|
|
render :index
|
|
end
|
|
end
|
|
|
|
def destroy
|
|
@alias.destroy!
|
|
redirect_to settings_aliases_path, notice: I18n.t('aliases.deleted_msg')
|
|
end
|
|
|
|
private
|
|
|
|
def resource_params
|
|
params.require(:account_alias).permit(:acct)
|
|
end
|
|
|
|
def set_alias
|
|
@alias = current_account.aliases.find(params[:id])
|
|
end
|
|
|
|
def set_aliases
|
|
@aliases = current_account.aliases.order(id: :desc).reject(&:new_record?)
|
|
end
|
|
end
|
|
|