diff options
| author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-11-27 07:29:11 +0300 | 
|---|---|---|
| committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-11-27 07:29:11 +0300 | 
| commit | d7c5885c3ddba13e77046913f91797e05d0f732f (patch) | |
| tree | 78a368dbacb336f69588da59a87bb6dedc5a5aeb | |
| parent | ade80e5c4dffca1a95de0189130ecf5f7e4011e9 (diff) | |
| download | gitlab-ce-d7c5885c3ddba13e77046913f91797e05d0f732f.tar.gz | |
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  | 
