mirror of
https://github.com/Growstuff/growstuff.git
synced 2025-12-28 20:17:47 -05:00
44 lines
978 B
Ruby
44 lines
978 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Admin
|
|
class MembersController < ApplicationController
|
|
before_action :admin!
|
|
load_and_authorize_resource
|
|
respond_to :html
|
|
responders :flash
|
|
|
|
def index
|
|
@members = Member.all
|
|
@members = @members.where("login_name ILIKE ?", "%#{search_term}%") unless search_term.nil?
|
|
@members = @members.order(:login_name).paginate(page: params[:page])
|
|
end
|
|
|
|
def edit
|
|
@member = Member.find_by!(slug: params[:slug])
|
|
end
|
|
|
|
def update
|
|
@member = Member.find_by!(slug: params[:slug])
|
|
@member.update(roles: Role.where(id: params.require(:member).require(:role_ids)))
|
|
|
|
respond_with @member, location: admin_members_path
|
|
end
|
|
|
|
def destroy
|
|
@member = Member.find_by!(slug: params[:slug])
|
|
@member.discard
|
|
redirect_to admin_members_path
|
|
end
|
|
|
|
private
|
|
|
|
def search_term
|
|
params[:q]
|
|
end
|
|
|
|
def admin!
|
|
authorize! :manage, :all
|
|
end
|
|
end
|
|
end
|