diff options
author | Struan Donald <struan@exo.org.uk> | 2011-05-13 17:00:21 +0100 |
---|---|---|
committer | Struan Donald <struan@exo.org.uk> | 2011-05-13 17:00:21 +0100 |
commit | c4e98cdb370e0968fe1a207fe3634539324cad2e (patch) | |
tree | 62ffc3ee0e7a0e5a26fc4f56e0233c02dd2e92d1 /perllib/FixMyStreet/App/Controller/Contact.pm | |
parent | fbb8d5ca4e3bfecf5c276f4a8dd43fb5fc4002d9 (diff) |
setup up submitted information for emailing
Diffstat (limited to 'perllib/FixMyStreet/App/Controller/Contact.pm')
-rw-r--r-- | perllib/FixMyStreet/App/Controller/Contact.pm | 50 |
1 files changed, 44 insertions, 6 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Contact.pm b/perllib/FixMyStreet/App/Controller/Contact.pm index daa1c1e98..980636fd0 100644 --- a/perllib/FixMyStreet/App/Controller/Contact.pm +++ b/perllib/FixMyStreet/App/Controller/Contact.pm @@ -23,9 +23,9 @@ Contact us page sub index : Path : Args(0) { my ( $self, $c ) = @_; - return unless - $c->forward('setup_request') - && $c->forward('determine_contact_type'); + return + unless $c->forward('setup_request') + && $c->forward('determine_contact_type'); # my ($q, $errors, $field_errors) = @_; # my @errors = @$errors; @@ -72,9 +72,10 @@ sub index : Path : Args(0) { sub submit : Path('submit') : Args(0) { my ( $self, $c ) = @_; - return unless - $c->forward('setup_request') - && $c->forward('validate'); + return + unless $c->forward('setup_request') + && $c->forward('validate') + && $c->forward('prepare_params_for_email'); } sub determine_contact_type : Private { @@ -150,6 +151,43 @@ sub validate : Private { } } +sub prepare_params_for_email : Private { + my ( $self, $c ) = @_; + + $c->stash->{message} =~ s/\r\n/\n/g; + $c->stash->{subject} =~ s/\r|\n/ /g; + + my $base_url = $c->cobrand->base_url_for_emails; + my $admin_base_url = $c->cobrand->admin_base_url + || 'https://secure.mysociety.org/admin/bci/'; + + if ( $c->stash->{problem} and $c->stash->{update} ) { + + # FIXME - correct url here + my $problem_url = $base_url; + my $admin_url = $admin_base_url; + $c->stash->{message} .= sprintf( + " \n\n[ Complaint about update %d on report %d - %s - %s ]", + $c->stash->{update}->id, + $c->stash->{problem}->id, + $problem_url, $admin_url + ); + } + elsif ( $c->stash->{problem} ) { + + # FIXME - correct url here + my $problem_url = $base_url; + my $admin_url = $admin_base_url; + $c->stash->{message} .= sprintf( + " \n\n[ Complaint about report %d - %s - %s ]", + $c->stash->{problem}->id, + $problem_url, $admin_url + ); + } + + return 1; +} + sub setup_request : Private { my ( $self, $c ) = @_; |