31 lines
746 B
Ruby
31 lines
746 B
Ruby
|
|
class Admin::AccountLocksController < Admin::ApplicationController
|
||
|
|
before_action :set_account
|
||
|
|
|
||
|
|
def create
|
||
|
|
authorize :account_lock, :create?
|
||
|
|
@account.update(locked: true)
|
||
|
|
redirect_to admin_accounts_path, notice: 'Account locked'
|
||
|
|
end
|
||
|
|
|
||
|
|
def destroy
|
||
|
|
authorize :account_lock, :destroy?
|
||
|
|
@account.update(locked: false)
|
||
|
|
redirect_to admin_accounts_path, notice: 'Account unlocked'
|
||
|
|
end
|
||
|
|
|
||
|
|
private
|
||
|
|
|
||
|
|
def set_account
|
||
|
|
if params[:account_id].present?
|
||
|
|
@account = Account.find_by(slug: params[:account_id])
|
||
|
|
else
|
||
|
|
failure_redirect
|
||
|
|
end
|
||
|
|
rescue ActiveRecord::RecordNotFound
|
||
|
|
failure_redirect
|
||
|
|
end
|
||
|
|
|
||
|
|
def failure_redirect
|
||
|
|
redirect_to admin_accounts_path, alert: 'Failed to find the account'
|
||
|
|
end
|
||
|
|
end
|