diff options
author | elijah <elijah@riseup.net> | 2013-07-04 01:45:41 -0700 |
---|---|---|
committer | elijah <elijah@riseup.net> | 2013-07-04 04:15:04 -0700 |
commit | 290d367ddb064c0aea4e0447441776fd69e29f6c (patch) | |
tree | 7ace24eaddb06f42df4c85880ccc5922020f4070 | |
parent | 40830b4b1fa33b9e26dbd500fc08b4b76b58011b (diff) |
allow forms with blank email forward.
-rw-r--r-- | users/app/controllers/email_settings_controller.rb | 9 | ||||
-rw-r--r-- | users/app/models/user.rb | 1 |
2 files changed, 9 insertions, 1 deletions
diff --git a/users/app/controllers/email_settings_controller.rb b/users/app/controllers/email_settings_controller.rb index 0261b47..f7d85be 100644 --- a/users/app/controllers/email_settings_controller.rb +++ b/users/app/controllers/email_settings_controller.rb @@ -8,7 +8,7 @@ class EmailSettingsController < UsersBaseController end def update - @user.attributes = params[:user] + @user.attributes = cleanup_params(params[:user]) if @user.changed? if @user.save flash[:notice] = t(:changes_saved) @@ -31,4 +31,11 @@ class EmailSettingsController < UsersBaseController redirect_to edit_user_email_settings_url(@user) end + def cleanup_params(user) + if !user['email_forward'].nil? && user['email_forward'].empty? + user.delete('email_forward') # don't allow "" as an email forward + end + user + end + end diff --git a/users/app/models/user.rb b/users/app/models/user.rb index 5c849f0..3459520 100644 --- a/users/app/models/user.rb +++ b/users/app/models/user.rb @@ -42,6 +42,7 @@ class User < CouchRest::Model::Base :format => { :with => /.{8}.*/, :message => "needs to be at least 8 characters long" } validates :email_forward, + :allow_blank => true, :format => { :with => /\A(([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,}))?\Z/, :message => "needs to be a valid email address"} timestamps! |