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])
end
if params[:sort] == "name"
params[:order] ||= params.delete(:sort)
if params[:order] == "name"
q = q.reorder("name")
else
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)
end
if params[:sort] == "name"
params[:order] ||= params.delete(:sort)
if params[:order] == "name"
q = q.reorder("name")
else
q = q.reorder("id desc")

View File

@@ -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"

View File

@@ -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

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)
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

View File

@@ -12,10 +12,10 @@
</tr>
<tr>
<th><label for="search_sort">Sort</label>
<th><label for="search_order">Order</label>
<td>
<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>
</td>
</tr>

View File

@@ -38,10 +38,10 @@
</tr>
<tr>
<th><label for="search_sort">Order</th>
<th><label for="search_order">Order</th>
<td>
<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>
</td>
</tr>

View File

@@ -21,10 +21,10 @@
</tr>
<tr>
<th><label for="search_sort">Sort</label></th>
<th><label for="search_order">Order</label></th>
<td>
<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>
</td>
</tr>

View File

@@ -1,5 +1,5 @@
<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>
<% WikiPage.recent.each do |page| %>
<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" %>
<div class="input">
<label for="search_sort">Sort</label>
<%= select "search", "sort", ["Name", "Date"] %>
<label for="search_order">Order</label>
<%= select "search", "order", ["Name", "Date"] %>
</div>
<%= submit_tag "Search" %>