Skip to content
Snippets Groups Projects
Commit 7bb84e64 authored by Felipe Artur's avatar Felipe Artur
Browse files

Change landing page when skipping confirmation email and add documentation

parent 0baadd6c
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -37,8 +37,8 @@ class RegistrationsController < Devise::RegistrationsController
super
end
 
def after_sign_up_path_for(_resource)
users_almost_there_path
def after_sign_up_path_for(user)
user.confirmed_at.present? ? dashboard_projects_path : users_almost_there_path
end
 
def after_inactive_sign_up_path_for(_resource)
Loading
Loading
Loading
Loading
@@ -106,9 +106,9 @@
.form-group
.col-sm-offset-2.col-sm-10
.checkbox
= f.label :skip_confirmation_email do
= f.label :send_user_confirmation_email do
= f.check_box :send_user_confirmation_email
Send sign-up email confirmation
Send confirmation email on sign-up
.form-group
.col-sm-offset-2.col-sm-10
.checkbox
Loading
Loading
Loading
Loading
@@ -3,7 +3,7 @@ class AddSendConfirmationEmailToApplicationSettings < ActiveRecord::Migration
add_column :application_settings, :send_user_confirmation_email, :boolean, default: false
 
#Sets confirmation email to true by default on existing installations.
ApplicationSetting.update_all(send_user_confirmation_email: true)
execute "UPDATE application_settings SET send_user_confirmation_email=true"
end
 
def down
Loading
Loading
Loading
Loading
@@ -8,3 +8,4 @@
- [User File Uploads](user_file_uploads.md)
- [How we manage the CRIME vulnerability](crime_vulnerability.md)
- [Enforce Two-factor authentication](two_factor_authentication.md)
- [Send email confirmation on sign-up](user_email_confirmation.md)
# User email confirmation at sign-up
Gitlab admin can enable email confirmation on sign-up, if you want to confirm all
user emails before they are able to sign-in.
In the Admin area under **Settings** (`/admin/application_settings`), go to section
**Sign-in Restrictions** and look for **Send confirmation email on sign-up** option.
Loading
Loading
@@ -16,7 +16,7 @@ describe RegistrationsController do
it 'logs user in directly' do
post(:create, user_params)
expect(ActionMailer::Base.deliveries.last).to be_nil
expect(subject.current_user).to be
expect(subject.current_user).to_not be_nil
end
end
 
Loading
Loading
Loading
Loading
@@ -2,22 +2,45 @@ require 'spec_helper'
 
feature 'Signup', feature: true do
describe 'signup with no errors' do
before { allow_any_instance_of(ApplicationSetting).to receive(:send_user_confirmation_email).and_return(true) }
 
it 'creates the user account and sends a confirmation email' do
user = build(:user)
context "when sending confirmation email" do
before { allow_any_instance_of(ApplicationSetting).to receive(:send_user_confirmation_email).and_return(true) }
 
visit root_path
it 'creates the user account and sends a confirmation email' do
user = build(:user)
 
fill_in 'new_user_name', with: user.name
fill_in 'new_user_username', with: user.username
fill_in 'new_user_email', with: user.email
fill_in 'new_user_password', with: user.password
click_button "Sign up"
visit root_path
fill_in 'new_user_name', with: user.name
fill_in 'new_user_username', with: user.username
fill_in 'new_user_email', with: user.email
fill_in 'new_user_password', with: user.password
click_button "Sign up"
 
expect(current_path).to eq users_almost_there_path
expect(page).to have_content("Please check your email to confirm your account")
expect(current_path).to eq users_almost_there_path
expect(page).to have_content("Please check your email to confirm your account")
end
end
context "when not sending confirmation email" do
before { allow_any_instance_of(ApplicationSetting).to receive(:send_user_confirmation_email).and_return(false) }
it 'creates the user account and goes to dashboard' do
user = build(:user)
visit root_path
fill_in 'new_user_name', with: user.name
fill_in 'new_user_username', with: user.username
fill_in 'new_user_email', with: user.email
fill_in 'new_user_password', with: user.password
click_button "Sign up"
expect(current_path).to eq dashboard_projects_path
expect(page).to have_content("Welcome! You have signed up successfully.")
end
end
end
 
describe 'signup with errors' do
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment