From d9cfed07cd1048328499ae06807368be29bdeb2c Mon Sep 17 00:00:00 2001 From: "http://jneen.net/" Date: Tue, 28 Feb 2017 13:09:23 -0800 Subject: add User#internal? and some global permissions --- app/models/user.rb | 5 ++++- app/policies/global_policy.rb | 6 ++++++ 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'app') diff --git a/app/models/user.rb b/app/models/user.rb index db3837ecdf2..fa6f336f6b5 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -350,12 +350,15 @@ class User < ActiveRecord::Base def ghost unique_internal(where(ghost: true), 'ghost', 'ghost%s@example.com') do |u| u.bio = 'This is a "Ghost User", created to hold all issues authored by users that have since been deleted. This user cannot be removed.' - u.state = :blocked u.name = 'Ghost User' end end end + def internal? + ghost? + end + # # Instance methods # diff --git a/app/policies/global_policy.rb b/app/policies/global_policy.rb index 3c2fbe6b56b..a1946584dd0 100644 --- a/app/policies/global_policy.rb +++ b/app/policies/global_policy.rb @@ -4,5 +4,11 @@ class GlobalPolicy < BasePolicy can! :create_group if @user.can_create_group can! :read_users_list + + unless @user.blocked? || @user.internal? + can! :log_in + can! :access_api + can! :access_git + end end end -- cgit v1.2.3