Improved Issues and MR filters

This commit is contained in:
Dmitriy Zaporozhets 2012-11-27 07:29:11 +03:00
parent ade80e5c4d
commit d7c5885c3d
2 changed files with 21 additions and 3 deletions

View file

@ -1,5 +1,12 @@
module DashboardHelper module DashboardHelper
def dashboard_filter_path(entity, options={}) def dashboard_filter_path(entity, options={})
exist_opts = {
status: params[:status],
project_id: params[:project_id],
}
options = exist_opts.merge(options)
case entity case entity
when 'issue' then when 'issue' then
dashboard_issues_path(options) dashboard_issues_path(options)
@ -9,6 +16,17 @@ module DashboardHelper
end end
def entities_per_project project, entity def entities_per_project project, entity
project.items_for(entity).where(assignee_id: current_user.id).count items = project.items_for(entity)
items = case params[:status]
when 'closed'
items.closed
when 'all'
items
else
items.opened
end
items.where(assignee_id: current_user.id).count
end end
end end

View file

@ -1,6 +1,6 @@
= form_tag dashboard_filter_path(entity), method: 'get' do = form_tag dashboard_filter_path(entity), method: 'get' do
%fieldset.dashboard-search-filter %fieldset.dashboard-search-filter
= search_field_tag "search", nil, { placeholder: 'Search', class: 'search-text-input' } = search_field_tag "search", params[:search], { placeholder: 'Search', class: 'search-text-input' }
= button_tag type: 'submit', class: 'btn' do = button_tag type: 'submit', class: 'btn' do
%i.icon-search %i.icon-search
@ -8,7 +8,7 @@
%legend Status: %legend Status:
%ul.nav.nav-pills.nav-stacked %ul.nav.nav-pills.nav-stacked
%li{class: ("active" if !params[:status])} %li{class: ("active" if !params[:status])}
= link_to dashboard_filter_path(entity) do = link_to dashboard_filter_path(entity, status: nil) do
Open Open
%li{class: ("active" if params[:status] == 'closed')} %li{class: ("active" if params[:status] == 'closed')}
= link_to dashboard_filter_path(entity, status: 'closed') do = link_to dashboard_filter_path(entity, status: 'closed') do