aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet/App/Controller/Report/Update.pm
diff options
context:
space:
mode:
authorMatthew Somerville <matthew@mysociety.org>2011-06-23 14:13:04 +0100
committerMatthew Somerville <matthew@mysociety.org>2011-06-23 14:13:04 +0100
commit09ce7aeb489e5a43054c3b2b7bfa47fd6aba7c43 (patch)
tree2bc716ae2485474c88fb9c0d08314a3c218e49db /perllib/FixMyStreet/App/Controller/Report/Update.pm
parentead78ff31d49cfeff2503f9faf793e0e53110cf6 (diff)
Use user if logged in, and don't show email field on update.
Diffstat (limited to 'perllib/FixMyStreet/App/Controller/Report/Update.pm')
-rw-r--r--perllib/FixMyStreet/App/Controller/Report/Update.pm28
1 files changed, 17 insertions, 11 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Report/Update.pm b/perllib/FixMyStreet/App/Controller/Report/Update.pm
index ccdfa8a54..86c84f14c 100644
--- a/perllib/FixMyStreet/App/Controller/Report/Update.pm
+++ b/perllib/FixMyStreet/App/Controller/Report/Update.pm
@@ -86,20 +86,26 @@ Load user from the database or prepare a new one.
sub process_user : Private {
my ( $self, $c ) = @_;
- # FIXME - If user already logged in use them regardless
+ my $update_user;
+ if ( $c->user ) {
- # Extract all the params to a hash to make them easier to work with
- my %params = #
- map { $_ => scalar $c->req->param($_) } #
- ( 'rznvy', 'name' );
+ $update_user = $c->user->obj;
- # cleanup the email address
- my $email = $params{rznvy} ? lc $params{rznvy} : '';
- $email =~ s{\s+}{}g;
+ } else {
- my $update_user = $c->model('DB::User')->find_or_new( { email => $email } );
- $update_user->name( Utils::trim_text( $params{name} ) )
- if $params{name};
+ # Extract all the params to a hash to make them easier to work with
+ my %params = #
+ map { $_ => scalar $c->req->param($_) } #
+ ( 'rznvy', 'name' );
+
+ # cleanup the email address
+ my $email = $params{rznvy} ? lc $params{rznvy} : '';
+ $email =~ s{\s+}{}g;
+
+ $update_user = $c->model('DB::User')->find_or_new( { email => $email } );
+ $update_user->name( Utils::trim_text( $params{name} ) );
+
+ }
$c->stash->{update_user} = $update_user;