The "params[:order] ||= params.delete(:sort)" is to support existing
links using sort.
This commit is contained in:
Toks
2013-07-12 13:18:19 -04:00
parent 205904e2e3
commit 46aad0d3f1
10 changed files with 23 additions and 29 deletions

View File

@@ -272,7 +272,8 @@ class Artist < ActiveRecord::Base
q = q.any_name_matches(params[:name]) q = q.any_name_matches(params[:name])
end end
if params[:sort] == "name" params[:order] ||= params.delete(:sort)
if params[:order] == "name"
q = q.reorder("name") q = q.reorder("name")
else else
q = q.reorder("id desc") q = q.reorder("id desc")

View File

@@ -31,7 +31,8 @@ class ArtistVersion < ActiveRecord::Base
q = q.where("artist_id = ?", params[:artist_id].to_i) q = q.where("artist_id = ?", params[:artist_id].to_i)
end end
if params[:sort] == "name" params[:order] ||= params.delete(:sort)
if params[:order] == "name"
q = q.reorder("name") q = q.reorder("name")
else else
q = q.reorder("id desc") q = q.reorder("id desc")

View File

@@ -62,7 +62,8 @@ class Pool < ActiveRecord::Base
q = q.where("is_active = false") q = q.where("is_active = false")
end end
case params[:sort] params[:order] ||= params.delete(:sort)
case params[:order]
when "name" when "name"
q = q.order("name") q = q.order("name")
when "created_at" when "created_at"

View File

@@ -575,24 +575,14 @@ class Tag < ActiveRecord::Base
q = q.limit(params[:limit].to_i) q = q.limit(params[:limit].to_i)
end end
if params[:order] == "name" params[:order] ||= params.delete(:sort)
case params[:order]
when "name"
q = q.reorder("name") q = q.reorder("name")
when "date"
elsif params[:order] == "date"
q = q.reorder("id desc") q = q.reorder("id desc")
when "count"
elsif params[:order] == "count"
q = q.reorder("post_count desc") 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 else
q = q.reorder("id desc") q = q.reorder("id desc")
end end

View File

@@ -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) q = q.where("creator_id = (select _.id from users _ where lower(_.name) = ?)", params[:creator_name].tr(" ", "_").mb_chars.downcase)
end 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") q = q.order("updated_at desc")
elsif params[:sort] == "title" elsif params[:order] == "title" || params[:order] == "Name"
q = q.order("title") q = q.order("title")
end end

View File

@@ -12,10 +12,10 @@
</tr> </tr>
<tr> <tr>
<th><label for="search_sort">Sort</label> <th><label for="search_order">Order</label>
<td> <td>
<div class="input"> <div class="input">
<%= select "search", "sort", [["Date", "date"], ["Name", "name"]], :selected => params[:search][:sort] %> <%= select "search", "order", [["Date", "date"], ["Name", "name"]], :selected => params[:search][:order] %>
</div> </div>
</td> </td>
</tr> </tr>

View File

@@ -38,10 +38,10 @@
</tr> </tr>
<tr> <tr>
<th><label for="search_sort">Order</th> <th><label for="search_order">Order</th>
<td> <td>
<div class="input"> <div class="input">
<%= select "search", "sort", [["Last updated", "updated_at"], ["Name", "name"], ["Recently created", "created_at"], ["Post count", "post_count"]], :selected => params[:search][:sort] %> <%= select "search", "order", [["Last updated", "updated_at"], ["Name", "name"], ["Recently created", "created_at"], ["Post count", "post_count"]], :selected => params[:search][:order] %>
</div> </div>
</td> </td>
</tr> </tr>

View File

@@ -21,10 +21,10 @@
</tr> </tr>
<tr> <tr>
<th><label for="search_sort">Sort</label></th> <th><label for="search_order">Order</label></th>
<td> <td>
<div class="input"> <div class="input">
<%= select "search", "sort", %w(count date name), :selected => params[:search][:sort] %> <%= select "search", "order", %w(count date name), :selected => params[:search][:order] %>
</div> </div>
</td> </td>
</tr> </tr>

View File

@@ -1,5 +1,5 @@
<section> <section>
<h1>Recent Changes (<%= link_to "all", wiki_pages_path(:sort => "time") %>)</h1> <h1>Recent Changes (<%= link_to "all", wiki_pages_path(:order => "time") %>)</h1>
<ul> <ul>
<% WikiPage.recent.each do |page| %> <% WikiPage.recent.each do |page| %>
<li class="category-<%= page.category_name %>"><%= link_to page.pretty_title, wiki_page_path(page) %></li> <li class="category-<%= page.category_name %>"><%= link_to page.pretty_title, wiki_page_path(page) %></li>

View File

@@ -6,8 +6,8 @@
<%= search_field "body_matches", :label => "Body" %> <%= search_field "body_matches", :label => "Body" %>
<div class="input"> <div class="input">
<label for="search_sort">Sort</label> <label for="search_order">Order</label>
<%= select "search", "sort", ["Name", "Date"] %> <%= select "search", "order", ["Name", "Date"] %>
</div> </div>
<%= submit_tag "Search" %> <%= submit_tag "Search" %>