From 4a4a190d06076f86d1c9fa122b215fbcf8d464f3 Mon Sep 17 00:00:00 2001 From: "http://jneen.net/" Date: Tue, 11 Jul 2017 10:10:39 -0700 Subject: prevent users who have opted out from :receive_notifications --- app/policies/global_policy.rb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/policies/global_policy.rb b/app/policies/global_policy.rb index 8ed5c470fc2..65af71321ad 100644 --- a/app/policies/global_policy.rb +++ b/app/policies/global_policy.rb @@ -20,6 +20,12 @@ class GlobalPolicy < BasePolicy prevent :create_group end + desc "User has globally disabled notifications" + with_options scope: :user + condition(:notifications_disabled) do + @user&.global_notification_setting.level.to_s == 'disabled' + end + rule { default }.policy do enable :log_in enable :access_api @@ -36,6 +42,8 @@ class GlobalPolicy < BasePolicy prevent :use_quick_actions end + rule { notifications_disabled }.prevent :receive_notifications + rule { can_create_group }.policy do enable :create_group end -- cgit v1.2.1