aliases_controller.rb 905 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. # frozen_string_literal: true
  2. class Settings::AliasesController < Settings::BaseController
  3. layout 'admin'
  4. before_action :authenticate_user!
  5. before_action :set_aliases, except: :destroy
  6. before_action :set_alias, only: :destroy
  7. def index
  8. @alias = current_account.aliases.build
  9. end
  10. def create
  11. @alias = current_account.aliases.build(resource_params)
  12. if @alias.save
  13. redirect_to settings_aliases_path, notice: I18n.t('aliases.created_msg')
  14. else
  15. render :show
  16. end
  17. end
  18. def destroy
  19. @alias.destroy!
  20. redirect_to settings_aliases_path, notice: I18n.t('aliases.deleted_msg')
  21. end
  22. private
  23. def resource_params
  24. params.require(:account_alias).permit(:acct)
  25. end
  26. def set_alias
  27. @alias = current_account.aliases.find(params[:id])
  28. end
  29. def set_aliases
  30. @aliases = current_account.aliases.order(id: :desc).reject(&:new_record?)
  31. end
  32. end