Initial commit
This commit is contained in:
73
app/controllers/admin/accounts_controller.rb
Normal file
73
app/controllers/admin/accounts_controller.rb
Normal file
@@ -0,0 +1,73 @@
|
||||
class Admin::AccountsController < Admin::ApplicationController
|
||||
before_action :set_account, only: [:show, :edit, :update]
|
||||
|
||||
def index
|
||||
@accounts = filtered_accounts.order_by_name.paginate(page: params[:page])
|
||||
end
|
||||
|
||||
def new
|
||||
@account = build_account
|
||||
end
|
||||
|
||||
def create
|
||||
@account = build_account(account_params)
|
||||
if @account.save
|
||||
redirect_to account_auths_path({ account_id: @account.id }), notice: t(".notice")
|
||||
else
|
||||
render :new
|
||||
end
|
||||
end
|
||||
|
||||
def show
|
||||
@videos = filtered_account_videos.order(created_at: :desc, project_id: :desc).paginate(page: params[:page])
|
||||
end
|
||||
|
||||
def edit
|
||||
end
|
||||
|
||||
def update
|
||||
if @account.update(account_params)
|
||||
redirect_to admin_accounts_path, notice: t(".notice")
|
||||
else
|
||||
render :edit
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def set_account
|
||||
@account = find_account
|
||||
end
|
||||
|
||||
def find_account
|
||||
authorize accounts.find_by(slug: params[:id])
|
||||
end
|
||||
|
||||
def accounts
|
||||
policy_scope(Account)
|
||||
end
|
||||
|
||||
def build_account(params = {})
|
||||
authorize accounts.new(params)
|
||||
end
|
||||
|
||||
def account_params
|
||||
params.require(:account).permit(:name, :plan_uid)
|
||||
end
|
||||
|
||||
def filtered_accounts
|
||||
if params[:query].present?
|
||||
accounts.search(params[:query])
|
||||
else
|
||||
accounts
|
||||
end
|
||||
end
|
||||
|
||||
def filtered_account_videos
|
||||
if params[:query].present?
|
||||
@account.videos.search(params[:query])
|
||||
else
|
||||
@account.videos
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user