aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet/Script
diff options
context:
space:
mode:
authorDave Arter <davea@mysociety.org>2016-09-13 17:17:23 +0100
committerDave Arter <davea@mysociety.org>2016-09-20 16:07:32 +0100
commit9bc2476861811163663b45cac41a2e91273576ed (patch)
tree26ada3a90213334dfbc1f5e6ef6e6d1e9a800878 /perllib/FixMyStreet/Script
parentb01df0c7609a1d6c008b943a9936d471cf0e0ce3 (diff)
Add ‘trusted’ flag allowing users to make reports directly
When a trusted user makes a report in a category that requires inspection, it'll be sent immediately (i.e. without being inspected first).
Diffstat (limited to 'perllib/FixMyStreet/Script')
-rw-r--r--perllib/FixMyStreet/Script/Reports.pm11
1 files changed, 8 insertions, 3 deletions
diff --git a/perllib/FixMyStreet/Script/Reports.pm b/perllib/FixMyStreet/Script/Reports.pm
index ab0d90ba8..8816d0e3a 100644
--- a/perllib/FixMyStreet/Script/Reports.pm
+++ b/perllib/FixMyStreet/Script/Reports.pm
@@ -144,9 +144,14 @@ sub send(;$) {
$reporters{ $sender } ||= $sender->new();
my $inspection_required = $sender_info->{contact}->get_extra_metadata('inspection_required') if $sender_info->{contact};
- if ( $inspection_required && !$row->get_extra_metadata('inspected') ) {
- $skip = 1;
- debug_print("skipped because not yet inspected", $row->id) if $debug_mode;
+ if ( $inspection_required ) {
+ unless (
+ $row->get_extra_metadata('inspected') ||
+ $row->user->has_permission_to( trusted => $row->bodies_str )
+ ) {
+ $skip = 1;
+ debug_print("skipped because not yet inspected", $row->id) if $debug_mode;
+ }
}
if ( $reporters{ $sender }->should_skip( $row ) ) {