diff options
Diffstat (limited to 'perllib/FixMyStreet/App/Controller/Admin.pm')
-rw-r--r-- | perllib/FixMyStreet/App/Controller/Admin.pm | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Admin.pm b/perllib/FixMyStreet/App/Controller/Admin.pm index faad88f1f..5e177f000 100644 --- a/perllib/FixMyStreet/App/Controller/Admin.pm +++ b/perllib/FixMyStreet/App/Controller/Admin.pm @@ -527,10 +527,29 @@ sub reports : Path('reports') { cobrand_data => { like => $like_search }, ]; } + + if ( $c->cobrand->moniker eq 'zurich' ) { + my $type = $c->stash->{admin_type}; + my $body = $c->stash->{body}; + if ( $type eq 'super' ) { + $query = { -or => $query }; + } elsif ( $type eq 'dm' ) { + my @children = map { $_->id } $body->bodies->all; + my @all = (@children, $body->id); + $query = { + bodies_str => \@all, + -or => $query + }; + } elsif ( $type eq 'sdm' ) { + $query = { bodies_str => $body->id, -or => $query }; + } + } else { + $query = { -or => $query }; + } + + my $problems = $c->cobrand->problems->search( - { - -or => $query, - }, + $query, { prefetch => 'user', order_by => [\"(state='hidden')",'created'] |