Default member sort order to recently joined

Co-authored-by: CloCkWeRX <365751+CloCkWeRX@users.noreply.github.com>
This commit is contained in:
google-labs-jules[bot]andCloCkWeRX committed 2026-10-24 02:24:12 +00:00
1 parent ad74235b95
commit 9e3d15cbc8
3 files changed
+14 -17

No files matched your search

+4 -4
View File
@@ -6,7 +6,7 @@ class MembersController < ApplicationController
respond_to :html, :json, :rss
def index
@sort = params[:sort]
@sort = params[:sort] || 'recently_joined'
@members = members
respond_to do |format|
format.html # index.html.haml
@@ -104,10 +104,10 @@ class MembersController < ApplicationController
end
def members
if @sort == 'recently_joined'
Member.recently_joined
else
if @sort == 'alpha'
Member.order(:login_name)
else
Member.recently_joined
end.kept.confirmed.paginate(page: params[:page])
end
end
+1 -1
View File
@@ -6,7 +6,7 @@
= bootstrap_form_tag(url: members_path, method: :get, layout: :inline) do |f|
= f.select "sort",
options_for_select({ "alphabetically": 'alpha', "recently joined": "recently_joined" },
@sort || 'alpha'),
@sort || 'recently_joined'),
label: 'Sort by'
= f.submit "Show"
+9 -12
View File
@@ -14,25 +14,22 @@ describe "members list" do
visit members_path
end
it "default alphabetical sort" do
it "default recently joined sort" do
expect(page).to have_css "#sort"
expect(page).to have_css "form"
expect(subject.first).to have_text testingname.login_name
expect(subject.last).to have_text archaeopteryx.login_name
end
it "alphabetical sort" do
expect(page).to have_css "#sort"
expect(page).to have_css "form"
select("alphabetically", from: 'sort')
click_button('Show')
# "Show" reloads the whole page. Wait for the new page before reading the list.
expect(page).to have_current_path(/sort=alpha/)
expect(subject.first).to have_text archaeopteryx.login_name
expect(subject.last).to have_text zephyrosaurus.login_name
end
it "recently joined sort" do
expect(page).to have_css "#sort"
expect(page).to have_css "form"
select("recently", from: 'sort')
click_button('Show')
# "Show" reloads the whole page. Wait for the new page before reading the list.
expect(page).to have_current_path(/sort=recently_joined/)
expect(subject.first).to have_text testingname.login_name
expect(subject.last).to have_text archaeopteryx.login_name
end
end
end