aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet/App/Controller/Report/New.pm
diff options
context:
space:
mode:
authorMatthew Somerville <matthew@mysociety.org>2016-04-22 13:49:47 +0100
committerMatthew Somerville <matthew@mysociety.org>2016-04-22 13:49:47 +0100
commitc923ee706a122863b2c9db94bf09dfe235b4fd4d (patch)
tree2e2fefa4684e3ecae329e0533e567fb6a09872f5 /perllib/FixMyStreet/App/Controller/Report/New.pm
parentc9d7be8f8994ca51685c71bd7490ef42822d41b3 (diff)
parent66eb844d7eaba7155e362dcec8a7a7db8f3dbf4c (diff)
Merge branch '1383-remove-dead-projects'
Diffstat (limited to 'perllib/FixMyStreet/App/Controller/Report/New.pm')
-rw-r--r--perllib/FixMyStreet/App/Controller/Report/New.pm73
1 files changed, 23 insertions, 50 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Report/New.pm b/perllib/FixMyStreet/App/Controller/Report/New.pm
index 940e7153b..5df182506 100644
--- a/perllib/FixMyStreet/App/Controller/Report/New.pm
+++ b/perllib/FixMyStreet/App/Controller/Report/New.pm
@@ -628,57 +628,35 @@ sub setup_categories_and_bodies : Private {
}
}
- # FIXME - implement in cobrand
- if ( $c->cobrand->moniker eq 'emptyhomes' ) {
+ # keysort does not appear to obey locale so use strcoll (see i18n.t)
+ @contacts = sort { strcoll( $a->category, $b->category ) } @contacts;
- # add all bodies found to the list
- foreach (@contacts) {
- $bodies_to_list{ $_->body_id } = 1;
- }
-
- # set our own categories
- @category_options = (
- _('-- Pick a property type --'),
- _('Empty house or bungalow'),
- _('Empty flat or maisonette'),
- _('Whole block of empty flats'),
- _('Empty office or other commercial'),
- _('Empty pub or bar'),
- _('Empty public building - school, hospital, etc.')
- );
-
- } else {
-
- # keysort does not appear to obey locale so use strcoll (see i18n.t)
- @contacts = sort { strcoll( $a->category, $b->category ) } @contacts;
+ my %seen;
+ foreach my $contact (@contacts) {
- my %seen;
- foreach my $contact (@contacts) {
+ $bodies_to_list{ $contact->body_id } = 1;
- $bodies_to_list{ $contact->body_id } = 1;
+ unless ( $seen{$contact->category} ) {
+ push @category_options, $contact->category;
- unless ( $seen{$contact->category} ) {
- push @category_options, $contact->category;
+ my $metas = $contact->get_extra_fields;
+ $category_extras{ $contact->category } = $metas
+ if scalar @$metas;
- my $metas = $contact->get_extra_fields;
- $category_extras{ $contact->category } = $metas
- if scalar @$metas;
+ my $body_send_method = $bodies{$contact->body_id}->send_method || '';
+ $c->stash->{unresponsive}{$contact->category} = $contact->body_id
+ if !$c->stash->{unresponsive}{ALL} &&
+ ($contact->email =~ /^REFUSED$/i || $body_send_method eq 'Refused');
- my $body_send_method = $bodies{$contact->body_id}->send_method || '';
- $c->stash->{unresponsive}{$contact->category} = $contact->body_id
- if !$c->stash->{unresponsive}{ALL} &&
- ($contact->email =~ /^REFUSED$/i || $body_send_method eq 'Refused');
-
- $non_public_categories{ $contact->category } = 1 if $contact->non_public;
- }
- $seen{$contact->category} = 1;
+ $non_public_categories{ $contact->category } = 1 if $contact->non_public;
}
+ $seen{$contact->category} = 1;
+ }
- if (@category_options) {
- # If there's an Other category present, put it at the bottom
- @category_options = ( _('-- Pick a category --'), grep { $_ ne _('Other') } @category_options );
- push @category_options, _('Other') if $seen{_('Other')};
- }
+ if (@category_options) {
+ # If there's an Other category present, put it at the bottom
+ @category_options = ( _('-- Pick a category --'), grep { $_ ne _('Other') } @category_options );
+ push @category_options, _('Other') if $seen{_('Other')};
}
$c->cobrand->munge_category_list(\@category_options, \@contacts, \%category_extras)
@@ -860,12 +838,7 @@ sub process_report : Private {
my $first_area = ( values %$areas )[0];
my $first_body = ( values %$bodies )[0];
- if ( $c->cobrand->moniker eq 'emptyhomes' ) {
-
- $bodies = join( ',', @{ $c->stash->{bodies_to_list} } ) || -1;
- $report->bodies_str( $bodies );
-
- } elsif ( $report->category ) {
+ if ( $report->category ) {
# FIXME All contacts were fetched in setup_categories_and_bodies,
# so can this DB call also be avoided?
@@ -1074,7 +1047,7 @@ sub save_user_and_report : Private {
$report->bodies_str( undef ) if $report->bodies_str eq '-1';
# if there is a Message Manager message ID, pass it back to the client view
- if ($c->cobrand->moniker eq 'fixmybarangay' && $c->get_param('external_source_id') =~ /^\d+$/) {
+ if (($c->get_param('external_source_id') || "") =~ /^\d+$/) {
$c->stash->{external_source_id} = $c->get_param('external_source_id');
$report->external_source_id( $c->get_param('external_source_id') );
$report->external_source( $c->config->{MESSAGE_MANAGER_URL} ) ;