diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-11-27 08:29:11 +0400 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-11-27 08:29:11 +0400 |
commit | d7c5885c3ddba13e77046913f91797e05d0f732f (patch) | |
tree | 78a368dbacb336f69588da59a87bb6dedc5a5aeb | |
parent | ade80e5c4dffca1a95de0189130ecf5f7e4011e9 (diff) |
Improved Issues and MR filters
-rw-r--r-- | app/helpers/dashboard_helper.rb | 20 | ||||
-rw-r--r-- | app/views/dashboard/_filter.html.haml | 4 |
2 files changed, 21 insertions, 3 deletions
diff --git a/app/helpers/dashboard_helper.rb b/app/helpers/dashboard_helper.rb index 540a73effe8..0baa5b4108e 100644 --- a/app/helpers/dashboard_helper.rb +++ b/app/helpers/dashboard_helper.rb @@ -1,5 +1,12 @@ module DashboardHelper def dashboard_filter_path(entity, options={}) + exist_opts = { + status: params[:status], + project_id: params[:project_id], + } + + options = exist_opts.merge(options) + case entity when 'issue' then dashboard_issues_path(options) @@ -9,6 +16,17 @@ module DashboardHelper end 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 diff --git a/app/views/dashboard/_filter.html.haml b/app/views/dashboard/_filter.html.haml index fc00ca72d63..4624af79948 100644 --- a/app/views/dashboard/_filter.html.haml +++ b/app/views/dashboard/_filter.html.haml @@ -1,6 +1,6 @@ = form_tag dashboard_filter_path(entity), method: 'get' do %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 %i.icon-search @@ -8,7 +8,7 @@ %legend Status: %ul.nav.nav-pills.nav-stacked %li{class: ("active" if !params[:status])} - = link_to dashboard_filter_path(entity) do + = link_to dashboard_filter_path(entity, status: nil) do Open %li{class: ("active" if params[:status] == 'closed')} = link_to dashboard_filter_path(entity, status: 'closed') do |