diff --git a/app/controllers/admin/organizations_controller.rb b/app/controllers/admin/organizations_controller.rb
index d8296ee4a..19003ad3a 100644
--- a/app/controllers/admin/organizations_controller.rb
+++ b/app/controllers/admin/organizations_controller.rb
@@ -11,12 +11,12 @@ class Admin::OrganizationsController < Admin::BaseController
def verify
@organization.verify
- redirect_to action: :index, filter: @filter
+ redirect_to request.query_parameters.merge(action: :index)
end
def reject
@organization.reject
- redirect_to action: :index, filter: @filter
+ redirect_to request.query_parameters.merge(action: :index)
end
private
diff --git a/app/views/admin/organizations/index.html.erb b/app/views/admin/organizations/index.html.erb
index b0d651af2..425bee1f7 100644
--- a/app/views/admin/organizations/index.html.erb
+++ b/app/views/admin/organizations/index.html.erb
@@ -26,7 +26,7 @@
<% end %>
<% if can? :verify, organization %>
<%= link_to t('admin.organizations.index.verify'),
- verify_admin_organization_path(organization, filter: @filter),
+ verify_admin_organization_path(organization, request.query_parameters),
method: :put
%>
|
@@ -36,7 +36,7 @@
<% end %>
<% if can? :reject, organization %>
<%= link_to t('admin.organizations.index.reject'),
- reject_admin_organization_path(organization, filter: @filter),
+ reject_admin_organization_path(organization, request.query_parameters),
method: :put
%>
|
@@ -45,4 +45,4 @@
<% end %>
-<%= paginate @organizations %>
\ No newline at end of file
+<%= paginate @organizations %>
diff --git a/spec/features/admin/organizations_spec.rb b/spec/features/admin/organizations_spec.rb
index c3ac46d3d..954e2ee8f 100644
--- a/spec/features/admin/organizations_spec.rb
+++ b/spec/features/admin/organizations_spec.rb
@@ -1,6 +1,6 @@
require 'rails_helper'
-feature 'Moderations::Organizations' do
+feature 'Admin::Organizations' do
background do
@@ -111,4 +111,18 @@ feature 'Moderations::Organizations' do
expect(page).to_not have_content('Verified Organization')
end
+ scenario "Verifying organization links remember the pagination setting and the filter" do
+ 30.times { create(:organization) }
+
+ visit admin_organizations_path(filter: 'pending', page: 2)
+
+ click_on('Verify', match: :first)
+
+ uri = URI.parse(current_url)
+ query_params = Rack::Utils.parse_nested_query(uri.query).symbolize_keys
+
+ expect(query_params[:filter]).to eq('pending')
+ expect(query_params[:page]).to eq('2')
+ end
+
end