Extract methods in order links component
This commit is contained in:
@@ -1,10 +1,8 @@
|
|||||||
<ul class="no-bullet submenu order-links">
|
<ul class="no-bullet submenu order-links">
|
||||||
<% valid_orders.each do |order| %>
|
<% valid_orders.each do |order| %>
|
||||||
<li class="inline-block">
|
<li class="inline-block">
|
||||||
<%= link_to current_path_with_query_params(order: order, page: 1), class: order == current_order ? "is-active" : "" do %>
|
<%= link_to link_path(order), class: html_class(order) do %>
|
||||||
<%= content_tag(order == current_order ? :h2 : :span) do %>
|
<%= content_tag tag_name(order), link_text(order) %>
|
||||||
<%= t("#{i18n_namespace}.orders.#{order}") %>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|||||||
@@ -5,4 +5,26 @@ class Shared::OrderLinksComponent < ApplicationComponent
|
|||||||
def initialize(i18n_namespace)
|
def initialize(i18n_namespace)
|
||||||
@i18n_namespace = i18n_namespace
|
@i18n_namespace = i18n_namespace
|
||||||
end
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def html_class(order)
|
||||||
|
"is-active" if order == current_order
|
||||||
|
end
|
||||||
|
|
||||||
|
def tag_name(order)
|
||||||
|
if order == current_order
|
||||||
|
:h2
|
||||||
|
else
|
||||||
|
:span
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_path(order)
|
||||||
|
current_path_with_query_params(order: order, page: 1)
|
||||||
|
end
|
||||||
|
|
||||||
|
def link_text(order)
|
||||||
|
t("#{i18n_namespace}.orders.#{order}")
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user