diff --git a/ruby/lib/jam_ruby/models/invited_user.rb b/ruby/lib/jam_ruby/models/invited_user.rb index 6481a6bdb..19a7dc148 100644 --- a/ruby/lib/jam_ruby/models/invited_user.rb +++ b/ruby/lib/jam_ruby/models/invited_user.rb @@ -14,13 +14,14 @@ module JamRuby belongs_to :sender , :inverse_of => :invited_users, :class_name => "JamRuby::User", :foreign_key => "sender_id" # who is the invitation sent to? - validates :email, :presence => true, format: {with: VALID_EMAIL_REGEX} + validates :email, format: {with: VALID_EMAIL_REGEX}, :if => lambda { |iu| iu.email.present? } validates :autofriend, :inclusion => {:in => [nil, true, false]} validates :invitation_code, :presence => true validates :note, length: {maximum: 400}, no_profanity: true # 400 == arbitrary. validate :valid_personalized_invitation - validate :not_accepted_twice + # validate :not_accepted_twice + validate :not_accepted_twice, :if => lambda { |iu| iu.email } validate :can_invite? after_save :track_user_progression diff --git a/ruby/lib/jam_ruby/models/invited_user_observer.rb b/ruby/lib/jam_ruby/models/invited_user_observer.rb index a4a007a93..cd62bd2d1 100644 --- a/ruby/lib/jam_ruby/models/invited_user_observer.rb +++ b/ruby/lib/jam_ruby/models/invited_user_observer.rb @@ -8,7 +8,7 @@ module JamRuby InvitedUserMailer.welcome_betauser(invited_user).deliver else InvitedUserMailer.friend_invitation(invited_user).deliver - end + end if invited_user.email.present? end end -end \ No newline at end of file +end diff --git a/ruby/spec/jam_ruby/models/invited_user_spec.rb b/ruby/spec/jam_ruby/models/invited_user_spec.rb index 0ccf6865e..369608c11 100644 --- a/ruby/spec/jam_ruby/models/invited_user_spec.rb +++ b/ruby/spec/jam_ruby/models/invited_user_spec.rb @@ -104,4 +104,10 @@ describe InvitedUser do invited_user.valid?.should be_false end + it 'accepts empty emails' do + user1 = FactoryGirl.create(:user) + invited_user = FactoryGirl.create(:invited_user, :sender => user1, :email => '') + expect(invited_user.valid?).to eq(true) + end + end