diff --git a/Gemfile b/Gemfile index 676edce..9a73661 100644 --- a/Gemfile +++ b/Gemfile @@ -19,6 +19,9 @@ group :development do gem 'spring' gem 'guard' gem 'guard-livereload', require: false + gem "letter_opener" + #gem para ver los correos que se envían cuando estoy local + #requiere una configuración local en environtment end # Use ActiveModel has_secure_password diff --git a/Gemfile.lock b/Gemfile.lock index 2b18e36..9ab4f56 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -27,6 +27,7 @@ GEM minitest (~> 5.1) thread_safe (~> 0.1) tzinfo (~> 1.1) + addressable (2.3.6) arel (5.0.1.20140414130214) bcrypt (3.1.7) builder (3.2.2) @@ -79,6 +80,10 @@ GEM railties (>= 3.0, < 5.0) thor (>= 0.14, < 2.0) json (1.8.1) + launchy (2.4.3) + addressable (~> 2.3) + letter_opener (1.3.0) + launchy (~> 2.2) listen (2.7.11) celluloid (>= 0.15.2) rb-fsevent (>= 0.9.3) @@ -166,6 +171,7 @@ DEPENDENCIES guard-livereload jbuilder (~> 2.0) jquery-rails + letter_opener pry rails (= 4.1.6) sass-rails (~> 4.0.3) diff --git a/app/controllers/friends_controller.rb b/app/controllers/friends_controller.rb index e307a4e..1f935d1 100644 --- a/app/controllers/friends_controller.rb +++ b/app/controllers/friends_controller.rb @@ -1,6 +1,7 @@ class FriendsController < ApplicationController before_action :authenticate_user! + def index @friend = current_user.random_friend # render :index (default behavior) @@ -15,7 +16,12 @@ def like current_user.likes.create(friend_id: @friend.id, liked: like_or_unlike) if @friend.liked?(current_user) + FriendMailer.email_friend(@friend, current_user).deliver + FriendMailer.email_current_user(@current_user , @friend).deliver + render :match + + else redirect_to root_path end diff --git a/app/mailers/friend_mailer.rb b/app/mailers/friend_mailer.rb new file mode 100644 index 0000000..5d04a24 --- /dev/null +++ b/app/mailers/friend_mailer.rb @@ -0,0 +1,19 @@ +class FriendMailer < ActionMailer::Base + default from: "nayib.abdala@gmail.com" + + + def email_friend(friend, current_user) + @user_liked = friend + @user_who_likes = current_user + mail(to: @user_liked.email, subject: 'Alguien quiere conocerte') + end + + def email_current_user(current_user, friend) + @user_who_likes = current_user + @user_liked = friend + mail(to: @user_who_likes.email, subject: 'Le has dado te gusta a un amigo') + end + +end + + diff --git a/app/views/friend_mailer/email_current_user.html.erb b/app/views/friend_mailer/email_current_user.html.erb new file mode 100644 index 0000000..8a2dcad --- /dev/null +++ b/app/views/friend_mailer/email_current_user.html.erb @@ -0,0 +1,11 @@ + + +
+ + + +Le has dado like a <%= @user_liked.name %>
+ + + \ No newline at end of file diff --git a/app/views/friend_mailer/email_friend.html.erb b/app/views/friend_mailer/email_friend.html.erb new file mode 100644 index 0000000..3177eb7 --- /dev/null +++ b/app/views/friend_mailer/email_friend.html.erb @@ -0,0 +1,10 @@ + + + + + + +glkdfglfjgld
+ + \ No newline at end of file diff --git a/config/environments/development.rb b/config/environments/development.rb index 713b0f1..4666e18 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -35,5 +35,13 @@ # Raises error for missing translations # config.action_view.raise_on_missing_translations = true - config.action_mailer.default_url_options = { host: 'localhost', port: 3000 } +config.action_mailer.delivery_method = :smtp +config.action_mailer.smtp_settings = { + address: 'smtp.gmail.com', + port: 587, + domain: 'gmail.com', + user_name: ENV['GMAIL_USERNAME'], + password: ENV['GMAIL_PASSWORD'], + authentication: 'plain', + enable_starttls_auto: true } end