Skip to content

Commit

Permalink
Pass search params to admin assessor paths
Browse files Browse the repository at this point in the history
  • Loading branch information
TheDancingClown committed Feb 16, 2024
1 parent deed886 commit fa7e8e4
Show file tree
Hide file tree
Showing 8 changed files with 34 additions and 14 deletions.
17 changes: 14 additions & 3 deletions app/controllers/admin/assessors_controller.rb
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
class Admin::AssessorsController < Admin::UsersController
before_action :permit_search_params, except: [:index]

def index
params[:search] ||= AssessorSearch::DEFAULT_SEARCH
params[:search].permit!
Expand All @@ -21,7 +23,7 @@ def create
authorize @resource, :create?

@resource.save
location = @resource.persisted? ? admin_assessors_path : nil
location = @resource.persisted? ? admin_assessors_path(search: params[:search], page: params[:page]) : nil
respond_with :admin, @resource, location: location, notice: "User has been successfully added."
end

Expand All @@ -34,14 +36,19 @@ def update
@resource.update_without_password(resource_params)
end

respond_with :admin, @resource, location: admin_assessors_path, notice: "User has been updated."
respond_with :admin,
@resource,
location: admin_assessors_path(search: params[:search], page: params[:page]),
notice: "User has been updated."
end

def destroy
authorize @resource, :destroy?
@resource.soft_delete!

respond_with :admin, @resource, location: admin_assessors_path
respond_with :admin,
@resource,
location: admin_assessors_path(search: params[:search], page: params[:page])
end

private
Expand All @@ -59,4 +66,8 @@ def resource_params
:first_name,
:last_name)
end

def permit_search_params
params[:search].permit!
end
end
13 changes: 9 additions & 4 deletions app/views/admin/assessors/_form.html.slim
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
= simple_form_for [:admin, resource], as: :assessor, url: resource.persisted? ? admin_assessor_path(resource) : admin_assessors_path, html: { class: 'qae-form' } do |f|
= simple_form_for [:admin, resource],
as: :assessor,
url: resource.persisted? ? admin_assessor_path(resource, search: params[:search], page: params[:page]) : admin_assessors_path(search: params[:search], page: params[:page]),
html: { class: 'qae-form' } do |f|
= render "shared/users/user_details", f: f

= f.input :sub_group,
Expand All @@ -10,11 +13,13 @@
- if f.object.persisted?
= render "shared/users/password_change", f: f


.govuk-button-group class="govuk-!-margin-top-7 govuk-!-margin-bottom-9"
= f.submit "#{f.object.persisted? ? 'Update' : 'Add'} user", class: 'govuk-button'
= link_to "Cancel",
admin_assessors_path,
admin_assessors_path(search: params[:search], page: params[:page]),
class: 'govuk-button govuk-button--secondary'
- if action_name == "edit" && policy(resource).destroy?
= link_to 'Delete', admin_assessor_path(resource), data: { method: :delete, confirm: 'Are you sure you want to delete this user?' }, class: 'govuk-button govuk-button--warning'
= link_to 'Delete',
admin_assessor_path(resource, search: params[:search], page: params[:page]),
data: { method: :delete, confirm: 'Are you sure you want to delete this user?' },
class: 'govuk-button govuk-button--warning'
4 changes: 2 additions & 2 deletions app/views/admin/assessors/_list.html.slim
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ div role="region" aria-labelledby="table-list-national-assessors-caption" tabind
tr.govuk-table__row
th.govuk-table__header scope="row"
= link_to assessor.full_name,
edit_admin_assessor_path(assessor),
edit_admin_assessor_path(assessor, search: params[:search], page: params[:page]),
class: "govuk-link",
aria: { label: "edit #{ assessor.full_name }"}
td.govuk-table__cell = assessor.sub_group&.text
Expand All @@ -55,7 +55,7 @@ div role="region" aria-labelledby="table-list-national-assessors-caption" tabind
' Not locked
td.govuk-table__cell
= link_to "Edit user",
edit_admin_assessor_path(assessor),
edit_admin_assessor_path(assessor, search: params[:search], page: params[:page]),
class: "govuk-link",
id: "edit #{ assessor.first_name.downcase } #{ assessor.last_name.downcase }",
aria: { label: "edit #{ assessor.full_name }"}
4 changes: 3 additions & 1 deletion app/views/admin/assessors/edit.html.slim
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
- title t("admin.users.edit_button.#{controller_name}")

- content_for :before_main_content do
= link_to "Back to users list", admin_users_path, class: "govuk-back-link"
= link_to "Back to users list",
admin_assessors_path(search: params[:search], page: params[:page]),
class: "govuk-back-link"

h1.govuk-heading-xl
= t("admin.users.edit_button.#{controller_name}")
Expand Down
4 changes: 3 additions & 1 deletion app/views/admin/assessors/new.html.slim
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
- title t("admin.users.new_button.#{controller_name}")

- content_for :before_main_content do
= link_to "Back to users list", admin_users_path, class: "govuk-back-link"
= link_to "Back to users list",
admin_assessors_path(search: params[:search], page: params[:page]),
class: "govuk-back-link"

h1.govuk-heading-xl
= t("admin.users.new_button.#{controller_name}")
Expand Down
2 changes: 1 addition & 1 deletion app/views/admin/group_leaders/edit.html.slim
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
- title t("admin.users.edit_button.#{controller_name}")

- content_for :before_main_content do
= link_to "Back to group leaders list",
= link_to "Back to users list",
admin_group_leaders_path(search: params[:search], page: params[:page]),
class: "govuk-back-link"

Expand Down
2 changes: 1 addition & 1 deletion app/views/admin/lieutenants/edit.html.slim
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
- title t("admin.users.edit_button.#{controller_name}")

- content_for :before_main_content do
= link_to "Back to lieutenants list", admin_lieutenants_path(search: params[:search], page: params[:page]), class: "govuk-back-link"
= link_to "Back to users list", admin_lieutenants_path(search: params[:search], page: params[:page]), class: "govuk-back-link"

h1.govuk-heading-xl
= t("admin.users.edit_button.#{controller_name}")
Expand Down
2 changes: 1 addition & 1 deletion app/views/admin/lieutenants/new.html.slim
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
- title t("admin.users.edit_button.#{controller_name}")

- content_for :before_main_content do
= link_to "Back to lieutenants list", admin_lieutenants_path(search: params[:search], page: params[:page]), class: "govuk-back-link"
= link_to "Back to users list", admin_lieutenants_path(search: params[:search], page: params[:page]), class: "govuk-back-link"

h1.govuk-heading-xl
= t("admin.users.new_button.#{controller_name}")
Expand Down

0 comments on commit fa7e8e4

Please sign in to comment.