[UNSTABLE] Add verification_token
parent
07d0ee8ff1
commit
a8bb242173
|
@ -1,6 +1,8 @@
|
|||
class UserMailer < ApplicationMailer
|
||||
def welcome_email(user)
|
||||
@user = user
|
||||
@user = user
|
||||
@user_name = user.name
|
||||
@the_url = "http:" + $API_URL + "/verify/" + user.verification_token
|
||||
mail(to: @user.email, subject: 'Welcome to The FarmBot Web App!')
|
||||
end
|
||||
|
||||
|
|
|
@ -2,9 +2,16 @@
|
|||
class User < ActiveRecord::Base
|
||||
belongs_to :device, dependent: :destroy
|
||||
|
||||
devise :database_authenticatable, :trackable
|
||||
# :registerable, # Remove?
|
||||
# :recoverable, # Remove.
|
||||
# :rememberable, # Remove.
|
||||
# :validatable # Remove?
|
||||
devise :database_authenticatable, :trackable
|
||||
|
||||
# http://stackoverflow.com/a/5127684/1064917
|
||||
before_validation :set_defaults
|
||||
|
||||
def set_defaults
|
||||
self.verification_token ||= SecureRandom.uuid
|
||||
end
|
||||
|
||||
def verified?
|
||||
!!verified_at
|
||||
end
|
||||
end
|
||||
|
|
|
@ -14,18 +14,13 @@ module Users
|
|||
end
|
||||
|
||||
def execute
|
||||
resp = {}
|
||||
|
||||
resp[:user] = User.create!(email: email.downcase,
|
||||
password: password,
|
||||
password_confirmation: password_confirmation,
|
||||
name: name)
|
||||
|
||||
device = Devices::Create.run!(user: resp[:user])
|
||||
auth_stuff = Auth::CreateToken.run!(email: email, password: password)
|
||||
resp.merge!(auth_stuff)
|
||||
UserMailer.welcome_email(resp[:user]).deliver_later
|
||||
resp
|
||||
user = User.create!(email: email.downcase,
|
||||
password: password,
|
||||
password_confirmation: password_confirmation,
|
||||
name: name)
|
||||
device = Devices::Create.run!(user: user)
|
||||
UserMailer.welcome_email(user).deliver_later
|
||||
"'Check your email!'"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
<h1>Welcome to FarmBot, <%= @user.name %></h1>
|
||||
<h1>Welcome to FarmBot, <%= @user_name %></h1>
|
||||
<p>
|
||||
You may log in <a href="http:<%= $API_URL %>">here</a>.<br>
|
||||
Please verify your email by clicking here
|
||||
<a href="<%= @the_url %>">here</a>.<br>
|
||||
</p>
|
||||
<p>Thanks for joining and have a great day!</p>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Welcome to FarmBot, <%= @user.name %>
|
||||
Welcome to FarmBot, <%= @user_name %>
|
||||
=====================================
|
||||
|
||||
You may log in at http:<%= $API_URL %>.
|
||||
You please verify your email by visiting <%= @the_url %>.
|
||||
|
||||
Thanks for joining and have a great day!
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
class AddVerifiedAtToUsersTable < ActiveRecord::Migration[5.0]
|
||||
def up
|
||||
add_column :users, :verified_at, :datetime
|
||||
add_column :users, :verified_at, :datetime
|
||||
add_column :users, :verification_token, :string
|
||||
User.update_all(verified_at: Time.now)
|
||||
end
|
||||
|
||||
def down
|
||||
remove_column :users, :verified_at, :datetime
|
||||
remove_column :users, :verified_at, :datetime
|
||||
remove_column :users, :verification_token, :string
|
||||
end
|
||||
end
|
||||
|
|
|
@ -162,6 +162,7 @@ ActiveRecord::Schema.define(version: 20161207195423) do
|
|||
t.datetime "created_at", null: false
|
||||
t.datetime "updated_at", null: false
|
||||
t.datetime "verified_at"
|
||||
t.string "verification_token"
|
||||
t.index ["email"], name: "index_users_on_email", unique: true
|
||||
end
|
||||
|
||||
|
|
|
@ -9,9 +9,11 @@ describe Api::TokensController do
|
|||
it 'creates a new token' do
|
||||
payload = {user: {email: user.email, password: "password"}}
|
||||
post :create, params: payload
|
||||
token = json[:token][:unencoded]
|
||||
expect(token[:iss].last).not_to eq("/") # Trailing slashes are BAD!
|
||||
expect(token[:iss]).to eq("//localhost:3000")
|
||||
puts "==================== TODO: This needs to change now. =="
|
||||
binding.pry
|
||||
# token = json[:token][:unencoded]
|
||||
# expect(token[:iss].last).not_to eq("/") # Trailing slashes are BAD!
|
||||
# expect(token[:iss]).to eq("//localhost:3000")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue