user.pass_crypt = pass
user.pass_crypt_confirmation = pass
user.active = true
+ user.email_valid = true
user.save!
token.destroy
Notifier::deliver_reset_password(user, pass)
if token and !token.user.active?
@user = token.user
@user.active = true
+ @user.email_valid = true
@user.save!
token.destroy
flash[:notice] = 'Confirmed your account, thanks for signing up!'
-
class Notifier < ActionMailer::Base
def signup_confirm(user, token)
recipients user.email
end
def gpx_success(trace, possible_points)
- recipients trace.user.email
+ recipients trace.user.email if trace.user.email_valid
from "webmaster@openstreetmap.org"
subject "[OpenStreetMap] GPX Import success"
headers "Auto-Submitted" => "auto-generated"
end
def gpx_failure(trace, error)
- recipients trace.user.email
+ recipients trace.user.email if trace.user.email_valid
from "webmaster@openstreetmap.org"
subject "[OpenStreetMap] GPX Import failure"
headers "Auto-Submitted" => "auto-generated"
end
def message_notification(message)
- recipients message.recipient.email
+ recipients message.recipient.email if message.recipient.email_valid
from "webmaster@openstreetmap.org"
subject "[OpenStreetMap] #{message.sender.display_name} sent you a new message"
headers "Auto-Submitted" => "auto-generated"
end
def diary_comment_notification(comment)
- recipients comment.diary_entry.user.email
+ recipients comment.diary_entry.user.email if comment.diary_entry.user.email_valid
from "webmaster@openstreetmap.org"
subject "[OpenStreetMap] #{comment.user.display_name} commented on your diary entry"
headers "Auto-Submitted" => "auto-generated"
befriender = User.find_by_id(friend.user_id)
befriendee = User.find_by_id(friend.friend_user_id)
- recipients befriendee.email
+ recipients befriendee.email if befriendee.email_valid
from "webmaster@openstreetmap.org"
subject "[OpenStreetMap] #{befriender.display_name} added you as a friend"
headers "Auto-Submitted" => "auto-generated"
--- /dev/null
+class AddEmailValid < ActiveRecord::Migration
+ def self.up
+ add_column "users", "email_valid", :boolean, :default => false, :null => false
+ User.update_all("email_valid = active")
+ end
+
+ def self.down
+ remove_column "users", "email_valid"
+ end
+end