diff --git a/app/controllers/v1/sessions_controller.rb b/app/controllers/v1/sessions_controller.rb index ff474f08715b7056fd2a52bda37e79c159692f13..dd672999832e3d94000dee943fd9e8f4dd081a73 100644 --- a/app/controllers/v1/sessions_controller.rb +++ b/app/controllers/v1/sessions_controller.rb @@ -66,13 +66,10 @@ require 'open-uri' #in case of the user is not confirmed, find the user and send an email confirmation else - @user = User.find_by_email(params[:email]) - UserMailer.email_confirmation(@user).deliver_now return render_create_error_not_confirmed end else - puts("Usuário não encontrado") return render_create_error_bad_credentials end @@ -82,7 +79,7 @@ require 'open-uri' render json: { success: false, errors: [ I18n.t("devise.failure.unconfirmed")], - }, status: 401 + }, status: 417 end @@ -90,7 +87,7 @@ require 'open-uri' render json: { success: false, errors: [ I18n.t("devise.sessions.banished")] - }, status: 401 + }, status: 406 end def render_create_error_blocked @@ -98,7 +95,7 @@ require 'open-uri' success: false, errors: [ I18n.t("devise.sessions.blocked")], avaliable_at: @resource.reactivated_at - }, status: 401 + }, status: 406 end def reactivate_user? diff --git a/app/models/user.rb b/app/models/user.rb index ecc3970b18930c9b22f795e1f3398ba5ab9a7ebc..dac3fd8761dbf0090160048d1a94d6737236d38a 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -139,6 +139,7 @@ class User < ApplicationRecord after_create :default_role before_save :verify_teacher_id after_save :verify_dspace_info + before_create :send_email_confirmation before_destroy :delete_index after_update :create_actions @@ -167,6 +168,10 @@ class User < ApplicationRecord # don't versionate frequently changed fields has_paper_trail ignore: [:tokens, :sign_in_count, :current_sign_in_at, :last_sign_in_at] + def send_email_confirmation + UserMailer.email_confirmation(self).deliver_now + end + def email_activate self.email_confirmed = true self.confirm_token = nil diff --git a/lib/tasks/access.rake b/lib/tasks/access.rake index 78f2b993ce553504fcc65f9b28183eb16bde93e4..be9ca3a72e2dd14116cfac5cee571ffb1ede7bfb 100644 --- a/lib/tasks/access.rake +++ b/lib/tasks/access.rake @@ -6,6 +6,7 @@ namespace :access do User.all.each do |user| if user.created_at < base_date user.update_attribute(:email_confirmed, true) + user.update_attribute(:confirmed_at, Time.now) end end