displays relevance order in searches
This commit is contained in:
@@ -81,6 +81,12 @@ module CommentableActions
|
|||||||
@search_terms = params[:search] if params[:search].present?
|
@search_terms = params[:search] if params[:search].present?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def set_search_order
|
||||||
|
if params[:search].present? && params[:order].blank?
|
||||||
|
params[:order] = 'relevance'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def set_resource_votes(instance)
|
def set_resource_votes(instance)
|
||||||
send("set_#{resource_name}_votes", instance)
|
send("set_#{resource_name}_votes", instance)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -4,9 +4,10 @@ class DebatesController < ApplicationController
|
|||||||
|
|
||||||
before_action :parse_search_terms, only: :index
|
before_action :parse_search_terms, only: :index
|
||||||
before_action :parse_tag_filter, only: :index
|
before_action :parse_tag_filter, only: :index
|
||||||
|
before_action :set_search_order, only: :index
|
||||||
before_action :authenticate_user!, except: [:index, :show]
|
before_action :authenticate_user!, except: [:index, :show]
|
||||||
|
|
||||||
has_orders %w{hot_score confidence_score created_at most_commented random}, only: :index
|
has_orders %w{hot_score confidence_score created_at most_commented random relevance}, only: :index
|
||||||
has_orders %w{most_voted newest oldest}, only: :show
|
has_orders %w{most_voted newest oldest}, only: :show
|
||||||
|
|
||||||
load_and_authorize_resource
|
load_and_authorize_resource
|
||||||
|
|||||||
@@ -4,9 +4,10 @@ class ProposalsController < ApplicationController
|
|||||||
|
|
||||||
before_action :parse_search_terms, only: :index
|
before_action :parse_search_terms, only: :index
|
||||||
before_action :parse_tag_filter, only: :index
|
before_action :parse_tag_filter, only: :index
|
||||||
|
before_action :set_search_order, only: :index
|
||||||
before_action :authenticate_user!, except: [:index, :show]
|
before_action :authenticate_user!, except: [:index, :show]
|
||||||
|
|
||||||
has_orders %w{hot_score confidence_score created_at most_commented random}, only: :index
|
has_orders %w{hot_score confidence_score created_at most_commented random relevance}, only: :index
|
||||||
has_orders %w{most_voted newest oldest}, only: :show
|
has_orders %w{most_voted newest oldest}, only: :show
|
||||||
|
|
||||||
load_and_authorize_resource
|
load_and_authorize_resource
|
||||||
|
|||||||
7
app/helpers/orders_helper.rb
Normal file
7
app/helpers/orders_helper.rb
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
module OrdersHelper
|
||||||
|
|
||||||
|
def valid_orders
|
||||||
|
@valid_orders.reject { |order| order =='relevance' && params[:search].blank? }
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
@@ -1,14 +1,12 @@
|
|||||||
<% # Params:
|
|
||||||
#
|
|
||||||
# i18n_namespace: for example "moderation.debates.index"
|
|
||||||
%>
|
|
||||||
|
|
||||||
<form class="inline-block">
|
<form class="inline-block">
|
||||||
<label for="order-selector-participation" class="sr-only"><%= t("debates.index.select_order") %></label>
|
<label for="order-selector-participation" class="sr-only"><%= t("debates.index.select_order") %></label>
|
||||||
<select class="js-location-changer js-order-selector select-order" data-order="<%= @current_order %>" name="order-selector" id="order-selector-participation">
|
<select class="js-location-changer js-order-selector select-order"
|
||||||
<% @valid_orders.each do |order| %>
|
data-order="<%= @current_order %>"
|
||||||
|
name="order-selector"
|
||||||
|
id="order-selector-participation">
|
||||||
|
<% valid_orders.each do |order| %>
|
||||||
<option <%= 'selected' if order == @current_order %>
|
<option <%= 'selected' if order == @current_order %>
|
||||||
value='<%= current_path_with_query_params(order: order, page: 1) %>'>
|
value='<%= current_path_with_query_params(order: order, page: 1) %>'>
|
||||||
<%= t("#{i18n_namespace}.orders.#{order}") %>
|
<%= t("#{i18n_namespace}.orders.#{order}") %>
|
||||||
</option>
|
</option>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ en:
|
|||||||
created_at: "newest"
|
created_at: "newest"
|
||||||
most_commented: "most commented"
|
most_commented: "most commented"
|
||||||
random: "random"
|
random: "random"
|
||||||
|
relevance: "relevance"
|
||||||
filter_topic:
|
filter_topic:
|
||||||
one: " with topic '%{topic}'"
|
one: " with topic '%{topic}'"
|
||||||
other: " with topic '%{topic}'"
|
other: " with topic '%{topic}'"
|
||||||
@@ -166,6 +167,7 @@ en:
|
|||||||
created_at: "newest"
|
created_at: "newest"
|
||||||
most_commented: "most commented"
|
most_commented: "most commented"
|
||||||
random: "random"
|
random: "random"
|
||||||
|
relevance: "relevance"
|
||||||
filter_topic:
|
filter_topic:
|
||||||
one: " with topic '%{topic}'"
|
one: " with topic '%{topic}'"
|
||||||
other: " with topic '%{topic}'"
|
other: " with topic '%{topic}'"
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ es:
|
|||||||
created_at: "más nuevos"
|
created_at: "más nuevos"
|
||||||
most_commented: "más comentados"
|
most_commented: "más comentados"
|
||||||
random: "aleatorio"
|
random: "aleatorio"
|
||||||
|
relevance: "relevancia"
|
||||||
filter_topic:
|
filter_topic:
|
||||||
one: " con el tema '%{topic}'"
|
one: " con el tema '%{topic}'"
|
||||||
other: " con el tema '%{topic}'"
|
other: " con el tema '%{topic}'"
|
||||||
@@ -166,6 +167,7 @@ es:
|
|||||||
created_at: "más nuevas"
|
created_at: "más nuevas"
|
||||||
most_commented: "más comentadas"
|
most_commented: "más comentadas"
|
||||||
random: "aleatorias"
|
random: "aleatorias"
|
||||||
|
relevance: "relevancia"
|
||||||
filter_topic:
|
filter_topic:
|
||||||
one: " con el tema '%{topic}'"
|
one: " con el tema '%{topic}'"
|
||||||
other: " con el tema '%{topic}'"
|
other: " con el tema '%{topic}'"
|
||||||
|
|||||||
Reference in New Issue
Block a user