aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Whiteland <dave@mysociety.org>2013-08-23 08:32:49 +0100
committerDave Whiteland <dave@mysociety.org>2013-09-05 17:31:08 +0100
commit367fdaba0686150e841e879445ad2378f2f4d897 (patch)
tree7071106c72dbe43dd6061af0f177c765cfb21dc1
parent007f413b4db284ca74bc6b40b82e3424e48482da (diff)
clarify presentation on lagged users page
now shows which flagged users are in abuse table, which seems important (separate issue #523 to make managing and indeed viewing abuse table)
-rw-r--r--perllib/FixMyStreet/App/Controller/Admin.pm14
-rw-r--r--templates/web/default/admin/flagged.html18
2 files changed, 26 insertions, 6 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Admin.pm b/perllib/FixMyStreet/App/Controller/Admin.pm
index 5e98c5d04..ba8f22a05 100644
--- a/perllib/FixMyStreet/App/Controller/Admin.pm
+++ b/perllib/FixMyStreet/App/Controller/Admin.pm
@@ -1027,8 +1027,20 @@ sub flagged : Path('flagged') : Args(0) {
$c->stash->{problems} = [ $problems->all ];
my $users = $c->model('DB::User')->search( { flagged => 1 } );
+ my @users = $users->all;
+ my %email2user = map { $_->email => $_ } @users;
+ $c->stash->{users} = [ @users ];
- $c->stash->{users} = $users;
+ my @abuser_emails = $c->model('DB::Abuse')->all();
+
+ foreach my $email (@abuser_emails) {
+ # Slight abuse of the boolean flagged value
+ if ($email2user{$email->email}) {
+ $email2user{$email->email}->flagged( 2 );
+ } else {
+ push @{$c->stash->{users}}, { email => $email->email, flagged => 2 };
+ }
+ }
return 1;
}
diff --git a/templates/web/default/admin/flagged.html b/templates/web/default/admin/flagged.html
index 8c831ddb9..518d1b14e 100644
--- a/templates/web/default/admin/flagged.html
+++ b/templates/web/default/admin/flagged.html
@@ -31,19 +31,27 @@
[% loc("Flagged users are not restricted in any way. This is just a list of users that have been marked for attention.") %]
</p>
-[% IF users.count > 0 %]
+[% IF users.size %]
<table cellspacing="0" cellpadding="2" border="1">
<tr>
<th>[% loc('Name') %]</th>
<th>[% loc('Email') %]</th>
+ <th>[% loc('In abuse table?') %]</th>
+ <th>&nbsp;</th>
</tr>
-[% WHILE ( user = users.next ) -%]
- <tr>
+ [%- FOREACH user IN users %]
+ <tr [% IF user.flagged == 2 %]class="is-deleted"[% END %]>
<td>[% user.name | html %]</td>
<td>[% user.email | html %]</td>
- <td><a href="[% c.uri_for( 'reports', search => user.email ) %]">list content</a></td>
+ <td>
+ [% IF user.flagged == 2 %] <strong>[% loc('Yes') %]</strong> [% ELSE %] &nbsp; [% END %]
+ </td>
+ <td>
+ <a href="[% c.uri_for( 'reports', search => user.email ) %]">list content</a>
+ [% IF user.id %] | <a href="[% c.uri_for( 'user_edit', user.id ) %]">[% loc('edit user') %]</a>[% END %]
+ </td>
</tr>
-[%- END %]
+ [%- END %]
</table>
[%- ELSE %]
<p class="fms-admin-warning">