summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-27 07:29:11 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-27 07:29:11 +0300
commitd7c5885c3ddba13e77046913f91797e05d0f732f (patch)
tree78a368dbacb336f69588da59a87bb6dedc5a5aeb
parentade80e5c4dffca1a95de0189130ecf5f7e4011e9 (diff)
downloadgitlab-ce-d7c5885c3ddba13e77046913f91797e05d0f732f.tar.gz
Improved Issues and MR filters
-rw-r--r--app/helpers/dashboard_helper.rb20
-rw-r--r--app/views/dashboard/_filter.html.haml4
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