diff options
Diffstat (limited to 'engines/support/app')
-rw-r--r-- | engines/support/app/helpers/tickets_helper.rb | 42 | ||||
-rw-r--r-- | engines/support/app/views/tickets/index.html.haml | 16 |
2 files changed, 22 insertions, 36 deletions
diff --git a/engines/support/app/helpers/tickets_helper.rb b/engines/support/app/helpers/tickets_helper.rb index 11b02e4..7db31dc 100644 --- a/engines/support/app/helpers/tickets_helper.rb +++ b/engines/support/app/helpers/tickets_helper.rb @@ -35,32 +35,32 @@ module TicketsHelper # def link_to_status(new_status) - label = t(:".#{new_status}", cascade: true) - link_to label, auto_tickets_path(:open_status => new_status, :sort_order => search_order) + label = ".#{new_status}" + link_to_navigation label, auto_tickets_path(open_status: new_status, sort_order: search_order) end def link_to_order(order_field) - if search_order.start_with?(order_field) - # link for currently-filtered field. Link to other direction of this field. - if search_order.end_with? 'asc' - direction = 'desc' - icon_direction = 'up' - else - direction = 'asc' - icon_direction = 'down' - end - arrow = content_tag(:i, '', class: 'icon-arrow-'+ icon_direction) - else - # for not-currently-filtered field, don't display an arrow, and link to descending direction - arrow = '' - direction = 'desc' - end + direction = new_direction_for_order(order_field) + icon = icon_for_direction(direction) + # for not-currently-filtered field link to descending direction + direction ||= 'desc' + label = ".#{order_field}" + link_to_navigation label, auto_tickets_path(sort_order: order_field + '_at_' + direction, open_status: search_status), + icon: icon + end - label = t(:".#{order_field}", cascade: true) - link_to auto_tickets_path(:sort_order => order_field + '_at_' + direction, :open_status => search_status) do - arrow + label - end + def new_direction_for_order(order_field) + # return if we're not filtering by this field + return unless search_order.start_with?(order_field) + # Link to the other direction for the filtered field. + search_order.end_with?('asc') ? 'desc' : 'asc' + end + + def icon_for_direction(direction) + # Don't display an icon if we do not filter this field + return if direction.blank? + direction == 'asc' ? 'arrow-down' : 'arrow-up' end end diff --git a/engines/support/app/views/tickets/index.html.haml b/engines/support/app/views/tickets/index.html.haml index 526cd6d..d107ce2 100644 --- a/engines/support/app/views/tickets/index.html.haml +++ b/engines/support/app/views/tickets/index.html.haml @@ -1,19 +1,5 @@ - @show_navigation = params[:user_id].present? = render 'tickets/tabs' - -%table.table.table-striped.table-bordered - %thead - %tr - %th= t(".subject") - %th= t(".created") - %th= t(".updated") - %th= t(".voices") - %tbody - - if @tickets.any? - = render @tickets.all - - else - %tr - %td{:colspan=>4}= t(".none") - += table @tickets, %w(subject created updated voices) = paginate @tickets |