diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-10-08 12:38:22 +0400 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-10-08 12:38:22 +0400 |
commit | ac7fab73111737185698475a3e22b03e1b55d4a6 (patch) | |
tree | 16a985b4fd2b05b3fd71f7f7bf9dabf9c3b549a0 /app | |
parent | cf1aa36a21d195a38472f39be8188341dd812043 (diff) | |
parent | da99560ecbc105c8a98ce2f0e47415634420040f (diff) |
Merge pull request #7938 from cirosantilli/factor-dashboard-helper
Factor dashboard helper methods.
Diffstat (limited to 'app')
-rw-r--r-- | app/helpers/dashboard_helper.rb | 33 |
1 files changed, 12 insertions, 21 deletions
diff --git a/app/helpers/dashboard_helper.rb b/app/helpers/dashboard_helper.rb index c4e33e3308f..acc0eeb76b3 100644 --- a/app/helpers/dashboard_helper.rb +++ b/app/helpers/dashboard_helper.rb @@ -37,40 +37,31 @@ module DashboardHelper end def assigned_entities_count(current_user, entity, scope = nil) - items = current_user.send("assigned_" + entity.pluralize).opened - - if scope.kind_of?(Group) - items = items.of_group(scope) - elsif scope.kind_of?(Project) - items = items.of_projects(scope) - end - - items.count + items = current_user.send('assigned_' + entity.pluralize) + get_count(items, scope) end def authored_entities_count(current_user, entity, scope = nil) - items = current_user.send(entity.pluralize).opened - - if scope.kind_of?(Group) - items = items.of_group(scope) - elsif scope.kind_of?(Project) - items = items.of_projects(scope) - end - - items.count + items = current_user.send(entity.pluralize) + get_count(items, scope) end def authorized_entities_count(current_user, entity, scope = nil) - items = entity.classify.constantize.opened + items = entity.classify.constantize + get_count(items, scope, true, current_user) + end + + protected + def get_count(items, scope, get_authorized = false, current_user = nil) + items = items.opened if scope.kind_of?(Group) items = items.of_group(scope) elsif scope.kind_of?(Project) items = items.of_projects(scope) - else + elsif get_authorized items = items.of_projects(current_user.authorized_projects) end - items.count end end |