include saved searches section in user profiles
This commit is contained in:
@@ -106,7 +106,7 @@ class SavedSearch < ActiveRecord::Base
|
||||
end
|
||||
end
|
||||
|
||||
body.scan(/\d+/).map(&:to_i)
|
||||
body.to_s.scan(/\d+/).map(&:to_i)
|
||||
end
|
||||
|
||||
def normalize
|
||||
|
||||
@@ -790,7 +790,14 @@ class User < ActiveRecord::Base
|
||||
|
||||
module SavedSearchMethods
|
||||
def unique_saved_search_categories
|
||||
[SavedSearch::UNCATEGORIZED_NAME] + saved_searches.pluck(:category).reject {|x| x.blank?}.uniq
|
||||
categories = saved_searches.pluck(:category)
|
||||
|
||||
if categories.any? {|x| x.nil?}
|
||||
categories.compact!
|
||||
categories.unshift(SavedSearch::UNCATEGORIZED_NAME)
|
||||
end
|
||||
|
||||
categories
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -212,6 +212,14 @@ class UserPresenter
|
||||
user.subscriptions.select {|x| x.is_public?}
|
||||
end
|
||||
end
|
||||
|
||||
def saved_search_categories
|
||||
if CurrentUser.user.id == user.id
|
||||
user.unique_saved_search_categories
|
||||
else
|
||||
[]
|
||||
end
|
||||
end
|
||||
|
||||
def previous_names
|
||||
UserNameChangeRequest.approved.where("user_id = ?", user.id).map(&:original_name).join(", ")
|
||||
|
||||
@@ -33,3 +33,19 @@
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if CurrentUser.user.id == @user.id && @user.has_saved_searches? && @user.is_gold? %>
|
||||
<% presenter.saved_search_categories.each do |category| %>
|
||||
<div class="box">
|
||||
<h2>
|
||||
Saved Search: <%= link_to category, posts_path(:tags => "search:#{category}") %>
|
||||
</h2>
|
||||
|
||||
<div class="box">
|
||||
<% presenter.posts_for_saved_search_category(category).each do |post| %>
|
||||
<%= PostPresenter.preview(post, :tags => "search:#{category}") %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
Reference in New Issue
Block a user