From 46aad0d3f12d88dc1117a08f8db0f52ebefbfbd8 Mon Sep 17 00:00:00 2001 From: Toks Date: Fri, 12 Jul 2013 13:18:19 -0400 Subject: [PATCH] fixes #1576 The "params[:order] ||= params.delete(:sort)" is to support existing links using sort. --- app/models/artist.rb | 3 ++- app/models/artist_version.rb | 3 ++- app/models/pool.rb | 3 ++- app/models/tag.rb | 20 +++++-------------- app/models/wiki_page.rb | 5 +++-- app/views/artists/_search.html.erb | 4 ++-- app/views/pools/_search.html.erb | 4 ++-- app/views/tags/_search.html.erb | 4 ++-- app/views/wiki_pages/_recent_changes.html.erb | 2 +- app/views/wiki_pages/search.html.erb | 4 ++-- 10 files changed, 23 insertions(+), 29 deletions(-) diff --git a/app/models/artist.rb b/app/models/artist.rb index 766b3534e..e6301ace2 100644 --- a/app/models/artist.rb +++ b/app/models/artist.rb @@ -272,7 +272,8 @@ class Artist < ActiveRecord::Base q = q.any_name_matches(params[:name]) end - if params[:sort] == "name" + params[:order] ||= params.delete(:sort) + if params[:order] == "name" q = q.reorder("name") else q = q.reorder("id desc") diff --git a/app/models/artist_version.rb b/app/models/artist_version.rb index 25e115a26..6a4980c10 100644 --- a/app/models/artist_version.rb +++ b/app/models/artist_version.rb @@ -31,7 +31,8 @@ class ArtistVersion < ActiveRecord::Base q = q.where("artist_id = ?", params[:artist_id].to_i) end - if params[:sort] == "name" + params[:order] ||= params.delete(:sort) + if params[:order] == "name" q = q.reorder("name") else q = q.reorder("id desc") diff --git a/app/models/pool.rb b/app/models/pool.rb index 67ea1a938..308aacf0e 100644 --- a/app/models/pool.rb +++ b/app/models/pool.rb @@ -62,7 +62,8 @@ class Pool < ActiveRecord::Base q = q.where("is_active = false") end - case params[:sort] + params[:order] ||= params.delete(:sort) + case params[:order] when "name" q = q.order("name") when "created_at" diff --git a/app/models/tag.rb b/app/models/tag.rb index 6de26e9f3..7bc9eecd4 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -575,24 +575,14 @@ class Tag < ActiveRecord::Base q = q.limit(params[:limit].to_i) end - if params[:order] == "name" + params[:order] ||= params.delete(:sort) + case params[:order] + when "name" q = q.reorder("name") - - elsif params[:order] == "date" + when "date" q = q.reorder("id desc") - - elsif params[:order] == "count" + when "count" q = q.reorder("post_count desc") - - elsif params[:sort] == "date" - q = q.reorder("id desc") - - elsif params[:sort] == "name" - q = q.reorder("name") - - elsif params[:sort] == "count" - q = q.reorder("post_count desc") - else q = q.reorder("id desc") end diff --git a/app/models/wiki_page.rb b/app/models/wiki_page.rb index e997e17ca..7dff24c64 100644 --- a/app/models/wiki_page.rb +++ b/app/models/wiki_page.rb @@ -47,9 +47,10 @@ class WikiPage < ActiveRecord::Base q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].tr(" ", "_").mb_chars.downcase) end - if params[:sort] == "time" || params[:sort] == "Date" + params[:order] ||= params.delete(:sort) + if params[:order] == "time" || params[:order] == "Date" q = q.order("updated_at desc") - elsif params[:sort] == "title" + elsif params[:order] == "title" || params[:order] == "Name" q = q.order("title") end diff --git a/app/views/artists/_search.html.erb b/app/views/artists/_search.html.erb index a7e26f151..819b456e2 100644 --- a/app/views/artists/_search.html.erb +++ b/app/views/artists/_search.html.erb @@ -12,10 +12,10 @@ - +
- <%= select "search", "sort", [["Date", "date"], ["Name", "name"]], :selected => params[:search][:sort] %> + <%= select "search", "order", [["Date", "date"], ["Name", "name"]], :selected => params[:search][:order] %>
diff --git a/app/views/pools/_search.html.erb b/app/views/pools/_search.html.erb index 00a33623a..60fc7903a 100644 --- a/app/views/pools/_search.html.erb +++ b/app/views/pools/_search.html.erb @@ -38,10 +38,10 @@ -