diff options
author | Louise Crow <louise.crow@gmail.com> | 2012-08-14 14:41:54 +0100 |
---|---|---|
committer | Louise Crow <louise.crow@gmail.com> | 2012-08-14 14:43:48 +0100 |
commit | 30019ed58f0cd608f6196d03b9679bbca2ea0881 (patch) | |
tree | bfdb0db7349534eb86b3e86bec8c1870eb41f815 /app/models/info_request.rb | |
parent | b066d6bf7be0a33e731788a2c6f90285d3b3063f (diff) |
Apply global and public body censor rules to binary files.
Diffstat (limited to 'app/models/info_request.rb')
-rw-r--r-- | app/models/info_request.rb | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/app/models/info_request.rb b/app/models/info_request.rb index 83456b54f..dfaa524b2 100644 --- a/app/models/info_request.rb +++ b/app/models/info_request.rb @@ -995,27 +995,28 @@ public return ret.reverse end - # Call groups of censor rules - def apply_censor_rules_to_text!(text) + # Get the list of censor rules that apply to this request + def applicable_censor_rules applicable_rules = [self.censor_rules, self.public_body.censor_rules, CensorRule.global.all] if self.user && !self.user.censor_rules.empty? applicable_rules << self.user.censor_rules end - applicable_rules.flatten.each do |censor_rule| + return applicable_rules.flatten + end + + # Call groups of censor rules + def apply_censor_rules_to_text!(text) + self.applicable_censor_rules.each do |censor_rule| censor_rule.apply_to_text!(text) end return text end def apply_censor_rules_to_binary!(binary) - for censor_rule in self.censor_rules + self.applicable_censor_rules.each do |censor_rule| censor_rule.apply_to_binary!(binary) end - if self.user # requests during construction have no user - for censor_rule in self.user.censor_rules - censor_rule.apply_to_binary!(binary) - end - end + return binary end def is_owning_user?(user) |