Validate email address

This commit is contained in:
ricola 2025-12-04 17:41:28 -06:00
parent 55a5801da4
commit e4df728a04
2 changed files with 28 additions and 12 deletions

View file

@ -136,19 +136,27 @@ get '/reset' do
end
post '/reset' do
@user = User.find_by(email: params[:email])
if @user
@reset = SecureRandom.uuid
@user.reset = hash_password(@reset)
@user.save
mail = Mail.new
mail.from = settings.admin_email
mail.to = @user.email
mail.subject = _("Reset your password")
mail.body = erb :reset_email, :layout => false
mail.deliver
@errors = []
unless params[:email] =~ URI::MailTo::EMAIL_REGEXP
@errors << OpenStruct.new(:attribute => :email, :type => :invalid)
end
if not @errors.empty?
erb :reset
else
@user = User.find_by(email: params[:email])
if @user
@reset = SecureRandom.uuid
@user.reset = hash_password(@reset)
@user.save
mail = Mail.new
mail.from = settings.admin_email
mail.to = @user.email
mail.subject = _("Reset your password")
mail.body = erb :reset_email, :layout => false
mail.deliver
end
erb :reset_sent
end
erb :reset_sent
end
get '/reset/:uuid' do