#1938 remove duplicates, remember &random and &raw params
This commit is contained in:
@@ -74,7 +74,11 @@ module PostSets
|
||||
temp = []
|
||||
limit = [per_page, count].min
|
||||
limit.times do
|
||||
post = ::Post.tag_match(tag_string).offset(rand(count)).first
|
||||
q = ::Post.tag_match(tag_string)
|
||||
unless temp.empty?
|
||||
q = q.where("id not in (?)", temp.map(&:id))
|
||||
end
|
||||
post = q.offset(rand(count - temp.length)).first
|
||||
if post
|
||||
temp << post
|
||||
end
|
||||
|
||||
@@ -7,6 +7,12 @@
|
||||
<h1>Search</h1>
|
||||
<%= form_tag(path, :method => "get") do %>
|
||||
<%= text_field_tag("tags", tags, :size => 20) %>
|
||||
<% if params[:raw] %>
|
||||
<%= hidden_field_tag :raw, params[:raw] %>
|
||||
<% end %>
|
||||
<% if params[:random] %>
|
||||
<%= hidden_field_tag :random, params[:random] %>
|
||||
<% end %>
|
||||
<%= submit_tag "Go", :name => nil %>
|
||||
<% end %>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user