Class: RubyCms::Admin::PermissionsController
Constant Summary
RubyCms::AdminPagination::DEFAULT_MAX_PER_PAGE, RubyCms::AdminPagination::DEFAULT_MIN_PER_PAGE
Instance Method Summary
collapse
#turbo_frame_id, #turbo_frame_request?, #turbo_redirect_to, #turbo_render_index, #turbo_stream_replace_table, #turbo_stream_request?, #turbo_stream_update_table
#paginate_collection, #set_pagination_vars
Instance Method Details
#bulk_delete ⇒ Object
48
49
50
51
52
53
54
55
56
57
|
# File 'app/controllers/ruby_cms/admin/permissions_controller.rb', line 48
def bulk_delete
ids = Array(params[:item_ids]).filter_map(&:to_i)
permissions = RubyCms::Permission.where(id: ids)
count = permissions.count
permissions.destroy_all
turbo_redirect_to ruby_cms_admin_permissions_path,
notice: "#{count} permission(s) #{
t('ruby_cms.admin.permissions.deleted')
}."
end
|
#create ⇒ Object
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'app/controllers/ruby_cms/admin/permissions_controller.rb', line 28
def create
@permission = RubyCms::Permission.new(permission_params)
if @permission.save
redirect_to ruby_cms_admin_permissions_path,
notice: t("ruby_cms.admin.permissions.created")
else
@permissions = RubyCms::Permission.order(:key)
flash.now[:alert] =
"Could not create permission: #{@permission.errors.full_messages.to_sentence}"
render :index, status: :unprocessable_content
end
end
|
#destroy ⇒ Object
41
42
43
44
45
46
|
# File 'app/controllers/ruby_cms/admin/permissions_controller.rb', line 41
def destroy
@permission = RubyCms::Permission.find(params[:id])
@permission.destroy
redirect_to ruby_cms_admin_permissions_path,
notice: t("ruby_cms.admin.permissions.deleted")
end
|
#index ⇒ Object
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'app/controllers/ruby_cms/admin/permissions_controller.rb', line 14
def index
collection = RubyCms::Permission.order(:key)
if params[:q].present?
search_term = "%#{params[:q].downcase}%"
collection = collection.where("LOWER(key) LIKE ? OR LOWER(name) LIKE ?", search_term,
search_term)
end
@permissions = paginate_collection(collection)
@index ||= RubyCms::Permission.none
end
|