From e709bed08982e9c757c36ac4067d889acb2babbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20G=C3=BCnther?= Date: Tue, 31 Mar 2026 09:12:03 +0200 Subject: [PATCH] Use active_admin? instead of admin? --- app/models/capabilities/scopes/visible.rb | 2 +- app/models/custom_fields/scopes/visible.rb | 10 +++++++--- app/models/group_custom_fields/scopes/visible.rb | 2 +- app/models/members/scopes/visible.rb | 2 +- app/models/principals/scopes/visible.rb | 2 +- app/models/project_custom_field.rb | 2 +- app/models/project_custom_fields/scopes/visible.rb | 2 +- app/models/projects/scopes/visible.rb | 2 +- app/models/user_custom_fields/scopes/visible.rb | 2 +- modules/budgets/app/models/budget.rb | 10 +++++++--- 10 files changed, 22 insertions(+), 14 deletions(-) diff --git a/app/models/capabilities/scopes/visible.rb b/app/models/capabilities/scopes/visible.rb index 6d7b289d628..521ac4f13a1 100644 --- a/app/models/capabilities/scopes/visible.rb +++ b/app/models/capabilities/scopes/visible.rb @@ -34,7 +34,7 @@ module Capabilities::Scopes class_methods do def visible(user = User.current) - scope = if user.admin? + scope = if user.active_admin? all else where(context_id: nil) diff --git a/app/models/custom_fields/scopes/visible.rb b/app/models/custom_fields/scopes/visible.rb index 1a70ee93961..2709e8ba873 100644 --- a/app/models/custom_fields/scopes/visible.rb +++ b/app/models/custom_fields/scopes/visible.rb @@ -34,9 +34,13 @@ module CustomFields::Scopes class_methods do def visible(user = User.current) - known_subclasses - .inject(none) do |scope, klass| - scope.or(where(type: klass.name).and(klass.visible(user))) + if user.active_admin? + all + else + known_subclasses + .inject(none) do |scope, klass| + scope.or(where(type: klass.name).and(klass.visible(user))) + end end end diff --git a/app/models/group_custom_fields/scopes/visible.rb b/app/models/group_custom_fields/scopes/visible.rb index cd55eb2e953..7cb7e9b7706 100644 --- a/app/models/group_custom_fields/scopes/visible.rb +++ b/app/models/group_custom_fields/scopes/visible.rb @@ -34,7 +34,7 @@ module GroupCustomFields::Scopes class_methods do def visible(user = User.current) - if user.admin? + if user.active_admin? all else where(admin_only: false) diff --git a/app/models/members/scopes/visible.rb b/app/models/members/scopes/visible.rb index 8fe3adafe2e..f6429e5e468 100644 --- a/app/models/members/scopes/visible.rb +++ b/app/models/members/scopes/visible.rb @@ -35,7 +35,7 @@ module Members::Scopes class_methods do # Find all members visible to the inquiring user def visible(user = User.current) - if user.admin? + if user.active_admin? visible_for_admins else visible_for_non_admins(user) diff --git a/app/models/principals/scopes/visible.rb b/app/models/principals/scopes/visible.rb index 1a25ab8da6a..20445de2230 100644 --- a/app/models/principals/scopes/visible.rb +++ b/app/models/principals/scopes/visible.rb @@ -42,7 +42,7 @@ module Principals::Scopes class_methods do def visible(user = ::User.current) - if user.allowed_globally?(:view_all_principals) || user.admin? + if user.allowed_globally?(:view_all_principals) all else in_visible_project_or_me_or_same_groups(user) diff --git a/app/models/project_custom_field.rb b/app/models/project_custom_field.rb index 10c3aadcb33..c13e97f75ee 100644 --- a/app/models/project_custom_field.rb +++ b/app/models/project_custom_field.rb @@ -56,7 +56,7 @@ class ProjectCustomField < CustomField class << self def visible(user = User.current, project: nil) - if user.admin? + if user.active_admin? all elsif user.allowed_in_any_project?(:select_project_custom_fields) || user.allowed_globally?(:add_project) where(admin_only: false) diff --git a/app/models/project_custom_fields/scopes/visible.rb b/app/models/project_custom_fields/scopes/visible.rb index eee99147a52..d0fec1ba6cf 100644 --- a/app/models/project_custom_fields/scopes/visible.rb +++ b/app/models/project_custom_fields/scopes/visible.rb @@ -34,7 +34,7 @@ module ProjectCustomFields::Scopes class_methods do def visible(user = User.current, project: nil) - if user.admin? + if user.active_admin? all elsif user.allowed_in_any_project?(:select_project_custom_fields) || user.allowed_globally?(:add_project) where(admin_only: false) diff --git a/app/models/projects/scopes/visible.rb b/app/models/projects/scopes/visible.rb index 6ecae100fc3..ee627718e34 100644 --- a/app/models/projects/scopes/visible.rb +++ b/app/models/projects/scopes/visible.rb @@ -40,7 +40,7 @@ module Projects::Scopes def visible(user = User.current) # Use a shortcut for admins and anonymous where # we don't need to calculate for work package roles which is more expensive - if user.admin? || user.anonymous? + if user.active_admin? || user.anonymous? allowed_to(user, :view_project) else active.public_projects.or(active.where(id: user.members.select(:project_id))) diff --git a/app/models/user_custom_fields/scopes/visible.rb b/app/models/user_custom_fields/scopes/visible.rb index ae7bfab44ba..e1fe79488e0 100644 --- a/app/models/user_custom_fields/scopes/visible.rb +++ b/app/models/user_custom_fields/scopes/visible.rb @@ -34,7 +34,7 @@ module UserCustomFields::Scopes class_methods do def visible(user = User.current) - if user.admin? + if user.active_admin? all else where(admin_only: false) diff --git a/modules/budgets/app/models/budget.rb b/modules/budgets/app/models/budget.rb index faafee0c503..4b7cc44e7c7 100644 --- a/modules/budgets/app/models/budget.rb +++ b/modules/budgets/app/models/budget.rb @@ -61,9 +61,13 @@ class Budget < ApplicationRecord class << self def visible(user = User.current) - includes(:project) - .references(:projects) - .merge(Project.allowed_to(user, :view_budgets)) + if user.active_admin? + all + else + includes(:project) + .references(:projects) + .merge(Project.allowed_to(user, :view_budgets)) + end end # TODO: Extract into copy service